Error message

Deprecated function: implode(): Passing glue string after array is deprecated. Swap the parameters in drupal_get_feeds() (line 394 of /usr/share/drupal7/includes/

GPS Disciplined Oscillator

From time to time I get asked, what to use as accurate time source (better than a few microseconds) or frequency reference (better than one ppm). One affordable way to get there is to use a GPS disciplined oscillator (GPSDO). This post elaborates on some of the choices you have when shopping for a GPSDO and the issues you can expect.

Do It Yourself

The usual hobbyist would want to build his own GPSDO. Over the past decades, there have been a few notable designs of GPSDOs out there:

Brook Shera's GPSDO

The oldest of of these designs, I am aware of, is the one done by Brooks Shera and published in 1998 QST article. As can be seen from the block diagram the arrival time of the pulse signal (PPS) from the GPS receiver is measured using a 24MHz oscillator. The GPSDO relies on the 24MHz oscillator being slightly off to achieve better precision than the 1/24MHz=42ns resolution of this crude time to digital converter. This introduces a small jitter in the measurement value, which then gets averaged out by the control loop. Unfortunately, this gives rise to a phenomena called "hanging bridges", which is a loss in precision when the measurement oscillator frequency is close to an integer multiple of 1Hz.

James Miller's "Simple GPSDO"

Another interesting design is the one done by James Miller. He uses the 10kHz output of an Navman Jupiter GPS receiver to feed a PLL he built out of an XOR gate and a couple of decade counters as divider. The ADEV he achieves is quite impressive. By locking the 10MHz oscillator directly onto a GPS derived 10kHz signal, the design avoids the "hanging bridges" problem completely.


Bertrand Zauhar did another GPSDO design around the same time as James Miller. He used a PIC microcontroller as the central element and does almost everything in software. This simplifies the hardware quite a bit: Beside the PIC and the output divider and drivers, there is only an signal conditioner at the input and an opamp to build an PWM based ADC. Unfortunately, the design is built around an FLL (frequency locked loop), which induces a slight frequency error. In principle it should be possible to do an PLL as well to get rid of this frequency error. I have not checked the details of the design, so I cannot say why Bertrand choose to do an FLL design instead of an PLL design. Maybe it is a limitation of the PIC.

Kasper Pedersen's "GPSDO controller"

A quite recent and interesting design is the GPSDO controller by Kasper Pedersen. Similar to Bertrand Zauhar, he used a microcontroller to simplify the design. But to increase the precision of the GPSDO he integrated a small time interval counter (TIC) into his design. Even though the circuit is very simple (not to say crude) he gets an measurement error of 256ps.

Nick Sayer's "GPS disciplined OCXO"

Yet another microcontroller based design is the one from Nick Sayer (schematic can be found here and controller source code here). From the hardware, the project is very similar to the VE2ZAZ GPSOD, but has the option to run the firmware either as PLL or FLL. Nick also did a comparison of his GPSDO using a cheap TXCO (Connor-Winfield DOT050) against one using an OCXO (Connor-Winfield OH300).

The GPS Receiver and Its Antenna

Navigation vs Timing Receiver

For a good GPSDO you will also need a good GPS receiver. But what is a good one? Well, that depends. Most of the designs listed above use normal "navigation" GPS receivers. For a lot of people these should be good enough. Especially if you have a good antenna position. You can get pretty cheap modules on ebay with the antenna included. Unless you have a stability requirement that goes beyond 10-7 or need timing precision better than 100ns, I probably wouldn't bother getting a timing GPS receiver. With one exception: Bad antenna position. To have a good PPS pulse, you need to see as many satellites as possible. And for this, you need good sky view. In case you don't have that (e.g. if you live in small apartment and are not allowed to put up some antenna), then a timing receiver can help. Said Jackson from Jackson Labs did some measurements some time ago. In a mail to the time-nuts mailinglist he wrote:

We recently did a test by putting an antenna in a side window in the office that had maybe 10% view of the sky, then let the unit run in mobile mode while doing the auto survey. After two days, we switched it into position hold mode. Most of the time it sees only one sat direct, all others are only seen through multipath. The results are astonishing, SD went down from about 30ns+ to about 8ns. Spikes to +/-150ns went away completely.

In a later mail he added the two phase noise plots(FireFly IIA and CSAC GPSDO) and wrote:

The errors while in mobile mode are even worse than I remembered,
 up to 400ns. It's clear when I turned the units to position hold mode as
the  phase errors basically collapse at that time.

Also note that the indication of the number of tracked sats doesn't  change
when turned into position hold mode.
The antenna position was horrible, most of the time only one sat was  being
tracked directly.

The advantage of position hold here comes from the fact that the receiver knows where it is and thus has only to solve for one variable and not for 4 variables (3D position and time). Which allows the receiver to work with only one satellite in view (although with degraded performance).

The Antenna

The choice of the antenna is similar to the choice of the GPS receiver. Unless you need precise timing, you do not need a timing antenna. The ubiquitous puck antennas that can be bought for less than 10€ are more than adequate for almost everyone. The only excuse to use a real timing antenna is, if you need better than 1ns timing and your receiver supports multi-band reception. Then you will need a multi-band antenna as well, which in turn will be a geodetic or timing antenna (there is no different in the antennas, it is just different labels for different markets).  Unfortunately, these antennas are very pricey. Even used, they cost several 100€. 

Buying a GPSDO

The Hobbyist Options

In case you do not want to build your own GPSDO there are a few choices. If you look on ebay, you can find quite a few different GPSDOs. Most of them are quite good, but can be overpriced. E.g. the Trimble Thunderbolt was below 50€ a couple of years ago, while now it's almost impossible to find one under 150€. I would advice against using the design from BG7TBL, which is sold in large quantities on ebay. John Miles did some measurements and found that they show some quite distinct frequency offset. Apparently there is something wrong in the control loop. If you do not want to buy something used from ebay, a good alternative would be Nick Sayer's GPSDO which he sells on tindie.

The Professional Options

If you are selling some solution to a customer you might need something more "professional". Beside the obvious choices like the solutions from Microsemi, Trimble, and Meinberg, there is also the lesser known option of Jackson Labs. Even though Jackson Labs is rather small, especially if you compare them to Microsemi and Trimble, they have high performing devices to affordable prices.