Hello,
Hope everyone is doing well. I am encountering an issue
regarding late packet arrivals when using Function Probe
blocks to call set_start_time and set_time_next_pps.
I have a flowgraph with a USRP Source and Sink and I am
applying the following two function calls to each (so four
function probes in total). The function probes have their rate
set to 1e-9 (so they should only ever run once).
set_time_next_pps(uhd.time_spec_t(0.0))
set_start_time(uhd.time_spec_t(2.0))
The USRP Sink is fed by a file source and the USRP Source
feeds a QT Frequency Sink. There is nothing else going on and
the Sink and Source are on the same subdev. If I run the
flowgraph, the following will invariably occur: a cascade of
LLLL... printed to stdout and the following warning: "gr::log
:WARN: usrp_source0 - USRP Source Block caught rx error code:
2"
Disabling the Function Probes with
set_start_time(uhd.time_spec_t(2.0)) or removing the
time_spec_t function parameter in the set_start_time function
call let the flowgraph run fine.
I've tried to look up exactly what is going on behind these
two function calls but I have been unable to make any headway.
I saw a previous thread
here which doesn't seem to have a
resolution.
GNU Radio & USRP environment:
Ubuntu 20.04
UHD 4.0.0.0
GNU Radio 3.8
USRP 2974
I think this may have something to do with the USRP and PC
clocks drifting apart, but this happens as soon as the Tx and
Rx should turn on, i.e. two seconds after running the
flowgraph, so I am not sure. Any help would be greatly
appreciated, and thank you for your time in reading through
this post.
Take care
Manav