Some people like to tweak cars. Some like to overclock PCs. Then there are the guys like [Jack Zimmermann] who are obsessed with accurate time. He’s working on a project that will deploy NTP (Network Time Protocol) servers in different African countries and needed small, cheap, energy-efficient, and accurate servers. What he wound up with is a very accurate setup for around $200. Along the way, he built some custom hardware, and hacked a computer to sync to the GPS clock reference.
His original attempt was with a Raspberry Pi 3. However, the network adapter isn’t the fastest possible, both because it is 100 MBPS and, primarily, because it is connected via the USB bus. Network latency due to these limitations makes it difficult to serve accurate time.
His solution includes an Odroid C2. For $50 it is a very capable computer with four cores, gigabit Ethernet, and can even use eMMC storage which is faster than the usual SD card. You can still use a conventional SD card, though, if you prefer.
For a time reference, [Jack] used a Trimble GPSDO (GPS-disciplined oscillator) that outputs a PPS (pulse per second) and two 10 MHz signals. These are locked to the GPS satellite clocks which are very accurate and [Jack] says the timing is accurate to within less than 50 ns. Unfortunately, the pulse from the Trimble board is too short to read, so he designed a pulse stretching circuit.
Instead of trying to discipline the existing clock on the Odroid to the GPS reference, [Jack] removed the crystal and associated components completely. He then used a frequency generator chip to convert the 10 MHz GPS signal to the 24 MHz clock the Odroid expects. He has plans to use the extra outputs from the chip to drive the ethernet and USB clocks, too, although their absolute accuracy is probably not that critical.