[USRP-users] missing rx_freq tags when frequency changes

Gilad Beeri (ApolloShield) gilad at apolloshield.com
Wed Nov 8 02:52:41 EST 2017


Hi David,

UHD should write that rx_freq tag whenever you change the frequency. Maybe
others will know to explain why it doesn't. Which GR version are you using?
Open usrp_source_impl.cc and verify that your version has `_tag_now = true`
in `set_center_freq()` and that `work()` responds to that flag by adding
the `rx_freq` tag (and others).
Using a downstream block will be less accurate then tagging it in UHD
(which, if I understand correctly, isn't accurate by itself but the best
one can get using host code). Think about it this way: you call
set_center_freq which (assuming) tags the next sample to come from the USRP
Source and also tells your block to add that tag. But there are some
samples in the pipeline between USRP Source and your tagging block, which
will be assumed to be from the new freq, but actually aren't. In addition,
it's probable that UHD tags too early (before the RF frontend actually
finished changing frequencies) - but I'm not sure about that as it depends
whether the low-level call is synchronous or not (haven't checked).


Regarding settling time, I asked a similar question a few weeks ago,
regarding the B205mini, which uses the same AD chip as your B200mini:
http://lists.ettus.com/pipermail/usrp-users_lists.ettus.com/2017-October/026851.html



On Wed, Nov 8, 2017 at 4:22 AM David Rose via USRP-users <
usrp-users at lists.ettus.com> wrote:

> I’m programming a USRP B200mini-i in Python.
>
>
>
> When the receiver starts up, it automatically inserts a ‘rx_freq’  tag
> into the stream.
>
>
>
> In my application I periodically change the receiver frequency using a
> command such as: self.uhd_usrp_source_0.set_center_freq(self.rf_freq, 0).
> This does indeed change the frequency, but it doesn’t look like the source
> block is adding new ‘rf_freq’ tags to mark the changes.  Does anyone know
> how to make that happen?
>
>
>
> I tried directly setting a class variable in a downstream block from
> top_block every time I change the frequency.  That sort of works, but I
> don’t think it’s marking the exact right place in the stream, so I assume
> that’s not a recommended approach.
>
>
>
> Finally, does the B200mini-i require any settling time after a frequency
> change, and if so, how much time?  Is there a chance of getting bad samples
> during a frequency transition, or does the stream shut down until things
> stabilize?
>
>
>
> Thanks,
>
>
>
> Dave Rose
>
> Valkyrie Systems Corp.
>
>
>
>
> _______________________________________________
> USRP-users mailing list
> USRP-users at lists.ettus.com
> http://lists.ettus.com/mailman/listinfo/usrp-users_lists.ettus.com
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.ettus.com/pipermail/usrp-users_lists.ettus.com/attachments/20171108/bda4d268/attachment-0002.html>


More information about the USRP-users mailing list