/Projects/Warm Tube Clock v2 - Nixie Clock

This is a new and improved version of "Warm Tube Clock" - the open source Nixie clock project. Important hardware changes between this new version and the previous one are:

- Timekeeping is more accurate and is done by DS3231 (or DS3232) RTC IC
- There is no DS18S20 temperature sensor - the internal one of RTC IC is used instead
- Backup battery is not powering AVR anymore, but only the RTC IC
- There is no "slide switch" to control the alarm - now it is done in firmware
- Crystal on PCB is optional and can be chosen up to 16 MHz. It clocks AVR and GSCLK pin of TLC59401 IC
- Pin-compatible with previous version of Nixie "shields"

So, if you didn't read about the previous Warm Tube Clock, it is best to do it right now.

All project files (schematics, PCB & source code) are available for download by clicking on the red download button under the article (open source hardware).

UPDATE: Project is on Hack-a-Day and Hacked Gadgets :-) !
UPDATE 06-03-2011: New firmware added.

UPDATE 28-11-2014: PCBs are available for sale at link: http://www.elecrow.com/warm-tube-clock-v2-pcb-board-p-1154.html.

UPDATE 10-06-2015: Forum discussion is on this link.


New firmware options

1. time display
2. date display
3. temperature display
4. seconds display
5. configurable times of showing for all of above (for example, the clock can display time for 20 seconds, and move to next thing to display: date, temperature or both and go back to time. It can even be set to display only the temperature)
6. configurable Nixie tube brightness
7. configurable color of bottom RGB LEDs that blink at 1/2 Hz rate (or even turned off)
8. configurable color of bottom RGB LEDs while displaying date (or even turned off)
9. fading tubes while showing the date for better understanding of what is on display (MM.DD and YYYY)
10. Nixie tube saver option - this option turns off Nixie tubes at defined "sleep" time and turns them back on at defined "wakeup" time (for example, the clock can be configured to shutdown at 23:30 and turn back on at 07:30 in the morning) in order to prolong the life of tubes
11. alarm function with user-configurable melody with snooze function
12. user configurable snooze length with automatic snoozing so that the clock doesn't ring constantly forever if forgotten about
13. Nixie tube cross-fading with configurable fade speed
14. the famous "candle mode" for the romantic "touch"
15. cathode anti-poisoning on every 5 minutes
16. 12-hour and 24-hour mode for time and date, temperature conversion to Fahrenheit

main board v2 - top side

main board v2 - bottom side

Design changes
This version of clock uses DS3231 RTC IC and is fully compatible with DS3232. There were few different methods of how this IC could have been used in this project. I chose to use it's SQW pin to generate an interrupt in AVR each second (1 Hz precisely). So, on every SQW impulse the AVR reads RTC data (I2C) from DS3231/2 to display on tubes and for other things. Note: you must solder the SMD jumper on PCB in order to use currently supplied firmware. This jumper connects SQW pin to AVR.

DS3231 RTC IC is now where "slide switch" used to be

Second method is much simpler - supply AVR's OSC1 (PB6) pin with 32 kHz output of DS3231/2 instead of using 32.768kHz crystal. This way the AVR would get extremely accurate 32.768 kHz clock for incrementing the Timer1 of previous version of firmware. In that case, no I2C routines would be necessary.
Third method would be not to use SQW or the 32 kHz output, but to read RTC data (with I2C) in a program loop at all times. There is that SMD jumper on board so you can disconnect the SQW pin to use this method.

Part of the schematics with DS3231/2 RTC IC

Nixie shields
New version of clock is pin-compatible with previous one, so it is possible to use shields of previous version on this one and vice-versa. In this new version of clock, IN-8 shield is replaced with IN-14 shield because these tubes are cheaper and easier to find.

IN-14 Nixie shield

TLC59401 is at the bottom side of IN-14 Nixie shield

Under the Nixie tubes there are 4 SMD RGB LEDs

These IN-14 tubes are same as IN-16, only much bigger.

HV voltage booster
Voltage booster has remained the same. But if you are using (for example) 12 MHz crystal to clock the AVR, then the frequency of PWM signal is 46.875 kHz (FREQ/256). Using crystal of higher frequency will also result in a smoother RGB LED effects. You can experiment with the coil value and power supply to achieve minimum heating of the booster circuit. When powering clock with 11 V you can use coil of around 680 uH or even less (@ 12 MHz).


Nixie dots (semicolons)
Nixie dots are actually ordinary neon indicators from a 110/220V switch as you can see in the picture bellow.

Nixie dot harvesting

Thermal images of PCBs
Warmest point: 36°C, coldest: 21°C. Thanks to Filip for these images!




Image and video presentation

Image with blue LEDs

Video without bottom LEDs + at night


AM/PM setting example

Nixie cross-fading example

Nixie cathode anti-poisoning

Author (sent by): Trax

Download counter: 2,450

Rate: (2.98, votes 3046)


Date: 02-06-2011

Lokalna verzija ove stranice: Warm tube clock v2 - Nixie sat


Bookmark and Share Comments (29)

comment [29]

Not really! Open AVR Studio, new project for ATmega328P with (no files). Add all these files that you can download to the AVR Studio project you just d, and hit build. That is roughly it.
IP: n/a

comment [28]

Hi is there a guide How to compile the source code. Thanks

comment [27]

Thank you Trax.

comment [26]

Hi niall, I d forum topic where you can write: http://www.elektronika.ba/forum/viewtopic.php?f=30&t=10968&p=108225
IP: n/a

comment [25]

Hello Trax, (again), I started assembling the components to build the clock but I have a few questions regarding some of them. I apologise in advance, my electronics knowledge is basic at best and I have done a few small projects, but I am learning by doing them. Would it be wiser to the forum, open a thread on the clock so as not to fill the comments section with my inquiries.

comment [24]

Thanks...Just as I thought...I can compile assembly using MPLAB but I am a terrible programmer. If you have time perhaps you could have a go at it or you could let me know how to modify it or which lines of code to change. I haven't built it yet. I really do appreciate your time as I know it requires much time to do these projects and publish them.

comment [23]

Well, the single tube clock is only in 24hour format, but the firmware can be changed for US :) It is only a matter of subtraction in the code! I could do that once you build the hardware, or you can give it a go (it is in assembler though).
IP: n/a

comment [22]

Thanks Trax...will post some pictures shortly...Also I looked at your single tube Nixie clock. I would like to make one but does the firmware permit 12hr operation?...Us yanks aren't on 24hr time yet....TNX....

comment [21]

Robert, please send some photos of your clock to trax at elektronika.ba when you get the time! :-) Thanks! I hope you enjoy your clock for many years!
IP: n/a

comment [20]

Hello, here is the menu: www.elektronika.ba/misc/warm_tube_clock_menu.pdf That's the latest one I have documented. Check it out!
IP: n/a

Comment page: 123>

add comment


e-mail (will not be published)


How much is = also add letter "a" at the end of your result! Eg.: 7a

Please log-in!

To log-in use your username and password from the forum.


site friends

sponsored links