discuss-gnuradio
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Discuss-gnuradio] Problem with symmetric behavior


From: Martin Dvh
Subject: Re: [Discuss-gnuradio] Problem with symmetric behavior
Date: Mon, 07 Jan 2008 23:01:14 +0100
User-agent: Icedove 1.5.0.14pre (X11/20071018)

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






reply via email to

[Prev in Thread] Current Thread [Next in Thread]