Hi Doug,

the rationale behind that is that these tags correspond to the stream
metadata coming from the USRP, which tell the host when the tuning
*operation* has taken place. Now, you're right, it's a problem to think
you're tuned although your LO still hasn't settled, but since tunes
could also be digital-path only, using the "earliest" time seems correct.

By the way, you might also want to try a different approach, based on
timed commands: you can set a time for things like tune requests, thus
making sure that the tuning happens at the exact point in time you want
it to (and not influenced by the latency and load of your general
purpose PC). You can then simply "take" the right samples without caring
about tags at all, because you know when these should occur (i.e. which
numbers these should have).

Greetings,
Marcus

PS: try turning off the DC offset correction, if you're on the N210, for
fast-tuning applications. You'll have a bigger DC offset, but less
"swinging" after each tune.
PS2: I don't know whether your overall frequency range allows this, but
as long as you tune within your USRP/daughterboards physical bandwidth,
you might just tune digitally and avoid LO retuning:
http://files.ettus.com/manual/page_general.html#general_tuning_process
On 03/31/2015 09:54 PM, Anderson, Douglas J. wrote:
> Hi all,
>
> I've been working on a flowgraph that controls sweeping a USRP by
> retuning and then dumping samples until catching the sample tagged
> with rx_freq of the correct value.
>
> I was confused as to why I was still getting mountains of garbage
> samples (several hundred thousand at 10MS/s) after catching the
> rx_freq tag, until today I put
> "assert(usrp->get_sensor("lo_locked").to_bool())" after the block that
> identifies the correct rx_freq tag, and it popped immediately.
>
> I'm wondering about the prudence of saying a sample is "at a certain
> frequency" before the LO has had a chance to settle.
>
> I also realize that gr-uhd folks are trying to make the message
> interface more robust, and the rx_freq tag is an awesome idea, but
> what I really want to know is what is the first USABLE sample at my
> requested freq. If I still have to carry around a usrp_source pointer
> so that I can check the LO state, then the tags output by the
> usrp_source lose a lot of appeal.
>
> Any chance of making rx_freq tag "the first usable sample", or is
> there a good reason for the way it works that I haven't considered?
>
> -Doug
>
>
> _______________________________________________
> Discuss-gnuradio mailing list
> Discuss-gnuradio@gnu.org
> https://lists.gnu.org/mailman/listinfo/discuss-gnuradio

_______________________________________________
Discuss-gnuradio mailing list
Discuss-gnuradio@gnu.org
https://lists.gnu.org/mailman/listinfo/discuss-gnuradio

Reply via email to