Hi Marcus,
I'm using the WBX daughter board.
I though the late packages problem could be because of the processing time
between receiving a sample and sending it back. And I have tried to
I used the delay difference like this:
now = self.uhd_usrp_sink_0.get_time_now()
self.uhd_usrp_source_0.set_start_time(uhd.time_spec_t(1) + now)
self.uhd_usrp_sink_0.set_start_time(uhd.time_spec_t(1.001) + now)
And the results are very reasonable.
However in the second USRP sometimes an underflow occurs (U printed in the
terminal) followed by a few late packages (Ls printed in the terminal) that
I believe that happens because of some queue being filed. It happen
apparently in random times (every few seconds).
Thanks a lot for you help Marcus!
On Thu, 18 Jun 2015 at 10:01 Marcus Müller <[email protected]> wrote:
> Hi Rafael,
>
> what you're trying to build is not a causal system -- you tell the sink to
> start transmitting the first sample right at the same moment that your
> source receives the first sample -- but between that, the samples have to
> flow through your PC!
>
> Add a bit of delay between rx and tx.
>
> Also, what daughterboard are you using? Unless you use one of the
> daughterboards that support static phase after tuning, and tune as a timed
> command, the LO phase between the RX and TX will be random [1]
>
> Best regards,
> Marcus
>
> [1] http://files.ettus.com/manual/page_sync.html#sync_phase_lo
>
>
> On 06/18/2015 06:47 PM, Rafael Acurcio wrote:
>
> Hello all,
>
> I'm trying to do ranging using two USRPs N210.
> The idea is that the first USRP sends a signal and then the second USRP
> recognize it and send the signal back. Looking to the turnaround time I
> would be able to know the ranging.
> Despite some problems that I already had, right now I'm stuck with the
> second USRP.
>
> To measure the time I'm synchronizing the rx ant tx from the first USRP
> using the following code:
>
> now = self.uhd_usrp_sink_0.get_time_now()
> self.uhd_usrp_source_0.set_start_time(uhd.time_spec_t(0.1) + now)
> self.uhd_usrp_sink_0.set_start_time(uhd.time_spec_t(0.1) + now)
>
> Using the fisrt USRP I can do ranging, connecting both (rx and tx)
> together, with a good precision. However I couldn't make the second USRP
> work yet. When I try to synchronize the tx and rx like I did in the first
> USRP I get a bunch of Ls (late packages) in the terminal. The code drop all
> the packages.
>
> My gnuRadioCompanion blocks for the second USRP looks roughly like
>
> USRP Source -> threshold -> USRP Sink
>
> There's a better way to solve that problem?
> Why do I get the late packages?
>
> Thanks in advance,
>
> Rafael.
>
>
> PS: To analyze the data that I'm sending I'm using File Sink block and
> analyzing the data after the transmission.
>
>
> _______________________________________________
> Discuss-gnuradio mailing
> [email protected]https://lists.gnu.org/mailman/listinfo/discuss-gnuradio
>
>
> _______________________________________________
> Discuss-gnuradio mailing list
> [email protected]
> https://lists.gnu.org/mailman/listinfo/discuss-gnuradio
>
_______________________________________________
Discuss-gnuradio mailing list
[email protected]
https://lists.gnu.org/mailman/listinfo/discuss-gnuradio