[time-nuts] How to get 32.768KHz from 10MHz

Jim Palfreyman jim77742 at gmail.com
Thu Jul 24 00:11:32 EDT 2008

In response to Jim Lux's email I checked out the NASA tech brief.

According to them to run a sidereal clock you should set the frequency to
32,859.27577 Hz.

Now the length of the sidereal day is 23:56:4.091 seconds. This is
23.934469722 hours. That is, the sidereal clock must cover 24 "hours" on the
clock in 23.934469722 real hours. That is, it must run 24/23.934469722 times
as fast. Hence it's crystal needs to be at 32768*1.002737904=32,857.71563469
Hz not the 32,859.27577 as stated.

Interestingly if you multiply 32767*1.002737904 you get the above result.

I think they have made a mistake. My guess is the author is very computer
literate and typed in 32767 without thinking!

That sidereal clock would be out by a few seconds per day. We cannot have


There's two approaches to your high level problem (driving a clock)... one
is to make 32.768 kHz, the other is to directly drive the 1pps.  Obviously,
dividing down 10M to get to 1Hz is easy.

But, for the other, you don't need to have a perfect symmetrical sine wave.
 All you need to do is make sure that there are 32,768 transitions in a
second, so any sort of rough and ready divider scheme will work.

Now.. in the lab what I did is use a HP3325B to make clocks run on Mars time



Since the 3325 was locked to the lab's maser, it's probably the most
accurate Mars clock around (bearing in mind that Mars's rotation isn't
nearly as stable as the maser, so it's superfluous accuracy)

You can do other nifty things, by the way... you can make a clock that
displays solar elevation ("sundial time") because the rate can be changed

I never did get around to programming a PIC to do some of this stuff, but it
would be quite straightforward.

Jim Lux

More information about the time-nuts mailing list