I added the ability to send arbitrary UART commands to the GPSDO from the UHD API.
For my use case, this enables sending commands to allow the GPSDO clock to free-run, while GPS is still locked, providing time information, but with continuous phase from the crystal. This enables interesting applications.
It also allows for getting other information, and configuring the GPSDO more than the default settings without recompiling UHD.
Which devices/areas does this affect?
x300/x310, has no affect unless the user sends a command to change the behavior of the GPSDO, and only then when the GPSDO is selected as a time or clock source.
Testing Done
Tested on 11 x300/x310 units on latest firmware.
Compared clock output with oscilloscope to check expected behavior from sending commands to the GPSDO, and comparing GPSDO responses. Behaves correctly.
Have run many long experiments on the systems since adding code, no failure condition has been observed.
Checklist
[x] I have read the CONTRIBUTING document.
[x] My code follows the code style of this project. See CODING.md.
[ ] I have updated the documentation accordingly.
[ ] I have added tests to cover my changes, and all previous tests pass.
[x] I have checked all compat numbers if they need updating (FPGA compat,
MPM compat, noc_shell, specific RFNoC block, ...)
x300: Add API Access to GPSDO UART
I added the ability to send arbitrary UART commands to the GPSDO from the UHD API.
For my use case, this enables sending commands to allow the GPSDO clock to free-run, while GPS is still locked, providing time information, but with continuous phase from the crystal. This enables interesting applications. It also allows for getting other information, and configuring the GPSDO more than the default settings without recompiling UHD.
Which devices/areas does this affect?
x300/x310, has no affect unless the user sends a command to change the behavior of the GPSDO, and only then when the GPSDO is selected as a time or clock source.
Testing Done
Tested on 11 x300/x310 units on latest firmware. Compared clock output with oscilloscope to check expected behavior from sending commands to the GPSDO, and comparing GPSDO responses. Behaves correctly. Have run many long experiments on the systems since adding code, no failure condition has been observed.
Checklist