On 2022-02-01 14:10, Jim Palladino wrote:
Hi Marcus,
In the app I'm writing, for now I'm just setting the time to '0.0'
after startup, like:
usrp->set_time_now(uhd::time_spec_t(0.0));
That may be part of your problem--that may produce two separate
transactions for the radio timestamp registers.
Use set_time_unknown_pps() instead, and see if this changes things.
Also, make sure you're setting master_clock_rate in the device arguments.
For the "test_timed_commands.cpp" test app, I'm just executing what is
here:
https://github.com/EttusResearch/uhd/blob/UHD-4.1/host/examples/test_timed_commands.cpp
It doesn't appear to matter, but my E320 is setup to use an internal
reference, the N320 is external.
Thanks,
Jim
------------------------------------------------------------------------
*From:* Marcus D. Leech <patchvonbr...@gmail.com>
*Sent:* Tuesday, February 1, 2022 1:59 PM
*To:* usrp-users@lists.ettus.com <usrp-users@lists.ettus.com>
*Subject:* [USRP-users] Re: Timed Commands Not Working
On 2022-02-01 13:55, Jim Palladino wrote:
Hello,
I've been trying to get an app working with timed commands for an
E320 or N320 using UHD 4.1. It seems that all commands are processed
immediately, not at the time I tell them to. Setting the time to
start RX streaming does seem to work fine, but that is a time_spec
passed to the streaming function -- not a "timed command".
If, on the other hand, I use timed commands to set a series of RX
frequency tunes in the future -- to retune says every 100ms -- that
isn't working. All retunes get processed immediately, one after
another, with no 100ms gap in between. I would post the code I'm
using here, but I went ahead and ran the UHD-included
"test_timed_commands" example on both the E320 and N320. The example
application does not seem to work right on either device and exhibits
the same behaviour I'm seeing with my code. You can see from the
results below, that instead of a 100ms gap between get_time_now()
calls, as the example app is setup to do, the calls to get_time_now()
return immediately.
Here is the output of "test_timed_commands" on the N320. The code is
unmodified from the provided example source:
--------------------------------
$ ./test_timed_commands
Creating the usrp device with: ...
[INFO] [UHD] linux; GNU C++ version 7.5.0; Boost_106501;
UHD_4.1.0.4-0-g25d617ca
[INFO] [MPMD] Initializing 1 device(s) in parallel with args:
mgmt_addr=192.168.40.2,type=n3xx,product=n320,serial=31EDED4,fpga=XG,claimed=False,addr=192.168.40.2
[INFO] [MPM.PeriphManager] init() called with device args
`fpga=XG,mgmt_addr=192.168.40.2,product=n320,clock_source=external,time_source=external'.
[INFO] [MPM.Rhodium-0] init() called with args
`fpga=XG,mgmt_addr=192.168.40.2,product=n320,clock_source=external,time_source=external'
[INFO] [MPM.Rhodium-1] init() called with args
`fpga=XG,mgmt_addr=192.168.40.2,product=n320,clock_source=external,time_source=external'
Using Device: Single USRP:
Device: N300-Series Device
Mboard 0: n320
RX Channel: 0
RX DSP: 0
RX Dboard: A
RX Subdev: Rhodium
RX Channel: 1
RX DSP: 1
RX Dboard: B
RX Subdev: Rhodium
TX Channel: 0
TX DSP: 0
TX Dboard: A
TX Subdev: Rhodium
TX Channel: 1
TX DSP: 1
TX Dboard: B
TX Subdev: Rhodium
Testing support for timed commands on this hardware... pass
Perform fast readback of registers:
Difference between paired reads: 2016.288086 us
Testing control timed command:
Span : 100000.000000 us
Now : 416299.532064 us
Response 1: 418303.910319 us
Response 2: 420352.290853 us
Difference of response time 1: -97995.621745 us
Difference of response time 2: -195947.241211 us
Difference between actual and expected time delta: -97951.619466 us
About to start streaming using timed command:
Received packet: 100 samples, 0 full secs, 0.524535 frac secs
Stream time was: 0 full secs, 0.524535 frac secs
Difference between stream time and first packet: 0.000000 us
Done!
---------------------------------------------------
Any thoughts on this would be appreciated, as timed commands are
important to the application we are developing.
Thanks,
Jim
How are you setting device time at startup?
_______________________________________________
USRP-users mailing list -- usrp-users@lists.ettus.com
To unsubscribe send an email to usrp-users-le...@lists.ettus.com