Nixie tubes are really cool looking and are becoming quite popular for their 'retro' look. Although there are a number of tutorials out there on using nixie tubes and some nice pre-packaged units (see these nice ones from ogi lumen and ArduiNIX) I hadn't seen a simple tutorial on running them using a shift register like the SN74HC595. This would use the minimum number of Arduino pins as it can run as a serial device. Another nice addition is the use of the SN74141 BCD to decimal decoder/driver chip. This chip allows direct control of the Nixie tubes from the shift registers without the use of individual transistors for each numeral. An added benefit to using shift registers is that additional pairs of Nixie tubes can be added without using any more Arduino output pins. They just get daisy chained to the first set.

WARNING: Nixie tubes require a high voltage power supply, typically 150-180 volts. This is enough voltage to hurt you. Please make sure you know what you are doing.

Note: please let me know of any typos/errors/comments so I can continue to improve this Instructable.
I'd also appreciate it if you'd vote for me in the contest. Thanks.

Step 1: Theory

The Arduino code defines a byte (eight bits) based on the code written.
This byte is then passed serially to the shift register.
The shift register then uses the byte to set each of eight pins either high or low (aka serial to parallel conversion). (A useful tutorial using shift registers with Arduinos can be found here)
These eight pins are connected to the input pins (four each) on the two 74141 chips.
The 74141 chips read the four bits as a code that defines which of the numbers to light on the Nixie tube. See the datasheet for the codes)
A Nixie tube works by having a high voltage (typically 150 - 180 volts) attached to the anode. Each of the filaments is connected to the anode and each has a separate cathode. When a number's cathode is connected to ground, current flows through the digit and it lights up).
The 74141 chip is designed to interpret the four bit code to connect one of its ten pins to ground. The 10 cathodes of the Nixie tube are connected to these pins. When one of these pins gets connected to ground, that number lights up. The 74141 is specially designed to handle the Nixie's high voltages.The same thing could be done with a series of transistors, but the 74141 chip just simplifies things.
<p>Thanks for the guide!</p><p>I did not understand if the ground of the high voltage power supply I have to connect somewhere.</p><p>If I understand correctly the Nixie tubes work with 170V so you have to connect the positive anode and then the mass of the cathodes. This mass would be of 170V?</p><p>I ask this because the pin 12 of the 74141 connect the mass that comes from Arduino as to pin 5 connect the 5V?</p><p>Thank you !</p>
<p>I am currently in the middle of making this little project. Looking at the schematic, where abouts do you actually ground the high voltage? On the 74141.. Is it Pin 12?</p><p>Also I found using 0.5 Watt 15K Resistor seems to do the job. Getting a steady 2.35mA which is just under the 2.5mA rating for a IN-12A tube. I set the potentiometer on the power supply to 170v (using the same Lumos one as you suggested)</p>
<p>For anyone who is looking to purchase these, the link posted is dead, but they can be found here:</p><p><a href="http://www.lumenspar.com/nixie-tube-c-27.html" rel="nofollow">http://www.lumenspar.com/nixie-tube-c-27.html</a></p><p>Hope this helps.</p>
<p>Are you running the current limiting resistor in series ? meaning one side goes to the positive and one goes to the negative?</p>
<p>hi, how do you wire the ground? I have burned a couple of drivers and shift registers, I can't get it right!</p>
<p>Awesome, I got my nixie working. I am going daisychain another shift register so I can control 4 tubes at once. :-)</p>
<p>Cool. Post a picture when you get it going.</p>
<p>Could you explain how you calculated the resistor you needed? I'm familiar with Ohm's law, but it seems that people are calculating the needed resistor based on the voltage drop as well, which I am less familiar with.</p>
<p>Based on what I've read around the web and that picture, I'd guess that the 4.7k resistor is insufficient to reduce current to the rated current of the nixie (~2.5 mA), which will likely cause the nixie to burn to too bright, reducing its lifespan significantly.</p>
<p>I just got some tubes so this is something I will be doing.</p>
Great! Post a photo when you are finished with the project!
<p>Thanks! Great tutorial</p>
Where you got the nixie tubes?
I got them on eBay. See the link in step two.
Very cool. I've been wanting to play around with some Nixie tubes and this is just what I needed- thanks!

About This Instructable


116 favorites


Bio: She is a crafter including bookbinding, jewelry design and paper crafting. He prefers electronics with lots of blinky lights and an Arduino to control them ... More »
More by lmperkins: Spinning Blinking Papercraft Tardis Han Solo in Carbonite Pendant from Copper or Silver Metal Clay Driving two Nixie tubes with an Arduino via a shift register and two SN74141s.
Add instructable to: