bugfix for low decimation rates (dec<8)
authornldudok1 <nldudok1@221aa14e-8319-0410-a670-987f0aec2ac5>
Fri, 21 Dec 2007 04:43:55 +0000 (04:43 +0000)
committernldudok1 <nldudok1@221aa14e-8319-0410-a670-987f0aec2ac5>
Fri, 21 Dec 2007 04:43:55 +0000 (04:43 +0000)
git-svn-id: http://gnuradio.org/svn/gnuradio/trunk@7236 221aa14e-8319-0410-a670-987f0aec2ac5

gr-utils/src/python/usrp_fft.py
gr-utils/src/python/usrp_oscope.py

index 58da671472ae6a70c7524575557f8615fd1c1a8a..c98f01eb48dbfb69d2daf4f7b045c2d34a262c56 100755 (executable)
@@ -69,6 +69,8 @@ class app_top_block(stdgui2.std_top_block):
                           help="Enable waterfall display")
         parser.add_option("-8", "--width-8", action="store_true", default=False,
                           help="Enable 8-bit samples across USB")
+        parser.add_option( "--no-hb", action="store_true", default=False,
+                          help="don't use halfband filter in usrp")
         parser.add_option("-S", "--oscilloscope", action="store_true", default=False,
                           help="Enable oscilloscope display")
         (options, args) = parser.parse_args()
@@ -79,8 +81,17 @@ class app_top_block(stdgui2.std_top_block):
         self.show_debug_info = True
         
         # build the graph
+        if options.no_hb or (options.decim<8):
+          #Min decimation of this firmware is 4. 
+          #contains 4 Rx paths without halfbands and 0 tx paths.
+          self.fpga_filename="std_4rx_0tx.rbf"
+          self.u = usrp.source_c(which=options.which, decim_rate=options.decim, fpga_filename=self.fpga_filename)
+        else:
+          #Min decimation of standard firmware is 8. 
+          #standard fpga firmware "std_2rxhb_2tx.rbf" 
+          #contains 2 Rx paths with halfband filters and 2 tx paths (the default)
+          self.u = usrp.source_c(which=options.which, decim_rate=options.decim)
 
-        self.u = usrp.source_c(which=options.which, decim_rate=options.decim)
         if options.rx_subdev_spec is None:
             options.rx_subdev_spec = pick_subdevice(self.u)
         self.u.set_mux(usrp.determine_rx_mux_value(self.u, options.rx_subdev_spec))
index 25de80526b884d3dab2c30b83ade4ab29a5af19d..d3223cba31b8ac580b1e46188950615ac012d7fb 100755 (executable)
@@ -65,6 +65,8 @@ class app_top_block(stdgui2.std_top_block):
                           help="set gain in dB (default is midpoint)")
         parser.add_option("-8", "--width-8", action="store_true", default=False,
                           help="Enable 8-bit samples across USB")
+        parser.add_option( "--no-hb", action="store_true", default=False,
+                          help="don't use halfband filter in usrp")
         parser.add_option("-C", "--basic-complex", action="store_true", default=False,
                           help="Use both inputs of a basicRX or LFRX as a single Complex input channel")
         parser.add_option("-D", "--basic-dualchan", action="store_true", default=False,
@@ -87,7 +89,17 @@ class app_top_block(stdgui2.std_top_block):
           self.num_inputs=2
         else:
           self.num_inputs=1
-        self.u = usrp.source_c(nchan=self.num_inputs,decim_rate=options.decim)
+        if options.no_hb or (options.decim<8):
+          #Min decimation of this firmware is 4. 
+          #contains 4 Rx paths without halfbands and 0 tx paths.
+          self.fpga_filename="std_4rx_0tx.rbf"
+          self.u = usrp.source_c(nchan=self.num_inputs,decim_rate=options.decim, fpga_filename=self.fpga_filename)
+        else:
+          #Min decimation of standard firmware is 8. 
+          #standard fpga firmware "std_2rxhb_2tx.rbf" 
+          #contains 2 Rx paths with halfband filters and 2 tx paths (the default)
+          self.u = usrp.source_c(nchan=self.num_inputs,decim_rate=options.decim)
+
         if options.rx_subdev_spec is None:
             options.rx_subdev_spec = pick_subdevice(self.u)