I have a software application that interfaces to an X300 with a TwinRX
daughterboard installed. We recently upgraded our UHD version to
v3.14.1.0 in our application. Since then, we've observed that the
time_spec values on consecutive blocks of data received from the unit
(i.e. from two sequential calls to rx_streamer::recv()) are not
consistent with one another. The timecodes reported by the unit seem to
be moving forward at twice real time.
As an example, assume that I have the X300 configured for a sample rate
of 100 MSPS, and that I'm getting 1000 samples per call to recv() (these
are just round numbers to simplify the discussion). I'm seeing metadata
from consecutive recv() calls that look like this:
Block 1:
- time_spec.get_whole_secs(): 0
- time_spec.get_frac_secs(): 0
- 1000 samples @ 100 MHz = 10 usec of data
Block 2:
- time_spec.get_whole_secs(): 0
- time_spec.get_frac_secs(): 0.000020 (where I would have expected
0.000010 instead)
- 1000 samples @ 100 MHz = 10 usec of data
... and so on.
If you watch the stream of timestamps received from the device, it looks
like time is passing at twice the appropriate rate. I noticed this
recent commit that seemed could be related:
https://github.com/EttusResearch/uhd/commit/5f75f73f25016958ab32710bb0cbd5ce4481041b
If I revert that commit, then the timekeeping on the TwinRX channel
works properly again. However, that isn't a fix that I can work with; I
also use this hardware in a configuration where the X300 has a TwinRX
and LFRX daughterboard installed simultaneously. Without the above
commit, then I am unable to stream data from the LFRX; the rx_streamer
never returns any data for that channel. I previously reported that
problem
(http://ettus.80997.x6.nabble.com/USRP-users-X300-with-TwinRX-and-LFRX-under-UHD-v3-14-td12749.html)
and never got an answer, but the above commit silently fixed it in
v3.14.1.0.
How can I get correct timekeeping with the X300/TwinRX, while
maintaining my ability to stream from a TwinRX and LFRX simultaneously?
Jason
_______________________________________________
USRP-users mailing list
USRP-users@lists.ettus.com
http://lists.ettus.com/mailman/listinfo/usrp-users_lists.ettus.com