Meet the B-7971 Nixie Shoutbox. You may be wondering what exactly a "shout box" is. The term has fallen out of favor these days, but when I built the Shoutbox in 2007, it was well known. Just about every Wordpress blog on the Internet at the time had some sort of Shoutbox - sometimes called Tagbox - widget installed. The widgets allowed visitors to post short text messages - "shout outs" or "tags" - on the sidebar of the blog page, often anonymously without having to register. Shoutboxes on blogs are pretty much extinct today. I don't know exactly what brought about their demise but I suspect that their open and anonymous nature led to more abuse issues than blog owners cared to deal with.
The idea for the Nixie Shoutbox came from the convergence of several of my interests at the time. Do it yourself video streaming was becoming practical and I was involved in the development of some early home security video streaming software. I had been interested in Nixie tubes when I was a teenager and had even done a few little projects with the then-cheap B-7971 tubes. After that I'd pretty much forgotten about Nixies until years later when I happened to run across a site selling Chronotronix (now Nocrotec) Nixie clocks.
We're talking about this B-7971, not the other one, which is a Chinese workhorse Boeing, which shuttles between Chengdu, Urumqi and Tianjin. Back in the day (in 1977), those B-7971 tubes cost 50 cents (US) each as surplus.
The Shoutbox idea really came together when I stumbled across something called The People's Cam on a site called indigo.org. There was a streaming webcam pointed at a CRT monitor. On the monitor was the old Flying Text screen saver à la Windows 98. Visitors could type a short message and see it appear on the screen saver. I decided to try to make my own version of the People's Cam using alphanumeric Nixies. 16 tubes sounded like a good size to shoot for, and also - since at the time I intended to control it with a PLC - 16 nicely matched the number of outputs per PLC output module. 8 tubes probably would have been adequate but I felt like why not go big "because I can".
In the mid-2000s I started gradually acquiring B-7971s as they turned up for sale online. Of course the price of the tubes had gone up drastically since the good old days. I accumulated my tubes from various sources at prices ranging from $35 to $65 per tube. Most of my tubes were bought from EBay sellers in the USA and Western Europe. The Russians never cloned this tube so they weren't available from the "usual suspects".
The Nixie Shoutbox is born
I built the Shoutbox over the course of several months, working on it part time. I had the circuit boards fabricated from my design files, and I had the glass top of the case manufactured by people who know how to work with glass, but aside from that I made everything myself. I programmed the original controller, which was an Allen-Bradly PLC-5. Running a Nixie Shoutbox is a rather unconventional application for a PLC, but it was a case of going with what I knew best at the time. Several years later I replaced the PLC with an Atmel microcontroller programmed in C. A series of construction photos can be found at eeberfest.net/gallery.php
Once the Shoutbox was built and tested I registered a domain, made a web page for it, pointed a camera at it and in 2008 I opened it up to the public. The web page allowed visitors to view the webcam stream and post text on the Nixie tubes. The software handled message queueing which made it possible for multiple visitors to post at the same time and hold conversations. I had created, in effect, a Nixie chat room. I decided to allow people to post anonymously with no registration required and see what would happen.
"Everything that does not kill you makes you stronger"
There wasn't much site traffic at first but eventually the word got out. My site was being discussed on Something Awful, Reddit, even 4chan, and the denizens of those sites came in droves. Messages were scrolling across the tubes day and night, mostly people spouting memes or insulting one another - typical Internet stuff. At one point I added some controls on the page that let visitors turn certain lights in the room on and off, so of course I then had strobing lights in my living room as visitors battled each other over whether the lights should be off or on. Naturally numerous visitors tried to break it so I was kept busy modifying code in the usual arms race to plug loopholes faster than the users could discover them.
Inviting the Internet into my living room like that was fun for quite a while but eventually it became tiresome. The site had grown to include multiple camera streams and it seemed like every day some camera or cable or capture card would fail and need attention. The traffic would get so heavy at times that all my upstream bandwidth was being consumed by video stream and I could barely use my own Internet connection. Remember, this was 2008 and 1Mbit upstream was considered awesome on a home connection.
The Shoutbox made a comeback - just for you guys
Finally after several years of running the Shoutbox site and basically having 4chan hanging out in my living room I got tired of it all and shut the site down. For this article I have brought the core feature of the site - the Shoutbox - back online for a limited time. Unforunately, that time is now past. I got sick of stumbling over wires draped through my living room, and while it is certainly nice to see old friends, the enjoyment is somewhat limited if that friend never sleeps, drops around at 3 in the morning to flick the lights on and off a few times, says a few profanities or non-sequiturs and then leaves without saying "thank you" or "excuse me".
To give you a little idea of how the Shoutbox was when it was still public, here is a short video of a screen capture of a couple of people playing around on it. For some reason I had the spotlights turned off that day. Probably they were just getting on my nerves a bit too much that day.
Some details for the technically curious
The electronics can be roughly divided into four sections: power, interface, control and tube drivers. The power section is split between the right and left metal-mesh "cages". In the right side cage are power transformers, a fuse and the connector for the mains cord. The smaller transformer steps the 120VAC mains down to 9VAC which is fed over to the left side cage where it is rectified, filtered and regulated to provide 5VDC for all the logic. The large transformer is a 1:1 isolation transformer: both its primary and secondary are 120VAC. While not strictly necessary this transformer isolates the 120VAC from earth ground, which greatly reduces the risk of spectacular smoke and sparks when probing around the circuitry with a grounded oscilloscope probe. It also decreases the odds of finger-poking onlookers getting a nasty shock, no matter how much they may deserve one.
The isolated 120VAC is fed over to the left side cage where it is rectified and then filtered by a couple of rather massive capacitors. This is how I obtain the high voltage needed to light the Nixie tubes. When 120V RMS is rectified and filtered the resulting voltage is 120 * √2 = 169VDC, which is perfect for Nixies. As long as the mains voltage is at least somewhat stable - and it is - this rather crudely derived high voltage is quite adequate for the application. Since someone is sure to wonder why I didn't use a boost converter instead, I will explain. With all 16 tubes lit the high voltage demand is 350mA. That's 60 watts of power. In 2007 I could not just go out and buy a 170V 60W boost converter and I'm not so sure I could even do that now in 2019. I did look into making my own boost circuit but quickly decided that SMPS design was well outside my skill set.
The rectifiers, 5V regulator and all filter capacitors are located in the left side cage on what I'll call the interface board. Also on the interface board are several connectors and some pull-up resistors. The Phoenix Euro-connectors along the rear edge of the board were originally for plugging in cables that ran to the original controller - a PLC with 2 16-bit output modules and an Ethernet "sidecar" module that sat on a shelf below the Shoutbox. The PLC output modules provided TTL open collector outputs, hence the need for the pull-up resistors.
The present controller, made in 2011, is based around a "naked" (non-Arduino) ATMega 328P microcontroller. Four 74HC595s function as an I/O expanders to give me the needed 32 outputs from 3 GPIO pins. More about that in a minute. A gadget called a Wiz110SR interfaces the ATMega's UART to Ethernet. It isn't a "real" network adapter but it's good enough for this application. It appears as a virtual serial port to PCs on the network. Aside from that there isn't much else on the controller board except a piezo beeper, a backup battery, a header to connect some buttons for setting the time, and Phoenix Euro-connectors along the rear edge of the board that mirror the connectors on the interface board. The controller board is designed to sit on top of the interface board. The boards are connected together with a sort of wiring harness as shown in the photo. It's not terribly elegant but it works!
The tube driver boards handle high voltage switching to all the tubes' cathodes with a whole lot of MPSA42 high voltage transistors. Additionally each tube board has 4 74373 8-bit latches configured as 2 16-bit latches. If I was doing it over today I'd probably use the more modern Supertex SIPO/latch/HV-driver combination chips instead of TTL latches and transistors, but in 2007 I did not know they existed. Encoding of characters into segment patterns is handled by the ATMega, not the tube driver boards. The tube boards are perhaps better called "buffer/driver boards", because they primarily latch and buffer data.
The ribbon cable that connects all 16 tube boards together and to the controller carries 15 Data lines that correspond to the 15 segments of the tubes, 16 Select lines that correspond to the 16 tubes, and one Go line that connects to the strobe pin of certain latches on each tube board. This sounds a bit like multiplexing but the display is NOT actually multiplexed - only the data is. This is why there are 2 sets of 16-bit latches on each board. One set of latches on every board, which I will call the "back" latches, listens to the 15 Data lines with its parallel data input pins. Each board's back latch's strobe pin is connected to one of the Select lines. A jumper on the board determines which Select line the board connects to: tube board 1 to Select line 1, tube board 2 to Select line 2, and so on. To update the display the controller will output the segment pattern for tube 1 and then fire Select line 1, which strobes the 15 bits of segment data for tube 1 into the board 1's back latch. Then it sets up the data for tube 2 and fires Select line 2, and continues the process all the way to tube 16.
At this point the back latches are filled with the new data but it isn't being displayed on the tubes yet. The tubes display the data that is stored in the second set of latches, which I'll call the "front" latches. This is where the Go line comes into play. Once the back latches are filled the controller will fire the Go line, which causes the data in all 16 tubes' back latches to be copied synchronously to the front latches and displayed. This way all tubes update simultaneously. Thus I get the signal count benefit of multiplexing (32 lines instead of an impossible 256 lines) without the flickering of multiplexing. For a device that was designed specifically to be on camera, multiplex flicker would have been totally unacceptable.
And that's basically it. To answer a few common questions: Yes, I do have a stash of spare B-78971s. No, I don't want to sell any, at least not at 2019 prices. No, I've never needed to tap into my stash. The Shoutbox has been running 24/7/365 for about 11-1/2 years now with no tube failures.