[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Commit-gnuradio] [gnuradio] 01/01: Merge branch 'master' into next
From: |
git |
Subject: |
[Commit-gnuradio] [gnuradio] 01/01: Merge branch 'master' into next |
Date: |
Thu, 17 Jul 2014 20:23:55 +0000 (UTC) |
This is an automated email from the git hooks/post-receive script.
trondeau pushed a commit to branch next
in repository gnuradio.
commit ca36e1c42f19baafb648695bd5e2a4462fe98803
Merge: d65fd88 001ab47
Author: Tom Rondeau <address@hidden>
Date: Thu Jul 17 16:23:45 2014 -0400
Merge branch 'master' into next
.../include/gnuradio/rpcregisterhelpers.h | 8 +-
gr-audio/examples/grc/cvsd_sweep.grc | 2322 ++++++++++++++----
gr-audio/examples/grc/dial_tone.grc | 332 ++-
gr-blocks/examples/ctrlport/pfb_sync_test-qt.grc | 854 -------
gr-blocks/examples/ctrlport/pfb_sync_test.grc | 514 ++--
gr-blocks/grc/blocks_copy.xml | 166 +-
gr-channels/examples/demo_spec_an.grc | 1542 ++++++++----
gr-digital/examples/demod/ber_simulation.grc | 1022 ++++++--
gr-digital/examples/demod/digital_freq_lock.grc | 1680 ++++++++++---
gr-digital/examples/demod/dpsk_loopback.grc | 690 ++++--
gr-digital/examples/demod/mpsk_demod.grc | 878 +++++--
gr-digital/examples/demod/pam_sync.grc | 2108 ++++++++++++----
gr-digital/examples/demod/pam_timing.grc | 2462 +++++++++++++++----
gr-digital/examples/demod/test_corr_and_sync.grc | 528 ++--
gr-digital/examples/ofdm/ofdm_loopback.grc | 1120 ++++++---
gr-digital/examples/ofdm/rx_ofdm.grc | 358 ++-
gr-digital/examples/ofdm/tx_ofdm.grc | 1134 +++++++--
gr-digital/grc/digital_constellation.xml | 90 +-
.../grc/digital_constellation_receiver_cb.xml | 143 +-
gr-digital/grc/digital_constellation_rect.xml | 102 +-
gr-fcd/examples/grc/CMakeLists.txt | 2 +-
gr-fcd/examples/grc/fcd_apt_rx.grc | 834 +++++--
.../examples/grc/fcd_fft.grc | 468 ++--
gr-fcd/examples/grc/fcd_fft_wx.grc | 320 ---
gr-fcd/examples/grc/fcd_nfm_rx.grc | 1064 +++++---
gr-fec/grc/variable_cc_decoder_def_list.xml | 4 +-
gr-fec/grc/variable_cc_encoder_def_list.xml | 12 +-
gr-fec/grc/variable_ccsds_encoder_def_list.xml | 12 +-
gr-fec/grc/variable_dummy_decoder_def_list.xml | 4 +-
gr-fec/grc/variable_dummy_encoder_def_list.xml | 12 +-
.../grc/variable_repetition_decoder_def_list.xml | 4 +-
.../grc/variable_repetition_encoder_def_list.xml | 12 +-
gr-filter/examples/resampler_demo.grc | 854 +++++--
gr-noaa/examples/file_rx_hrpt.grc | 648 +++--
gr-noaa/examples/hrpt_demod.grc | 492 ++--
gr-noaa/examples/usrp_rx_hrpt.grc | 1734 +++++++------
gr-noaa/examples/usrp_rx_hrpt_nogui.grc | 732 ++++--
gr-pager/apps/usrp_rx_flex.grc | 2146 +++++++++++-----
gr-qtgui/grc/qtgui_const_sink_x.xml | 17 +
gr-qtgui/grc/qtgui_freq_sink_x.xml | 142 +-
gr-qtgui/grc/qtgui_histogram_sink_x.xml | 228 +-
gr-qtgui/grc/qtgui_label.xml | 110 +-
gr-qtgui/grc/qtgui_number_sink.xml | 158 ++
gr-qtgui/grc/qtgui_sink_x.xml | 334 +--
gr-qtgui/grc/qtgui_time_raster_x.xml | 215 +-
gr-qtgui/grc/qtgui_time_sink_x.xml | 36 +
gr-qtgui/grc/qtgui_waterfall_sink_x.xml | 252 +-
.../include/gnuradio/qtgui/FrequencyDisplayPlot.h | 2 +
.../include/gnuradio/qtgui/TimeDomainDisplayPlot.h | 3 +
gr-qtgui/include/gnuradio/qtgui/const_sink_c.h | 1 +
gr-qtgui/include/gnuradio/qtgui/form_menus.h | 64 +
gr-qtgui/include/gnuradio/qtgui/freqdisplayform.h | 2 +
gr-qtgui/include/gnuradio/qtgui/number_sink.h | 6 +
.../include/gnuradio/qtgui/numberdisplayform.h | 11 +
gr-qtgui/include/gnuradio/qtgui/time_sink_c.h | 2 +
gr-qtgui/include/gnuradio/qtgui/time_sink_f.h | 2 +
gr-qtgui/include/gnuradio/qtgui/timedisplayform.h | 2 +
.../include/gnuradio/qtgui/timerasterdisplayform.h | 6 +-
.../include/gnuradio/qtgui/waterfalldisplayform.h | 6 +-
gr-qtgui/lib/FrequencyDisplayPlot.cc | 16 +-
gr-qtgui/lib/TimeDomainDisplayPlot.cc | 31 +-
gr-qtgui/lib/const_sink_c_impl.cc | 6 +
gr-qtgui/lib/const_sink_c_impl.h | 1 +
gr-qtgui/lib/freqdisplayform.cc | 28 +
gr-qtgui/lib/number_sink_impl.cc | 38 +-
gr-qtgui/lib/number_sink_impl.h | 6 +
gr-qtgui/lib/numberdisplayform.cc | 110 +-
gr-qtgui/lib/time_sink_c_impl.cc | 7 +
gr-qtgui/lib/time_sink_c_impl.h | 2 +
gr-qtgui/lib/time_sink_f_impl.cc | 7 +
gr-qtgui/lib/time_sink_f_impl.h | 2 +
gr-qtgui/lib/timedisplayform.cc | 8 +-
gr-qtgui/lib/timerasterdisplayform.cc | 42 +-
gr-qtgui/lib/waterfalldisplayform.cc | 37 +-
.../examples/grc/interference_cancellation.grc | 2588 ++++++++++++++------
gr-trellis/examples/grc/pccc.grc | 576 +++--
gr-trellis/examples/grc/sccc.grc | 516 ++--
gr-uhd/doc/uhd.dox | 56 +-
gr-uhd/examples/grc/uhd_const_wave.grc | 468 ++--
gr-uhd/examples/grc/uhd_dpsk_mod.grc | 2295 ++++++++++++++---
gr-uhd/examples/grc/uhd_fft.grc | 1749 ++++++++-----
.../grc/{uhd_const_wave.grc => uhd_msg_tune.grc} | 548 +++--
gr-uhd/examples/grc/uhd_rx_dpsk.grc | 1073 ++++----
gr-uhd/examples/grc/uhd_two_tone_loopback.grc | 944 ++++---
gr-uhd/examples/grc/uhd_tx_dpsk.grc | 562 +++--
gr-uhd/examples/grc/uhd_wbfm_receive.grc | 784 ++++--
gr-uhd/examples/python/freq_hopping.py | 6 +-
gr-uhd/grc/gen_uhd_usrp_blocks.py | 5 +
gr-uhd/include/gnuradio/uhd/usrp_sink.h | 46 +-
gr-uhd/include/gnuradio/uhd/usrp_source.h | 42 +-
gr-uhd/lib/CMakeLists.txt | 13 +
gr-uhd/lib/usrp_common.h | 198 ++
gr-uhd/lib/usrp_sink_impl.cc | 237 +-
gr-uhd/lib/usrp_sink_impl.h | 26 +-
gr-uhd/lib/usrp_source_impl.cc | 94 +-
gr-uhd/lib/usrp_source_impl.h | 31 +-
gr-zeromq/examples/zeromq_pubsub.grc | 444 +++-
gr-zeromq/examples/zeromq_pushpull.grc | 488 +++-
gr-zeromq/examples/zeromq_reqrep.grc | 492 +++-
grc/base/Block.py | 7 +-
grc/base/Port.py | 31 +-
grc/examples/simple/variable_config.grc | 398 ++-
grc/examples/xmlrpc/xmlrpc_client.grc | 262 +-
grc/examples/xmlrpc/xmlrpc_server.grc | 750 ++++--
grc/gui/ActionHandler.py | 5 +
grc/gui/Actions.py | 4 +
grc/gui/Bars.py | 3 +
grc/gui/Block.py | 22 +-
grc/gui/Element.py | 6 +
grc/gui/FlowGraph.py | 77 +-
grc/gui/Port.py | 66 +-
grc/gui/Preferences.py | 6 +
grc/python/Block.py | 10 +
grc/python/FlowGraph.py | 2 +-
grc/python/block.dtd | 7 +-
115 files changed, 31841 insertions(+), 13443 deletions(-)
diff --cc gr-uhd/lib/usrp_sink_impl.cc
index 7c10366,cdbe7b5..c9ccb70
--- a/gr-uhd/lib/usrp_sink_impl.cc
+++ b/gr-uhd/lib/usrp_sink_impl.cc
@@@ -63,39 -64,66 +64,66 @@@ namespace gr
usrp_sink_impl::usrp_sink_impl(const ::uhd::device_addr_t &device_addr,
const ::uhd::stream_args_t &stream_args,
const std::string &length_tag_name)
- : sync_block("gr uhd usrp sink",
+ : sync_block("usrp_sink",
args_to_io_sig(stream_args),
io_signature::make(0, 0, 0)),
- _stream_args(stream_args),
- _nchan(stream_args.channels.size()),
- _stream_now(_nchan == 1 and length_tag_name.empty()),
- _start_time_set(false),
+ usrp_common_impl(device_addr, stream_args, length_tag_name),
_length_tag_key(length_tag_name.empty() ? pmt::PMT_NIL :
pmt::string_to_symbol(length_tag_name)),
_nitems_to_send(0),
- _curr_freq(stream_args.channels.size(), 0.0),
- _curr_lo_offset(stream_args.channels.size(), 0.0),
- _curr_gain(stream_args.channels.size(), 0.0),
- _chans_to_tune(stream_args.channels.size(), false),
- _call_tune(false)
- {
- if(stream_args.cpu_format == "fc32")
- _type = boost::make_shared< ::uhd::io_type_t
>(::uhd::io_type_t::COMPLEX_FLOAT32);
- if(stream_args.cpu_format == "sc16")
- _type = boost::make_shared< ::uhd::io_type_t
>(::uhd::io_type_t::COMPLEX_INT16);
- _dev = ::uhd::usrp::multi_usrp::make(device_addr);
-
+ _curr_freq(stream_args.channels.size(), 0.0),
+ _curr_lo_offset(stream_args.channels.size(), 0.0),
+ _curr_gain(stream_args.channels.size(), 0.0),
+ _chans_to_tune(stream_args.channels.size())
+ {
message_port_register_in(pmt::mp("command"));
set_msg_handler(
- pmt::mp("command"),
- boost::bind(&usrp_sink_impl::msg_handler_command, this, _1)
+ pmt::mp("command"),
+ boost::bind(&usrp_sink_impl::msg_handler_command, this, _1)
);
- //message_port_register_in(pmt::mp("query"));
- //set_msg_handler(
- //pmt::mp("query"),
- //boost::bind(&usrp_sink_impl::msg_handler_query, this, _1)
- //);
+
+ _check_sensors_locked();
+ }
+
+ bool usrp_sink_impl::_check_sensors_locked()
+ {
+ bool clocks_locked = true;
+
+ // 1) Check ref lock for all mboards
+ for (size_t mboard_index = 0; mboard_index < _dev->get_num_mboards();
mboard_index++) {
+ std::string sensor_name = "ref_locked";
+ if (_dev->get_clock_source(mboard_index) == "internal") {
+ continue;
+ }
+ else if (_dev->get_clock_source(mboard_index) == "mimo") {
+ sensor_name = "mimo_locked";
+ }
+ if (not _wait_for_locked_sensor(
+ get_mboard_sensor_names(mboard_index),
+ sensor_name,
+ boost::bind(&usrp_sink_impl::get_mboard_sensor, this, _1,
mboard_index)
+ )) {
+ GR_LOG_WARN(d_logger, boost::format("Sensor '%s' failed to lock
within timeout on motherboard %d.") % sensor_name % mboard_index);
+ clocks_locked = false;
+ }
+ }
+
+ // 2) Check LO for all channels
+ for (size_t i = 0; i < _nchan; i++) {
+ size_t chan_index = _stream_args.channels[i];
+ if (not _wait_for_locked_sensor(
+ get_sensor_names(chan_index),
+ "lo_locked",
+ boost::bind(&usrp_sink_impl::get_sensor, this, _1, chan_index)
+ )) {
+ GR_LOG_WARN(d_logger, boost::format("Sensor 'lo_locked' failed to
lock within timeout on channel %d.") % chan_index);
+ clocks_locked = false;
+ }
+ }
+
+ return clocks_locked;
}
+
usrp_sink_impl::~usrp_sink_impl()
{
}
diff --cc gr-uhd/lib/usrp_source_impl.cc
index fbd10e9,53038bf..d3a631b
--- a/gr-uhd/lib/usrp_source_impl.cc
+++ b/gr-uhd/lib/usrp_source_impl.cc
@@@ -63,19 -64,12 +64,12 @@@ namespace gr
usrp_source_impl::usrp_source_impl(const ::uhd::device_addr_t
&device_addr,
const ::uhd::stream_args_t
&stream_args):
- sync_block("gr uhd usrp source",
+ sync_block("usrp_source",
io_signature::make(0, 0, 0),
args_to_io_sig(stream_args)),
- _stream_args(stream_args),
- _nchan(stream_args.channels.size()),
- _stream_now(_nchan == 1),
- _tag_now(false),
- _start_time_set(false)
- {
- if(stream_args.cpu_format == "fc32")
- _type = boost::make_shared< ::uhd::io_type_t
>(::uhd::io_type_t::COMPLEX_FLOAT32);
- if(stream_args.cpu_format == "sc16")
- _type = boost::make_shared< ::uhd::io_type_t
>(::uhd::io_type_t::COMPLEX_INT16);
+ usrp_common_impl(device_addr, stream_args, ""),
+ _tag_now(false)
+ {
std::stringstream str;
str << name() << unique_id();
_id = pmt::string_to_symbol(str.str());