Schematic and PCB Layout
Eagle PCB Design has been used to create the schematic and the PCB layout.
- Nixie driving:
Instead of using some kind of old russian Nixie driver ICs, I decided to drive the Nixies using discrete transistors. It might seem a little bit paranoid but I just don't trust those old ICs when dealing with 180V. Positioning all the transistors was a bit of work, but I am quite happy with the final layout.
Each Nixie is connected to a BCD to Decimal converter to ensure that there is only one active digit per tube. The BCD converters are connected to shift registers which are driven by the AVR using the SPI interface.
As these Nixies need high voltages of about 180V, I used a Step-Up converter to transform the 12V DC from the main supply to 180V DC. On Nick de Smith's website, I found a pretty good design of a Step-Up PSU and decided to use it due to its high efficiency and power.
- RTC & Thermometer:
Both devices are connected via I2C to the AVR. The RTC is also supplied by a small coin cell which ensures that the clock doesn't lose the time when unplugged. The thermometer is placed on a little extra PCB that can be placed outside the window. An FFC cable allows the thermometer to be connected to the clock even if the window is closed.
I wanted the clock to be as minimalist as possible and black acrylic seemed to be the best option for that. The case is made out of three layers of acrylic which have been made using a CNC mill. The clock has been first designed with a CAD software to make sure that everything fits.
The software is straightforward, the AVR fetches the time from the RTC and shows it on the Nixies. Every minute, it also shows the date and the temperature for five seconds each.
Twice a day, the clock does a sort of maintenance routine and shows the digits 0-9 one after another on all tubes. This makes sure that all digits are in use because otherwise, the unused digits would degrade over time.
Every night, the DCF77 time signal is used to syncronise the clock. The processing of the signal is done by a state machine.