On 2022-02-07 02:44, [email protected] wrote:

Hi all,

we have a custom Gnuradio implementation with many B200mini USRPs, which enables precise round-trip time (RTT) based ranging among those devices. The MAC is TDMA based with the automatic Tx/Rx switching and to compensate for the USRPs group delay we perform ranging over an RF-splitter which we calibrated beforehand with a vector network analyzer.

We observed that the estimated RTT over multiple calibration measurement runs is unstable in the order of up to 1ns. Within one measurement run of at least 5 minutes with 10 RTT estimates per second, it is pretty stable, but when we restart the flowgraph, we observe a bias.

Please find at the end of this E-Mail all things we already tried to narrow down the issue (a compressed version).

In short:

  * We finally used only two B210 with a single external reference
    clock, a sampling rate of 25MHz, and a manually set master clock
    rate of 50MHz.
      o In this setup the estimated RTT over multiple measurement runs
        can vary from run to run by <50ps (ok for us), but also by
        280ps or 750ps (far too much for us). The standard deviation
        of RTT estimates within one measurement run is about 70ps, and
        each run contains 2000 to 3500 RTT estimates.
  * To cross check our implementation, we used the very same
    flow-graph with two X310 with CBX-120 front-ends, a common
    external reference clock, and only increased the transmit signal
    padding by 40us (because the ramp-up time is larger for this
    front-end).
      o RTT estimates over multiple runs are picture perfect: the mean
        RTT varies by less than 5ps over multiple measurement runs.

Any idea what could cause those variations for the B200 series?

We use UHD 3.15.

Best regards,

Emanuel


Since these variations are very-much sub-single-sample in scale, my guess is that this has to do with the very-complex "calibration" mechanism that the AD9361   undergoes when it is initialized, and when you change frequency. Many of the elements in that sequence are, I think, analog in nature.  There may be some   "Monte-Carlo" elements in this, either "inherent" (because you're dealing with the vagaries of the analog world), or perhaps explicit in algorithms like
  I/Q imbalance compensation.

In contrast, on the X310 with a CBX, any I/Q balance compensation (which can affect phase), is entirely static, and the signal pathway in the analog domain is very   much simpler, with very much less "dynamic tweaking" during initialization and tuning.

My understanding is that AD9361 does not allow turning off any of those compensation algorithms.

Now, a caveat is that this is an educated hunch, based on the nature of the issue.  It could be something else, but the *scale* of the issue suggests something
  in the analog domain.

_______________________________________________
USRP-users mailing list -- [email protected]
To unsubscribe send an email to [email protected]

Reply via email to