[ntp:questions] ESR looking for good GPS clocks

unruh unruh at invalid.ca
Sat Mar 3 20:35:44 UTC 2012

On 2012-03-03, Terje Mathisen <"terje.mathisen at tmsw.no"> wrote:
> unruh wrote:
>> On 2012-03-03, Terje Mathisen<"terje.mathisen at tmsw.no">  wrote:
>>> I.e. even if regular USB is limited to 1 ms resolution, it should be
>>> possible to improve this to a sub-us timestamp with such a protocol.
>> ?? How does anything know what the offset is between the time the GPS
>> emits the PPS pulse and the time the computer receives it? The polling
>> of the pseudo DCD signal on the usb device is going to take time. The
>> encoding of the PPS pulse as a usb message is going to take time. USB
>> has two lines-- send and receive, over which everything goes. Thatt
>> pseudo DCD is simply going to be yet another usb message sent over the
>> usb lines-- waiting its turn (you cannot interrrupt some other message
>> already on the bus AFAIK) to be sent, then received, then decoded, and
>> then the computer polls the usb and finally timestamps it.
> The idea is of course to NOT use the USB-RS232 emulation driver, instead 
> (or on top of) you want a private command to poll for the latest PPS 
> timestamp.

The PPS does not send a timestamp. The PPS is such that the rising edge
of the signal is exactly .000000000 seconds. That is all. Your computer
has to then timestamp that rising edge. The serial ->usb takes that
pulse, encodes it as a usb command, and sends that special command along
the usb line as a normal usb packet. It has not timestamp. It is simply
a message "the dcd line has gone high". The accuracy might be ms. I
doubt but do not know if you can get 100us out of it. Any less I doubt,
but do not know. 

> The reply you get from this command can then contain the actual time at 
> the point of polling, instead of just what it was at the latest PPS.

What command? Sending a command to the gps unit. Horribly slow. It
spends most of its time working at getting the position and time
accurately and puts off sending out commands to low level ( except that
PPS pulse).

> OK?
> Terje
> PS. Afair the Trimble Palisade (or some other old GPS) had a serial 
> protocol which was very similar to this; the GPS and the computer would 
> cooperate in figuring out the actual offset from the most recent PPS event.

More information about the questions mailing list