Saturday, August 22, 2015

Re: [Discuss-gnuradio] Channel setting for USRP

Hi John or Ravi,

I don't know whether your questions have been solved. I think Tom has extensively discussed [1] a lot of things that can happen here, so you're aware of the fact that transmission-wise, there's the whole world of radio channel that could distort your signal.

So let's talk a bit about what's wrong with the hardware settings you use:

Transmitter
No gain specified.
You should really specify the gain. That defines how much power comes out of your antenna. For a start, you might want to use a moderately high setting, so something like 25 would be good.
UHD Warning:      The hardware does not support the requested TX sample rate:      Target sample rate: 0.050000 MSps      Actual sample rate: 0.250000 MSps
Symbol Rate:         25000.000000  Requested sps:       2.000000  Given sample rate:   250000.000000  Actual sps for rate: 10.000000    Requested sample rate: 50000.000000  Actual sample rate: 250000.000000

I you must really fix that. As I've explained two weeks ago:
as the warning says, the sampling rates you're trying to use on both TX and RX side are lower than the minimum sampling rates. You should fix that. It's not hard, you just need basic understanding of what the program does.
To spell this out: the data rate together with the samples per symbol define your sample rate. For your USRP, this rate must be at least 250kS/s. The effect of you not correcting your flow graph is that the script generates a signal that the USRP converts to an analog signal at five times the speed that you specify -- this means all frequencies with your complex baseband are five times as high!

..............................................................................................U...............................................................
Oh, that's bad. You're seeing an U like "Underrun", which means your PC was too slow at supplying samples to the USRP. This seriously breaks your signal. Now, I don't know your computer, but I know that 250kS/s is really no load for any PC nowadays -- I haven't seen any PC being too slow for this very low rate. How old is your PC? Are you doing something else on it? Or are you running in a virtual machine?

terminate  called after throwing an instance of 'uhd::runtime_error'    what():  RuntimeError: usb tx2 transfer status: 1  Aborted (core dumped).
That's even worse. It can happen if you cancel the script using "ctrl+c", but this looks like there is something seriously wrong with your USB2 controller. Again, what computer are you using?

Receiver
No gain specified.  Setting gain to 56.250000 (from [0.000000, 112.500000])
The same as above. More gain = more signal power, but don't overdo it. You will need to experiment. As Tom explained, letting the transmitter run and observing the spectrum with something like usrp_spectrum_sense will help you determine settings that make sense. First, however, I can not stress this enough, fix your sample rate issue!

UHD Warning:      The hardware does not support the requested RX sample rate:      Target sample rate: 0.050000 MSps      Actual sample rate: 0.250000 MSps    Symbol Rate:         25000.000000  Requested sps:       2.000000  Given sample rate:   250000.000000  Actual sps for rate: 10.000000    Requested sample rate: 50000.000000  Actual sample rate: 250000.000000  
The same as above. Both your RX and your TX are running at 250kS/s instead of the 50kS/s that you specified. Luckily, this means that the effect kind of cancels itself out -- still, fix that!

General

How would I be able to know if the USRP is maintained in the same  channel?
You set both TX and RX to the same frequency, and since there is only one physical medium (the space between the RX and TX antenna), you can be sure. There's no concept like "this specific part of spectrum belongs to channel number 12" in the physical world -- just frequencies, and Maxwell's Equations governing the propagation of radio waves.

What commands do I need to give so that the packet is received  correctly as n_right=1.
Tom has explained enough that it's not like that. You will need to find out yourself.

Best regards,
Marcus

PS: Do you have a preferred name to address you by? "Ravi" is as fine to me as "John", so I'd suggest you pick one and stick with that, because it's less confusing.

[1] "Communication Problems between 2 USRP" email thread


On 12.08.2015 01:34, John Garrick / Ravi wrote:
Hi all,  I want to transmit the data between two USRP's and make them communicate  with each other. But I guess the packets are not being received  properly.  My USRP daughterboard model is XCVR2450. When I am running  ./benchmark_tx.py -f 2.435G, it is starting to transmit the packets but  a small error occured given below,    linux; GNU C++ version 4.8.4; Boost_105500;  UHD_003.009.git-144-g407e3086    Using Volk machine: avx_64_mmx  -- Opening a USRP1 device...  -- Using FPGA clock rate of 64.000000MHz...    No gain specified.  Setting gain to 7.500000 (from [-20.000000, 35.000000])    UHD Warning:      The hardware does not support the requested TX sample rate:      Target sample rate: 0.050000 MSps      Actual sample rate: 0.250000 MSps    Symbol Rate:         25000.000000  Requested sps:       2.000000  Given sample rate:   250000.000000  Actual sps for rate: 10.000000    Requested sample rate: 50000.000000  Actual sample rate: 250000.000000  ..............................................................................................U...............................................................terminate  called after throwing an instance of 'uhd::runtime_error'    what():  RuntimeError: usb tx2 transfer status: 1  Aborted (core dumped).      But towards the receiver side, I gave the command ./benchmark_rx.py -f  2.435GG,it has shown the result given below with n_right=0.      linux; GNU C++ version 4.8.4; Boost_105500;  UHD_003.009.git-144-g407e3086    Using Volk machine: avx_64_mmx  -- Opening a USRP1 device...  -- Using FPGA clock rate of 64.000000MHz...    No gain specified.  Setting gain to 56.250000 (from [0.000000, 112.500000])    UHD Warning:      The hardware does not support the requested RX sample rate:      Target sample rate: 0.050000 MSps      Actual sample rate: 0.250000 MSps    Symbol Rate:         25000.000000  Requested sps:       2.000000  Given sample rate:   250000.000000  Actual sps for rate: 10.000000    Requested sample rate: 50000.000000  Actual sample rate: 250000.000000  ok = False  pktno = 53034  n_rcvd =    1  n_right =    0  ok = False  pktno =   24  n_rcvd =    2  n_right =    0  ok = False  pktno =   35  n_rcvd =    3  n_right =    0  ok = False  pktno =   44  n_rcvd =    4  n_right =    0  ok = False  pktno =   46  n_rcvd =    5  n_right =    0  ok = False  pktno =   46  n_rcvd =    6  n_right =    0  ok = False  pktno = 3872  n_rcvd =    7  n_right =    0  ok = False  pktno = 12304  n_rcvd =    8  n_right =    0  ok = False  pktno =   49  n_rcvd =    9  n_right =    0  ok = False  pktno =   50  n_rcvd =   10  n_right =    0  ok = False  pktno =   54  n_rcvd =   11  n_right =    0  ok = False  pktno =  200  n_rcvd =   12  n_right =    0  ok = False  pktno =   63  n_rcvd =   13  n_right =    0    How would I be able to know if the USRP is maintained in the same  channel?What commands do I need to give so that the packet is received  correctly as n_right=1.  My USRP can access in the range of 2.4GHZ to 5GHZ. Please advice as to  what I can do. Thanks    Regards,  John    

No comments:

Post a Comment