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-requ...@chrony.tuxfamily.org with "unsubscribe" 
in the subject.
For help email chrony-dev-requ...@chrony.tuxfamily.org with "help" in the 
subject.
Trouble?  Email listmas...@chrony.tuxfamily.org.

Reply via email to