summaryrefslogtreecommitdiff
path: root/gnuradio-examples/python/digital/usrp_receive_path.py
diff options
context:
space:
mode:
Diffstat (limited to 'gnuradio-examples/python/digital/usrp_receive_path.py')
-rw-r--r--gnuradio-examples/python/digital/usrp_receive_path.py30
1 files changed, 14 insertions, 16 deletions
diff --git a/gnuradio-examples/python/digital/usrp_receive_path.py b/gnuradio-examples/python/digital/usrp_receive_path.py
index 517825cc1..a8f16e28a 100644
--- a/gnuradio-examples/python/digital/usrp_receive_path.py
+++ b/gnuradio-examples/python/digital/usrp_receive_path.py
@@ -59,37 +59,35 @@ 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)
- # 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)
+ 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))
#connect
- self.connect(self.u, self.resampler, rx_path)
+ self.connect(self.u, rx_path)
def _setup_usrp_source(self, options):
self.u = usrp_options.create_usrp_source(options)
adc_rate = self.u.adc_rate()
self.rs_rate = options.bitrate
- if options.verbose:
- print 'USRP Source:', self.u
+
(self._bitrate, self._samples_per_symbol, self._decim) = \
pick_rx_bitrate(options.bitrate, self._demod_class.bits_per_symbol(), \
- options.samples_per_symbol, options.decim, adc_rate, \
- self.u.get_decim_rates())
+ options.samples_per_symbol, options.decim,
+ adc_rate, self.u.get_decim_rates())
- # Calculate resampler rate based on requested and actual rates
- self.rs_rate = 1.0 /(self._bitrate / self.rs_rate)
-
- print "Resampling by %f to get bitrate of %ssps" % ( self.rs_rate, eng_notation.num_to_str(self._bitrate/self.rs_rate))
+ if options.verbose:
+ print 'USRP Source:', self.u
+ print 'Decimation: ', self._decim
+
+ options.samples_per_symbol = self._samples_per_symbol
+ options.decim = self._decim
self.u.set_decim(self._decim)