[chrony-dev] Frequency synchronization without phase |
[ Thread Index |
Date Index
| More chrony.tuxfamily.org/chrony-dev Archives
]
I've been thinking about NTP servers without easy access to a window
or rooftop. They wouldn't be able to use GPS, but they could have
some sort of local higher quality frequency standard to rely on. They
would still need phase from a network source (and thus be Stratum 2+),
but the requirements would be lower.
People have done things like replacing the main oscillator on a
system, but I wanted something more accessable. I created a
microcontroller with a TCXO and had it output 1PPS (via timer output
compare hardware, controllable in 1ppb resolution, but dithered at
20ns steps). I'm using a custom gpio-pps driver that captures
CLOCK_MONOTONIC_RAW timestamps instead of CLOCK_REALTIME (so clock
adjustments don't get fed back into the system).
The question is: how do I feed that frequency data into chrony? Right
now I'm feeding the filtered data into chrony's tempcomp via "tempcomp
/run/tcxo 16 0 0 1 0" Is there a better way to do this?
Additional information:
https://dan.drown.org/stm32/adev-mix.png
^ comparison of various adev (think "standard deviation of frequency's
stability when sampled at the given interval")
TCXO ADEV - TCXO vs GPS PPS, timer input compare measurement
(20ns/2e-8 resolution samples)
gmtimer-PPS - stratum 1 system with a GPS PPS, using a timer input
compare measurement (41ns/4.1e-8 resolution samples)
gpio-PPS - stratum 1 system with a GPS PPS, using the gpio-pps
interrupt timestamp (41ns/4.1e-8 resolution samples)
vps3-home - stratum 2 system over a WAN (without tempcomp) with a
gpio-PPS as its stratum 1 upstream
I've also included lines for 1 hour and 1 day sample interval
From this graph, I think having a local frequency reference could be
a big improvement for stratum 2 servers.
--
To unsubscribe email chrony-dev-request@xxxxxxxxxxxxxxxxxxxx with "unsubscribe" in the subject.
For help email chrony-dev-request@xxxxxxxxxxxxxxxxxxxx with "help" in the subject.
Trouble? Email listmaster@xxxxxxxxxxxxxxxxxxxx.