Robert Miller wrote: > Hello, > > I created a flowgraph based upon the usrp_nbfm_ptt.py example. I am > witnessing some weird, asymmetric behavior when running the graph. The code > generates a tone from the user specified daughterboard and then plots the > spectrum via an fft from another user specified daughterboard. I am using 2 > RFX-1800 daughterboards with a single USRP to run the graph, however I > imagine it should work the same for any RFX board. Here is the main issue: > > Everything works fine when using Side B as the transmitter and Side A as the > Receiver. When running with Side A as the transmitter and Side B as the > receiver, however, the fft display is really just noise (once in a while > there exist some spectral lines at odd frequencies). As a note, I am fairly > certain that the mux's are being set correctly and that the boards are > tuning correctly. To verify that the issue is not the hardware, I am > capable of running usrp_siggen.py and usrp_fft.py in both configurations > successfully. (TXR A --> RXR B, TXR B --> RXR A). Also, I have done the > tests in completely wired (with 60 dB of attenuation) and unwired > environments, with both yielding the same results. Attached is the code > that I am running, can anyone point out something silly that I am doing that > is causing this problem? > > http://www.nabble.com/file/p14642329/DualChannel.py DualChannel.py > > As an added note, I am getting a segmentation fault when I close the graph > by any means other than <Ctrl-C> from the command line. I don't think this > is related to the above issue, and I don't get the seg fault when running > the original usrp_nbfm_ptt.py code. > > Thanks! > Rob >
Your problem is in the tuning I think: class receive_path(gr.hier_block): .... def set_freq(self, target_freq): r = self.u.tune(self.subdev._which, self.subdev, target_freq) # <-- look here Which should be: class receive_path(gr.hier_block): .... def set_freq(self, target_freq): r = self.u.tune(0, self.subdev, target_freq) # <-- look here The first parameter is the channel you are tuning, which is always channel 0 if you only receive one stream. It is NOT subdev._which, which indicates on which side the daughterboard is. I hope this helps, Martin _______________________________________________ Discuss-gnuradio mailing list Discuss-gnuradio@gnu.org http://lists.gnu.org/mailman/listinfo/discuss-gnuradio