I built a new clock, and now I'm not sure what time it is
12:35
Watch on YouTube ↗
J
Jeff Geerling·Tech

I built a new clock, and now I'm not sure what time it is

TL;DR

Jeff built a nanosecond-precise PTP clock, only to discover his time server was drifting 3 seconds due to an Intel i226 driver bug.

Key Points

  • 1.The clock hardware: Raspberry Pi 4, Adafruit RGB Matrix HAT, two Waveshare 64x32 LED matrix panels, and a 5V/4A power adapter — total cost ~$120–$150. Design credit goes to Oliver Ettlin, who open-sourced the code after his 39C3 conference presentation.
  • 2.Why PTP instead of NTP: PTP (Precision Time Protocol) is designed for LANs and achieves far greater accuracy than NTP — the same technology syncs audio/video in NFL stadiums and powers White Rabbit, used in Earth-scale neutrino detectors.
  • 3.The problem: Jeff's Time Pi server uses an Intel i226 NIC whose Linux driver incorrectly triggers on *both* rising and falling edges of the GPS pulse-per-second signal (100ms pulse width), causing it to grab wrong second boundaries and drift up to ~3 seconds.
  • 4.The fix options: Apply an existing kernel patch for the i226 driver, or switch to a second Time Pi that uses the Raspberry Pi's built-in Broadcom NIC, which doesn't have the rising/falling edge bug.
  • 5.Custom enclosure: Jeff designed and 3D-printed a bracket in Fusion 360 that joins the two display panels, adds standoffs for magnetic mount screws, and accounts for 0.1mm LED overhang — making the final unit look "surprisingly professional."

Life's too short for long videos.

Summarize any YouTube video in seconds.

Quit Yapping — Try it Free →