Close

Debugging the prototype

A project log for GPS Disciplined 555 Timer

UTC Aligned PPS from a 555

burbleburble 07/16/2025 at 18:510 Comments

The second prototype has some issues:

There could be at least three possible causes for the errors:

Measurement Errors

I'm very lucky to own a TAPR TICC:

TAPR TICC

The TICC is a timestamping counter with a very high resolution (~60 picoseconds) and very low noise floor around 1e-10); it's designed to perform long running measurements of low frequency (PPS like) signals so is ideally suited to measure the 1hz output from the 555.

Using the TICC to graph GPS sawtooth errors:

The TICC requires a 10mhz reference clock and has two timestamping channels. By using a GPSDO reference and providing the GPS PPS and 555 PPS on each channel a three cornered hat measurement can be performed to compare noise across the three sources. 

The TICC, GPSDO and a standard GPS PPS all have much greater stability than the 555 RC oscilltor by some margin (~4 or 5 decades, at least) so there should be good confidence that the 555 measurements are accurate and the problems seen do not lie here. 

Software or Hardware Problem ?

To try and rule out problems with the PID software a simple test was created to sweep the PWM control voltage over a small range between 32768 (the centre frequency) and 33768 . The idea is to check the PWM is being generated correctly and the 555 is responding to the control voltage changes as expected.

Ooops, that's not right, not at all. 

Two separate problems become apparent:

Checking how far apart the quantization steps are reveals the culprit; each step is a difference of ~6E-4 which looks suspiciously like 65536 / 100,000,000. The smoking gun is pointing firmly at the use of PWM.

No Surprises

The control voltage for the 555 is very sensitive, with the each step of the PWM corresponding to just 3uV; any slight noise leaking through to the control voltage is going to influence the system.

Conversely, a plug in breadboard is not a low noise environment and creating the prototype with digital components sat together with the sensitive analogue components is asking for trouble. It was inevitable that the prototype would get problems somewhere, so it was interesting to see where this would manifest.

Next Steps

To improve the results we'll need a lower noise build:

Spoiler Alert from the Future

Here's what a PWM sweep looks like in the final build.

The difference is clear, showing the 555 frequency smoothly varying with control voltage and that the PWM control steps are smaller than the inherent noise of the 555 RC oscillator.

Another Spoiler Alert from the Further Future

A typical GPSDO will incorporate sawtooth correction to improve accuracy and reduce averaging times. This is not going to be required for the 555 as it performs way worse than the GPS PPS, even without taking sawtooth in to account. 

Discussions