WD6CMU's Super-Accurate Clock


A long, long time ago, in a far-away land known as Benton Harbor, Michigan, there lived a company named Heathkit that delighted hams and electronics hobbyists around the world by designing and selling high-quality electronic kits at a reasonable price.  Several of the kits were not just fun to assemble, but also unique designs that couldn't be found anywhere else.  One of these was the Heathkit Most Accurate Clock, model GC-1000.

The GC-1000 utilized a microprocessor (two of them if you had the RS-232 option) to read the digital time codes transmitted by WWV, and displayed the results.  It had a 3-channel crystal-controlled receiver that picked up 5, 10, and 15MHz, and the micro would lock on to the channel with the strongest signal.  One could watch the MUF move up and down the spectrum by checking on the little chronometer.

Nowadays, WWVB receiver clocks (A.K.A "atomic" clocks) are a commodity, and the MAC isn't as unique as it used to be.  The firmware wasn't perfect, changing to daylight savings time at 00:00 GMT rather than at local 1AM, and it would not display the date.  Due to shortwave propagation delay, its accuracy (on the order of hundreds of microseconds), while good for its day, was less impressive compared to modern technology.  As well, the tin-plated connectors used to interconnect the MAC's PC boards have a tendancy to develop an oxide layer over time, requiring periodic cleaning to keep it operating properly.  Hence my search for a replacement.

I had an opportunity to talk to Tom Clark, W3IWI, at the Dayton Hamvention one year.  We discussed his "Totally Accurate Clock" project which he developed as a cheap way to coordinate radio telescopes in order to perform very long base line radio interferometry -- a technique for making lots of little telescopes operate together like one big telescope.  While I liked Tom's approach to reaching the Nirvana of perfect precision, his design lacked the beeping and blinking lights I'd come to expect from my MAC.  Around the same time, I'd been taking a close look at the electronic pendulum clocks of Bryan Mumford which enhanced my appreciation of the elegance of dial clocks.  I wanted a clock that had it all.

The result is the clock you see at the top.  In addition to the LCD display, the SAC includes an RS-232 interface, a low-impedance 1PPS output, and a driver for an analog dial clock face.  The receiver used is the Motorola Oncore UT+ module purchased from Synergy Systems.  The Oncore UT+ is optimized for time measurement (as opposed to most other GPS receivers, which are optimized for position), and, once locked-on to a fixed location through a lengthy survey, is accurate to within 50ns of absolute time.  The receiver does require an external amplified antenna located where it can see the sky in order to operate.  I use one from Lowe Electronics, but just about any similar antenna will work.

The backlit .45-inch LCD display is the Vikay 2011TNLDNOBN-TC, currently available at Marlin P. Jones (but I have no idea for how much longer).  The backlight is adjusted by the microcontroller according to ambient light.  If you look at the display in the top picture, you will see what looks like a big comma.  It is, in fact, a rotating hand with 8 positions that shows the fractions of a second.  I toyed with the idea of having a tenth-second display like the MAC, but decided most humans couldn't read numbers that fast, and I wasn't sure the LCD could be updated fast enough to be legible.  After using it for a while, I'm satisfied the rotating hand was the right way to go.

The slave dial is a standard quartz movement wall clock -- I simply wired the slave dial output from the SAC across the driving coil of the clock and removed its battery.  The SAC micro provides the bipolar current loop drive that the solenoid mechanism requires.  The length of wire can be some distance, I mounted the dial in the next room and ran 40ft or so of zip cord back to the SAC.  The driver in my quartz clock was of high enough impedance that it does not interfere with the signal from the SAC, but, at worst, you may have to de-solder one of the coil leads from the movement.

Of course, the connection between the two is open-loop, i.e. the SAC has no way of knowing where the dial's hands are positioned.  The two must be synchronized manually by setting the hours and minutes, then pressing a button combination on the SAC when the second hand reaches 12.  This freezes the dial until the start of the next minute.  Once the dial is synchronized, the SAC's firmware should keep the two in sync.  When daylight savings time ends in the Fall, the dial will freeze for one hour starting at 1AM local time.  In the Spring, the dial runs at double-time for an hour starting at midnight.  Leap seconds are handled similarly.

Configuring the clock is accomplished through the use of three momentary contact pushbuttons on the front panel.  They are used singularly or in pairs to access all the available functions.  See the documentation link below for details.  One item of note: the firmware right now is only capable of handling timezones in the lower 48 United States. I have no plans to extend that capability, but you're welcome to make the changes to the code yourself.

Bringing all the parts together is the AT90S8535, a member of Atmel's 8-bit AVR microcontroller family.  There are many reasons why this family of parts is particularly handy for hams: