[Top][All Lists]

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

Re: [Discuss-gnuradio] Limits of freq_hopping.py

From: Martin Braun
Subject: Re: [Discuss-gnuradio] Limits of freq_hopping.py
Date: Wed, 23 Dec 2015 10:18:48 -0800
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:38.0) Gecko/20100101 Thunderbird/38.4.0


please note that the script is an easy example on how to control things
through tags, and not optimized for performance (but rather, for

You should be able to go way below the re-tune time of your analog part
with timed commands, but to get maximum performance out of this you
might have to go a different route than using tags. The reason being,
with tags, you're still left to the whims of scheduling randomness, but
you want something with very tight control.

The way I'd go ahead here is pre-load the (timed) tune commands into the
command FIFO by using set_command_time() before every tune command, and
then start streaming (also with a timestamp) to line up data and
commands. Here's the catch: The command FIFO is not super-deep, and
tunes translate into multiple commands, so I'm not sure how many you can
actually queue. However, sending commands will block if the queue is
full, so you can have a thread updating the command queue with new tunes
continuously -- unless I've forgotten something here.

I admit the tags are a lot easier! But tight control over latencies etc.
is something where GNU Radio traditionally comes up short, and usually
requires some custom logic.


On 22.12.2015 14:50, Richard Bell wrote:
> I'm using Ubuntu 14.04 LTS, GNU Radio 3.7.9rc1, UHD 3.9.1 with two USRP
> N210s with WBX daughtercards.
> I'm trying to determine what the fastest hopping rate is with the given
> setup above. Using the provided gr-uhd/examples/python frequency hopping
> script, it seems that 100 ms (10 Hz) is the fastest. What I haven't been
> able to figure out yet, is if this is due to a limitation imposed by
> that script, or if this is the fastest way (or right around the fastest
> way) that any script could hope to approach.
> What I did to arive at this 100 ms limit is the following:
> 1) The first N210 is used as a transmitter and I use the following
> command to initiate hopping
>     ./freq_hopping.py -a "addr=" --antenna TX/RX --verbose
> --freq 915e6 --gain 20 --rate 5e6 --num-bursts 10000 --freq-delta 0.1e6
> --samp-per-burst 10 --hop-time 50
> 2) The second N210 is a spectrum analyzer using the following command
> and the waterfall tab
>     uhd_fft -f 915M -s 0.5M -A TX/RX
> 3) I stop the waterfall plot, so it stops scrolling, and measure the
> smallest length of time at one frequency I can achieve given any batch
> of settings in step 1. The settings I linked in step one should have set
> a hop time of 50 ms, but this measurements shows 100 ms.
> I'm going to try writing my own custom script, but would like to know if
> others have pushed this before and found ~100 ms (10 Hz) as the limit
> for frequency hopping intervals using the N210+WBX combo.
> Appreciated,
> Rich
> _______________________________________________
> Discuss-gnuradio mailing list
> address@hidden
> https://lists.gnu.org/mailman/listinfo/discuss-gnuradio

reply via email to

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