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]