From f6010974b8f0af65a8b1a875587bb4a7810565ce Mon Sep 17 00:00:00 2001 From: Tom Rondeau Date: Mon, 8 Feb 2010 21:30:09 -0800 Subject: Setting up code to handle setting of samples per symbol properly. Still buggy in the transmitter due to the make packet padding to 512 bytes. --- gnuradio-examples/python/digital/receive_path.py | 2 +- gnuradio-examples/python/digital/transmit_path.py | 2 +- gnuradio-examples/python/digital/usrp_receive_path.py | 15 ++++++++------- gnuradio-examples/python/digital/usrp_transmit_path.py | 13 +++++++------ 4 files changed, 17 insertions(+), 15 deletions(-) (limited to 'gnuradio-examples/python/digital') diff --git a/gnuradio-examples/python/digital/receive_path.py b/gnuradio-examples/python/digital/receive_path.py index c229aa9e4..7aeeedab0 100644 --- a/gnuradio-examples/python/digital/receive_path.py +++ b/gnuradio-examples/python/digital/receive_path.py @@ -135,4 +135,4 @@ class receive_path(gr.hier_block2): print "\nReceive Path:" print "modulation: %s" % (self._demod_class.__name__) print "bitrate: %sb/s" % (eng_notation.num_to_str(self._bitrate)) - print "samples/symbol: %3d" % (self._samples_per_symbol) + print "samples/symbol: %.4f" % (self._samples_per_symbol) diff --git a/gnuradio-examples/python/digital/transmit_path.py b/gnuradio-examples/python/digital/transmit_path.py index 9badcdc08..a23f8d191 100644 --- a/gnuradio-examples/python/digital/transmit_path.py +++ b/gnuradio-examples/python/digital/transmit_path.py @@ -114,5 +114,5 @@ class transmit_path(gr.hier_block2): print "Tx amplitude %s" % (self._tx_amplitude) print "modulation: %s" % (self._modulator_class.__name__) print "bitrate: %sb/s" % (eng_notation.num_to_str(self._bitrate)) - print "samples/symbol: %3d" % (self._samples_per_symbol) + print "samples/symbol: %.4f" % (self._samples_per_symbol) diff --git a/gnuradio-examples/python/digital/usrp_receive_path.py b/gnuradio-examples/python/digital/usrp_receive_path.py index 2d3d648a0..1375a2349 100644 --- a/gnuradio-examples/python/digital/usrp_receive_path.py +++ b/gnuradio-examples/python/digital/usrp_receive_path.py @@ -59,15 +59,16 @@ class usrp_receive_path(gr.hier_block2): if options.rx_freq is None: sys.stderr.write("-f FREQ or --freq FREQ or --rx-freq FREQ must be specified\n") raise SystemExit - rx_path = receive_path.receive_path(demod_class, rx_callback, options) - for attr in dir(rx_path): #forward the methods - if not attr.startswith('_') and not hasattr(self, attr): - setattr(self, attr, getattr(rx_path, attr)) #setup usrp self._demod_class = demod_class self._setup_usrp_source(options) + rx_path = receive_path.receive_path(demod_class, rx_callback, options) + for attr in dir(rx_path): #forward the methods + if not attr.startswith('_') and not hasattr(self, attr): + setattr(self, attr, getattr(rx_path, attr)) + # Set up resampler based on rate determined by _setup_usrp_source rs_taps = gr.firdes.low_pass_2(32, 32, 0.45, 0.1, 60) self.resampler = gr.pfb_arb_resampler_ccf(self.rs_rate, rs_taps) @@ -91,9 +92,9 @@ class usrp_receive_path(gr.hier_block2): pick_rx_bitrate(options.bitrate, self._demod_class.bits_per_symbol(), \ adc_rate, self.u.get_decim_rates()) - print "USRP Decimation: ", self._decim - print "Samples Per Symbol: ", self._samples_per_symbol - + options.samples_per_symbol = self._samples_per_symbol + options.decim = self._decim + self.u.set_decim(self._decim) if not self.u.set_center_freq(options.rx_freq): diff --git a/gnuradio-examples/python/digital/usrp_transmit_path.py b/gnuradio-examples/python/digital/usrp_transmit_path.py index 4244c33f2..f4bddf5a8 100644 --- a/gnuradio-examples/python/digital/usrp_transmit_path.py +++ b/gnuradio-examples/python/digital/usrp_transmit_path.py @@ -58,15 +58,16 @@ class usrp_transmit_path(gr.hier_block2): if options.tx_freq is None: sys.stderr.write("-f FREQ or --freq FREQ or --tx-freq FREQ must be specified\n") raise SystemExit - tx_path = transmit_path.transmit_path(modulator_class, options) - for attr in dir(tx_path): #forward the methods - if not attr.startswith('_') and not hasattr(self, attr): - setattr(self, attr, getattr(tx_path, attr)) #setup usrp self._modulator_class = modulator_class self._setup_usrp_sink(options) + tx_path = transmit_path.transmit_path(modulator_class, options) + for attr in dir(tx_path): #forward the methods + if not attr.startswith('_') and not hasattr(self, attr): + setattr(self, attr, getattr(tx_path, attr)) + # Set up resampler based on rate determined by _setup_usrp_sink rs_taps = gr.firdes.low_pass_2(32, 32, 0.45, 0.1, 60) self.resampler = gr.pfb_arb_resampler_ccf(self.rs_rate, rs_taps) @@ -92,8 +93,8 @@ class usrp_transmit_path(gr.hier_block2): pick_tx_bitrate(options.bitrate, self._modulator_class.bits_per_symbol(), \ dac_rate, self.u.get_interp_rates()) - print "USRP Interpolation: ", self._interp - print "Samples Per Symbol: ", self._samples_per_symbol + options.interp = self._interp + options.samples_per_symbol = self._samples_per_symbol self.u.set_interp(self._interp) self.u.set_auto_tr(True) -- cgit