Variable propagation delays

Hello,

My application requires very consistent propagation delays from TX to RX
between measurements (within 1 sample or so). I am seeing some odd
behavior
and could use a little help.

My flowgraph is as follows:

Vector source -> Frequency mod -> USRP sink
USRP source -> Head -> File sink

(The reason for the vector source is that it has a rewind() method that
I
need)

To take consecutive measurements without restarting the script (thus
restarting the USRP PLL’s), I stop the flowgraph, rewind() the vector
source, reset() the head, and schedule both usrp_source and usrp_sink
using
set_start_time(), then start the flowgraph again.

When I TX and RX on the same frequency, I get consistent propagation
delays
between measurements (within 1 sample). When I TX and RX on different
frequencies (with an external frequency shifter (hardware) in the loop),
I
get propagation delays varying from ~2 to 10 samples between
measurements.

Could these variations be due to residual samples in some blocks’
buffers
when the flowgraph is stopped and restarted? But then why are the delays
consistent when TX and RX are the same frequency? Could it somehow be
due
to USRP clock phase variation when the flowgraph is restarted?

Is there any way to reset all the buffers and streams (so that each time
the flowgraph is stopped then started, everything is “fresh”) so that
multiple measurements can be taken without restarting the script (thus
the
USRP PLL’s)?