Sub-Nanosecond at Home, with GNSS and AI
My earlier talk asked whether sub-nanosecond GNSS clock sync was even possible. This one is about building it.
I gave it on 9 July 2026 at the STAC Summit held at the National Physical Laboratory in Teddington — which is a slightly intimidating room in which to discuss timekeeping.
GPS Satellites Are Not Master Clocks
It’s natural to picture GPS satellites as autonomous master clocks, broadcasting the time to anyone who listens. That abstraction is fine until you want position or time better than a handful of meters or nanoseconds — and then it quietly becomes the thing standing in your way.
Here is the question that reframed it for me. There are around 120 atomic clocks circling the Earth, perhaps 60 of them visible at once on a good day. How would you synchronize clocks you can’t touch?
The answer is that you don’t even try. You start them at roughly the same time, let them drift, measure each one’s error against good clocks on the ground, predict what that error will be shortly, and broadcast the prediction. The receiver applies the corrections. The same trick handles the orbits. One Galileo satellite runs about five milliseconds off — an enormous error, and entirely harmless, because it is measured and published.
The master clocks are on Earth. They are not in space. The satellites are how those clocks get broadcast to the rest of the planet, and the earthbound infrastructure — orbits, clock corrections, reference frames, atmospheric models — is what actually limits your accuracy.
Which leads to the point that reframed the whole project for me:
The GNSS chip in your phone uses the simplest algorithms with the coarsest models and corrections, to produce an approximate answer fast. The same received signals, processed through more complex algorithms with far more precise models, produce answers two to three orders of magnitude better. The limit isn’t what arrives at your antenna. It’s what you do with it.
There is a real tradeoff underneath that, and it’s mostly about patience: fast approximate answers versus slow precise ones. A phone wants a blue dot in three seconds. A fixed-position clock can watch the sky for hours, and knowing that the antenna won’t move is itself information you can exploit.
I found it easiest to picture what that patience buys in terms of things you can hold. Process only the pseudorange signals from the satellites and you get a quick answer that sits somewhere inside a very large beach ball — about a meter. Move to carrier phase and it shrinks to a softball. Keep going and you’re down to a ping-pong ball. The practical limit is about the size of a green pea, under a centimeter. That’s the regime I was trying to work in.
The Small Effects That Stop Being Small
Once you’re chasing the last nanoseconds, a list of effects you were previously entitled to ignore starts mattering. The talk highlights three, chosen because they’re the ones people find least intuitive:
- Intersystem bias — the constellations don’t agree with each other, so combining GPS and Galileo means accounting for the offset between them.
- Datum offsets — the land itself moves. Plate motion means a position is only meaningful against a dated reference frame, and “where I am” has a when attached to it.
- Solid-Earth tides — the ground beneath you rises and falls roughly daily, by enough to matter. Not the ocean. The rock.
There’s also a largely visual section on antennas, because they turn out to be a critical part of getting precise answers and they get less attention than they deserve. To give you a sense of the scale, I patiently surveyed the position of an antenna on my roof and got an answer good to about the width of a pencil eraser east-west — but the point being surveyed is five centimeters up inside the antenna, and higher still in a choke ring antenna. Locating an object the size of a dinner plate to the width of a pencil eraser, when the point you care about isn’t visible from outside, is a fair summary of the whole field.
My favorite of the small effects has the best diagnosis attached to it. Watching the sawtooth jitter in my lab one afternoon, the pattern reversed direction partway through, and it took me a while to work out why: I’d switched on the air conditioning. When you compare GPS time to quartz time, you have built a very expensive thermometer.
What I Built
PePPAR-Fix uses raw GNSS carrier phase observations to drive a disciplined oscillator. The talk walks through the block diagram, shows deviation plots against a simple GNSS PPS receiver for comparison, and reports progress toward two-clock agreement.
The parts list totals about $1000, and there’s a photo of one of the prototypes. That number matters to me: this is meant to be reproducible by someone who wants to follow, not a demonstration that it can be done with a budget nobody has outside of national labs.
What Working with AI Actually Looked Like
About four months of fairly intense research in 2026 took me from understanding only the basics of GNSS timing to a much deeper appreciation of what sub-nanosecond performance costs. Along the way I went from zero to roughly 140,000 lines of Python for processing GNSS signals and disciplining precision oscillators.
None of it would have happened without AI, and none of it would have happened without the pioneering work of others either.
The approach that worked for me: give the agents great power, but limit the blast radius if something goes wrong. Broad authority to explore, tight bounds on what a mistake can damage. That’s a design problem more than a trust problem, and getting it right is what made the pace sustainable.
Concretely, that meant a command line interface rather than a chat window, and running with permission prompts switched off — inside a virtual machine that had root access to the lab equipment and not much else. Broad authority, small blast radius. I ran several agents with specialized roles: research and planning, Python coding, driving the instruments and collecting data, and analysis. Some of the slides in the talk were made by agents to convey points I’d asked for.
The hardest lesson was about language, not code. Sloppy language is sloppy thinking. So I had the agents build a project glossary, which every agent must read when it starts and must maintain as new ideas arrive. Precision in the terms turned out to be a prerequisite for precision in the clocks.
If You Want to Build Your Own
One goal was to leave a trail of crumbs.
- PePPAR-Fix — the software, open source.
- The slides include a complete parts list.
- f9tResearch — the measurement tools behind the earlier work, including the dual F9T experiments.
This stands on the shoulders of others, especially Ole Petter Rønningen, who built the first PPP GPSDO, and John Ackermann, N8UR, for an inexpensive time-interval counter and divider.
The Slides
View the presentation on GitHub, download it for offline viewing, or watch the dress rehearsal recording.
As before, the slides are heavy on visuals and light on bullets, so the PDF leaves out what the narration carried. The recording gets you closer.
← Subsistence Internet Proxmox On-Site and Off-Site Backup →
