On 07/30/19 03:48, Jakob Bohm wrote:
USB-to-RS-232 converters generally completely loose the precision timing
abilities of traditional serial port circuits (a 16550 or equivalent
chip connected to the main CPU bus like in the serial adapters for the
original 1981 IBM PC).

This is because the standard for USB-to-RS-232 is all about transferring
the data over an essentially "polled" USB 1.1/2.0 bus that polls once
per ms, with the conversion chip buffering stuff until the next
available 1ms USB frame.
:
As a transitional solution for such a technique, one could use an
enhanced USB-to-RS-232 adapter including a timestamp in its reporting of
"modem-control" inputs, such as "CD line went high 2.3456ms before the
start of this USB frame" (because it happened 0.3456ms before a frame,
but 2 frames were busy).
:

I took pretty much this strategy with my project here: https://blog.dan.drown.org/pps-over-usb/

It's custom USB-to-serial firmware, that measures the delay between the PPS and the USB poll. The kernel timestamps the CD transition in the USB interrupt handler, and the Linux software combines that with the firmware's delay message before reporting it to ntp via SHM.

It works, but it's not as good timing quality as just using a platform that supports pps-gpio or PPS on the NIC's 1588 timers.
_______________________________________________
questions mailing list
questions@lists.ntp.org
http://lists.ntp.org/listinfo/questions

Reply via email to