|Re: [chrony-users] gpsd, pps and chrony|
[ Thread Index |
| More chrony.tuxfamily.org/chrony-users Archives
On Mon, 4 Apr 2011, Ed Wildgoose wrote:
The problem is not the serial port interrupt. It is as fast as any
believe. The problem is the time between the interrupt being serviced
kernel, and the program (gpsd) being notified that an interrupt has
and then timestamped.
Forgive my ignorance, but doesn't kernel PPS buy us 90% of that?
If you rewrite the serial interrupt service routine to
timestamp the interrupt as soon as it gets it, it should be much much
better. I wrote a parallel port interrupt service routine to do that.
You still get
usec level wander (ie it takes about 1-2 usec for the system to
interrupt and do the time stamping
Sure - I will need to go recheck the datasheet, but I think my
interrupts are generated by a 40Mhz clock taking something like 3 ticks
to notice the edge trigger, so my accuracy is going to be bounded by
this. However, what accuracy does one expect a statum 1 clock to be
tracking? +/- 20 uS? Less? (Note I do get that less is possible in
theory, just wondering what accuracy, real, public, Stratum 1 servers
are likely to be hitting?)
Since an NMEA ntp client is a stratum 1 and since NMEA has an accuracy around
10ms (yes, ms, not us) there is no such requirement.
Ie, the accuracy of stratum 1 clocks varies wildly.
Garmin 18 is not capable of better than that anyway.
For a cheaper version, get the sure GPS board. It is supposed to give
20ns timing on the PPS line, rather than garmin's 500-1000ns
Just intuitively it seems likely that the accuracy ought to be better
than 1uS for a PPS line since that would translate into fairly poor
accuracy on the ground? What kind of reasons cause the PPS to be "so poor"?
The time it takes the computer to recognize the interrupt, and service the
interrupt and to timestamp the interrupt. As I said, my experiments showed
that this is or the order of 1-2us.
Also the hardware in the gps clock and the software which generates the PPS
and amplifiers in the clock can all cause the slew rate of the pulse to be of
the order of MHz, or usec.
Also the time it takes for the pulse to travel down the line to the computer,
and the reflections up and down that line can also broaden the PPS edge.
Incidently, while we are geeking out on chipsets, I saw Skytraq
mentioned on the gpsd mailing list and they do all kinds of fun stuff,
some with fairly inexpensive eval boards, this has 30ns PPS pecision:
Remember that the sure board includes usb ( ie power supply) and antenna in
its $30 price.
(They also have a 20hz GPS with decent sensitivity and a GPS/GLONASS
And exactly what would a 20Hz buy you?
To unsubscribe email chrony-users-request@xxxxxxxxxxxxxxxxxxxx
with "unsubscribe" in the subject.
For help email chrony-users-request@xxxxxxxxxxxxxxxxxxxx
with "help" in the subject.
Trouble? Email listmaster@xxxxxxxxxxxxxxxxxxxx.