This is a project that I completed in July 2017, I’ve just been too lazy to write about it here, so here it is, 1.5 years later.
A Nixie tube is an electronic device for displaying numerals. It is a glass tube containing a wire-mesh anode and multiple cathodes, shaped like numbers. Applying power to one cathode surrounds it with a red/orange glow discharge. The tube is filled with Neon gas at low pressure, which causes this discharge. These were very popular in the 1950s and 60s, and many companies in the Soviet Union were still using them up until the 1980s and 90s. (The tubes that I’m using are a Soviet design and were manufactured in 1975).
After seeing people use this amazing cold war technology to keep time, I knew I wanted one for myself. After pricing them online, assembled and in kits, I decided I could create my own version for around the same price as a kit. Plus, its a lot more fun to build your own than simply assemble somebody else’s kit.
IN-14 Nixie Tubes
Without any plan I purchased six IN-14 tubes from an eBay seller in Ukraine. I had thought of using Perfboard or some other crude method, before eventually settling on designing my own PCB. This was my first PCB design of any kind, so I wanted to use it as a learning experience. I had experience using Arduino in the past, so I decided it would be the simplest platform to develop this project with. I chose to use an Arduino Nano because of its small size and ease of use.
Over the course of a few months, I designed a board using Eagle, and had it made by a Chinese PCB printing company, EasyEDA.com .
I found many eagle part files online which saved me a lot of work, although I still had to design my own part files for a few components, such as the power supply. I designed a schematic and started to connect everything together.
The power supply DC-DC step up board was bought on eBay as an unsoldered pcb kit with parts. This converts a 12V input to an adjustable output which I set to 190V using the onboard potentiometer.
The anode of each tube is connected to a 190V rail from the power supply, through a 22k resistor, so as to limit the current supplied to each tube.
The ten cathodes are then connected to the outputs of the K155id1 Driver IC, which can be controlled by four inputs, and can display any number on the tube by sending a binary signal to each of the four input pins (A, B, C, and D).
The SN74HC595 shift register has eight outputs, and multiple registers can be controlled from only three digital pins on the arduino, making it the perfect choice for a project like this as one register can drive two nixie ICs, meaning that all six tubes can be controlled from only three Shift Registers, which are connected in series from pin 9 (QH’) of one chip to pin 14 (SER) of another. So by sending binary signals to the Shift registers, I can display any number on any of the Nixie tubes. I connected the Shift registers to pins D8, D9, and D10 of the Arduino.
I’m using an RTC-DS3231 Real-time clock module to keep the time, as it’s fairly accurate, and uses a 3V coin cell battery to keep the time when the main board is not connected to power. There are Arduino libraries readily available for this board so it was an easy choice.
I’m using the Adafruit RTClib library to set and read time from the rtc.
rtc.adjust(DateTime(F(__DATE__), F(__TIME__))); you can set the time using your computer’s time when the compiler was run.
I decided to add four push buttons to the board, for setting hours, minutes, and seconds, and to switch between displaying the time, and the date.
The arduino has built in pullup resistors so i didn’t need to add any on the board for the buttons and can call them by using
INPUT_PULLUP in the arduino setup code.
I ordered the finished board from Shenzhen based PCB company EasyEDA.com. It cost 40USD including shipping for the minimum order of five boards, which took about two weeks to print and ship to me. The boards are extremely high quality and I would recommend this company to anyone else looking to print a PCB.
After I recieved the boards, and soldered on all the parts, I realized that I had forgotten a connection on the 5V line, so I soldered a small wire on the underneath of the board to fix this. I also accidentally used a upside down version of the RTC module in my designs, but luckily the module has the same four pins on both sides so I was able to simply rotate the module 180 degrees and remove the two pins that I was not using.
Originally I mounted the board on a piece of yellow perspex but the board was exposed and gathered a lot of dust on it so I ordered a custom built clear acrylic display case from strikingdisplays.co.uk, then drilled mounting holes and a hole for the power cable at the back.
Here’s a top-down view of the finished board:
I will provide the full Arduino code if requested.
Thank you for reading this. I hope this is useful for someone.