Ice Tube Clock GPS

Our favorite Soviet-Era display that found its way into a present-day kit now displays time from orbiting satellites. A GPS module patched into an Ice Tube Clock with modified firmware will be able to provide a satellite-synced time. The firmware, modified by yours truly, parses the GPS module’s NMEA RMC sentences for the time and date information and then updates the clock’s time and date. Fun was had making sure the alarm went off at the correct times when the time was updated by the GPS. Overall, it was a fun project and we look forward to seeing additional Ice Tube Clock hacks.

Post navigation

22 thoughts on “Ice Tube Clock GPS”

Nice job, but wouldn’t it have been cheaper, easier, and more practical/accurate to sync up with an atomic clock? I seem to recall HaD running a simple project that used one of the atomic clock radios; the module only cost something like $10 and was exceptionally easy to interface with.

Bonus points for style using GPS, but certainly a downside to this build is that it won’t work unless near a window with a clear view of the sky.

The next feature to add would be time zone adjustment based on current location. “Never set your clock for anything again!”

This has the added bonus of being easily hackable. How many people have issues with old clocks, VCRs, etc, because they had incorrect Daylight Savings Time dates, and I couldn’t find a way to correct it? That changeover in the US was maddening! I still have to go across the street to reset my neighbor’s VCR twice a year. The date only goes up to 2010 on it now, so I’ve had to loop back as well.

@MS3FGX: I can pick up GPS in the middle of my house with no direct line of sight to the sky. I have a Garmin GPS18 USB and a Moto Droid, both of which get good signal. Just check your position first.

Plus, with this hack, you can run a wire to the window, or if you’re really fancy, use a solar panel and a wireless transmitter to get it inside the house.

@MS3FGX, and to clarify what pt said:
The GPS module, once it has received a time and date from the system, will keep time without a fix as long as its RTC is powered. In testing, I placed the clock and GPS in a cast iron dutch oven and it still kept time.

@Devlin,
Well sure, it will keep time without a GPS lock…but it is just using the RTC on the chip which is no more or less accurate than any other RTC chip you could plug into this device. So what would be the advantage there? You might as well just add the ability to set the time over serial from a computer and let the onboard RTC run with it. Unless you are getting constant drift adjustments, there is no point. So the GPS module must always have a good lock to maintain accuracy.

I have experimented with using GPS time on my server over NTP in the past, and found that the biggest problem was that the time accuracy seemed to change with lock quality. It looks like your code simply makes the assumption that if the date is set right, so will the time. But in practice (at least with my hardware) I noticed drifts of several minutes when the GPS had only a few locked satellites compared to a full lock.

That said, when it did work, accuracy with GPS was pretty good. Looked to be somewhat more accurate than NTP when you consider network latency delays. But overall I found it not worth the trouble, so scrapped the whole thing.

@MS3FGX: Since GPS requires a particularly good clock, I suspect that the RTC on the GPS module is likely quite a bit more accurate than the cheap one in the clock itself. But who knows…

If your GPS was drifting by minutes something was more wrong than reception, I reckon. If the GPS is decoding any satellites at all it will be getting the full UTC time code. If it’s unable to decode them, it shouldn’t be using a partially decoded signal, and it certainly shouldn’t drift any more than a normal RTC.

GPS itself should be quite a bit more accurate than decoding a radio time signal like WWV, but you really need a receiver designed for timing that outputs a 1PPS signal to get to the few-us accuracy that is possible. Just going by NMEA timing most receivers are only spec’d within 50ms or something, which isn’t very good. NTP can probably do better with a stable network against a stratum 1 server.

But does it matter? The clock only displays time anyway, it’s not like it’s some kind of precision measuring device, so in the end I agree: cheaper = better in this situation :P

Nice! I happen to have just picked up a bare Ice Tube PCB just this week and should have some IV-18s on the way _and_ I have a couple of vehicle-embedded GPS pods that would all play nice together. I’ll have to see about grabbing the new firmware and hacking on it.

I’ve been thinking of adding this to my own Nixie clock build. It seems like it’d be easier and have fewer potential pitfalls than trying to build a VLF receiver for WWVB.

What’s a good source for inexpensive GPS modules?

As an aside, I think an interesting coding exercise would be to use GPS time to “rate” an internal crystal oscillator and slew it to the correct time, kind of like NTP does, so you could get consistently accurate time with no abrupt jumps. In theory, if you save the correction factor in non-volatile RAM, this should create a clock that gets more accurate over time, even when a GPS signal isn’t present.