Title:
SoapySDR RF plugin: timestamp advances 2× too fast with RTL-SDR (float vs complex sample miscount)
Description
When using an RTL-SDR with the SoapySDR RF backend, the transmit (and potentially receive) timestamp is advanced exactly twice as fast as it should be.
Root cause
In lib/src/phy/rf/rf_soapy_imp.c
*secs = floor(timeNs / 1e9);
*frac_secs = (timeNs % 1000000000) / 1e9;
but a comparison with wall clock shows that time advances exactly twice as fast, most likely caused by timeNs twice as large because a complex sample is counted twice.