Imagine what it would have been like if there were Cable TV way back when this TV was new........


The World's First Nixie Tube Cable Box
...and Here's How it All Began....
by Spike Tsasmali, Lupine Systems
I love old TV's. Any old TV. I like restoring them to their original elegance. Whenever I see an old TV, I always stop and ask about it. I have been restoring old TV's for over 20 years now and have amounded a nice collection of American nostalgia. All these sets are nice but in today's modern times, their tuning capabilities are a bit out of date.
Oh you can connect the cable to a "balun", or matching transformer and then to the screw type antenna terminals, but you will only get channels 2-13. A cable box would be needed to get the higher channels.
Although adding a cable box sounds like a quick fix to the channel change problem, the look of a modern cable box just don't match the elegance of a genuine mahogany cabinet TV made in the 1940's or 1950's -- back when a TV set was more than just a TV set -- it was a piece of living room furniture. What I needed was something more, something old, something "tube type". So, since we here at Lupine Systems had already mastered the Nixie Tube Clock, I got to thinking....What if I combined a Nixie Tube clock with a cable box?
Would it work similar to the Scientific Atlanta boxes which display the time until you change channels....or would it have an additional set of tubes for the channel? And of course it would have to be remote control. So I got to digging through the data books, the junk box and the storage building, hunting for the right cabinet, some kind of tuner and an old hand unit.
To make the Nixie Tube Cable Box, I first had to figure out all the building blocks needed to complete the task. Here's what I came up with:
Adding Features
Let's tackle the Features issue first. This is because features will determine what kind of devices to use to create the cable box.
SYSCON, the System Controller
The Microchip Technology PIC17C42 was chosen for the SYSCON. Not for any real particular reason other than the fact that I had already written both the Nixie Clock routines for the 17C42, but I2C or "Inter-Integrated Circuit" (Philips Semiconductor) data protocol to run with the 17C42. Since most tuners are controlled over the I2C bus, I would have to use a SYSCON which could talk the I2C protocol. Although a lesser PIC would easily do the job, I had a nice supply of older "B" silicon 17C42's from the early 1990's in my stock. These chips have several factory defects (visit the Microchip Technology website for more details on the 17C42 REV B silicon errata), none of which would be an issue for the cable box project, but would pose a problem for other products manufactured by Lupine Systems.
Nixie Tube Display
The Nixie Tube display and driver network consists of ITT/SPC GNP-7 Nixie Tubes, MPS-A42 driver transistors and 74HCT374 Octal Latches, and is exactly the same as the network used on the Nixie Tube Clock, except it has an additional two tubes added for the channel display. This means adding an additional two 74HCT374 Octal Latches and 20 more MPS-A42 driver transistors to the old Nixie Clock network to provide enough outputs to drive the additional 20 segments. The SYSCON addresses the additional latches in the same manner as the Nixie Clock. Only two additional RAM locations were needed to add the extra displays and two port pins on the PIC.
Infrared Remote Control
There are over 100 different IR remote control protocols floating around out there. Which one to use? Well, it just so happens that I have one of those handy Universal Remote Control hand units in the junk box. Now, pick a protocol. One that is common enough that if I loose the hand unit, ANY Universal Remote would work. OK..so that narrows it down to about 10 different protocols...so I chose the NEC -03 protocol.
This protocol uses a 34-bit data transfer -- one START bit followed by 8 ID bits, the "compliment" of the ID bits, 8 data bits, the "compliment" of the data bits, then finally one STOP bit. All this information is sent using Pulse Width Modulation (PWM) at a IR carrier frequency of 33KHz.
The NEC -03 Protocol Demystified
I chose the NEC -03 Protocol because it is easy to implement and is very popular amongst home entertainment devices. That way I could always guarantee having a hand control in the event the one I had got lost.
Here's how the IR remote section works:
Data is transmitted from the hand unit to the IR detector in a series of "bursts" of IR light flashing at 33KHz. The length of the burst and the time between the bursts create PWM which is then decoded by the receiver's SYSCON.
This is the format of the IR signal:
START--ID BYTE--COMP ID BYTE--DATA--COMP DATA--STOP
A leader code, or START CONDITION is a 9mS burst followed by a 4.5mS space (dead air) before the beginning of the next burst (first bit of the ID code).
Following the START condition, 560uS bursts of IR at 33KHz representing digital 1's and 0's will follow in the following scheme:
A digital "0" is defined as a period of 1.125mS from the beginning of one burst to the beginning of the next burst, including the time of the burst. (This means that a digital "0" must be one 560uS burst followed by 565uS of "dead air".)
A digital 1 is defined as a period of 2.250mS from the beginning of one burst to the beginning of the next burst, including the time of the burst. (This means that a digital "1" must be one 560uS burst followed by 1.690mS of "dead air".)
A STOP bit consisting of a 4.5mS space (dead air) followed by a 9mS burst then a 9mS space (dead air) ends the data transmission.
The code transmitted will be a START bit followed by an 8-bit ID code followed by the compliment of the ID code, then 8 bits of data followed by the compliment of the 8 bits of data, followed by a STOP bit, resulting in a 34-bit data stream. The LSB of each datum is transmitted first.
The reason the ID bits and the data bits are accompanied by their compliments is for error detection. The sum of the "true" and the "compliment" data should be zero. If not, there has been an error in receiving the IR signal and the data may be corrupt and should be discarded.
In this protocol, the ID bits are intended to be used by the receiving product to "identify" the correct hand unit, just in case there are more than one device in a room using the same protocol. However, after playing around with several of these "universal remotes", the ID bits sent are usually the same no matter what version of the NEC -03 protocol is selected. So for all logical purposes, the ID bits and their compliments can be discarded. The 8 data bits and their compliments are the important bits, the STOP bit is simply used to "reset" the IR routines in the SYSCON so that it is ready to receive another command.
I figured out the commands for the following remote features:
Making a Nixie Tube Cable Box
| Channel Up | 0x01 |
| Channel Down | 0x02 |
| Volume Up | 0x04 |
| Volume Down | 0x05 |
| Mute | 0x0A |
| Previous Channel | 0x0B |
| Power ON/OFF | 0x0C |
| Number Keys | 0x1n (where n is the number pressed) |
Finally, to detect the IR signal, I chose to use a small Lite-ON IR detector module. These 3-pin "cans" come in a variety of frequencies (I need 33KHz for the NEC -03 protocol), fortunately I had one in my junk box rated at 33KHz.
Tuners !!!
TV tuners have always been much of a mystery to most people. But they are actually very simple to understand. There are two basic types of tuners used in today's TV sets. There are tuners which have direct composite video and audio outputs, and there are those which output the signal as a 45MHz IF signal. To keep the project simple, I went in search of a tuner with composite video and audio already built-in to the tuner itself. Although I could easily add the IF decoder section, it would be easier to have composite video and mono audio signals.
TV Tuner Basics
Here's what you need to know about TV tuners to make them run:
The tuner I chose to use is a Panasonic ENG2-series tuner with CVSD and mono-audio decoder built in. I chose this tuner because of it's ease of use, the fact that it uses the I2C bus, it uses the TDA5520 chip and outputs in CVSD and audio. It was also cheap. I bought a case of these nifty tuners for $25 (100 of them!)!! The only thing not included was a spec sheet. So I had to create one. One step at a time.
First, I disassembled one tuner to discover what kind of synthesizer chip it used. Then it was a fairly simple task of ohm-ing out the pins from the bottom of the tuner to their destinations on the synthesizer chip. Some of these pins go through supressor resistors, usually 100 ohm or less, but that did not stop me from discovering their function.
After about an hour, I knew what each and every pin on the tuner was for.

| 1 | +5v Digital |
| 2 | Vtun (+33v) |
| 3 | SCL (I2C Clock) |
| 4 | SDA (I2C Data) |
| 5 | SLAVE (I2C Address) |
| 6 | LOCK |
| 7 | SIF (Sound IF) OUT |
| 8 | +12v Analog |
| 9 | Audio Out |
| 10 | GROUND (Analog) |
| 11 | AFT IN |
| 12 | NO CONNECTION |
| 13 | Video Out |
| CASE | GROUND (A and D) |
Some of the pins I knew I didn't need to use. These pins are AFT IN, which is a control voltage for the Automatic Fine Tuning. When left open, it is always ON, which the way it should be. And the SIF or Sound IF OUT. This is for STEREO DECODER use, and since I was making a cable box for an antique TV with mono sound, I didn't need to include stereo. Two other pins, the LOCK output, which goes LOW when the synthesizer locks in on the desired frequency (and it only goes LOW for about 15uS) and the SLAVE Input because I found out that the I2C slave address 0xC2 always addresses the synthesizer chip.
The next hurdle was the +33v power supply. These tuners use the +33v as the "tuning voltage" so this supply needs to be as clean as possible, separate, isolated and not associated with any other circuit. Not having a whole lot of clean juice available, how to get a nice 33v was becoming a task. I solved this problem by using a Buck converter. A Buck converter makes use of the "flyback" from a small coil to boost the voltage upwards. Since I only needed 120uA (that's all!!) of 33v, then a tiny simple Buck converter could be built using a 555 timer configured as an astable pulse generator, a low-end NPN transistor and a couple of 100uH RF choke coils. A zener diode was also placed in reverse to the output for overvoltage protection "just in case" things started running wild. The converter runs at a frequency of about 15KHz so only a small amount of capacitance is needed to smooth out the AC ripple, and of course, a HF bypass capacitor (.1uF).


Area of PC Board Showing Buck Converter
The spec sheet for the TDA5520 is a HUGE pile of papers with very little "useful" data included. It provides the pinout of the chip, the voltages used by the chip and explains the functions of the internal registers, but it does NOT tell you HOW to set up the chip to synthesize any particular frequency, nor what it's BAND SELECT outputs actually do other than "toggle ON and OFF" when told to do so. So, with a wish and a prayer, I set out to figure out this chip ONE BYTE AT A TIME, loading each of it's registers with "good guess" values and writing down the results. I wrote a small program to run on my PICMaster Emulator to allow me to enter random I2C sub-addresses and data bytes. I then ran the program and began entering values until I saw some results. It did not take long to figure out what each band select bit does, and after monkeying with the divider bytes DB1 and DB2 for a while I stumbled upon Channel 7, our local FOX channel, clean and clear! Once one channel could be found, it would only be math to figure out the others.
Your guess is as good as mine why Philips left out such critical information as:
So to use this chip (and thus the whole tuner module), the first thing that has to be done is to set up the synthesizer. For the TDA5520 chip, this is done by loading several registers with data telling the chip to "do it's thing". First there is a "control" register, which has a few bits that turn the synthesizer on and off and some other mundane tasks. The chip also has two "divider" registers which are used to set the frequency division factor. Next, it has a register which contains bits to set what the reference divider (or step rate) will be, how much current to sink through the 33v supply and a few other "goodies". And finally, a register which is used to select what "band" to use. The bands are typically referred to as VHL for VHF LOW, VHH for VHF HIGH and UHF for UHF (duh!). There is one bit per band and the band is selected by setting the appropriate bit HIGH. If more than one bit is set HIGH, then the outcome is unpredictable since doing so will actually tell the rest of the tuner to try to synthesize more than one frequency at the same time.
Communication to the tuner is done via the I2C bus. A microcontroller, microcomputer or PC is necessary to talk to the tuner. Although the Spec Sheet makes a big deal about the SLAVE ADDRESS select pin, I found out that the SLAVE ADDRESS of 0xC2 will always address this chip. Since I was already using the PICMaster Emulator set up for the 17C42, and I had I2C routines running I was set to go!
| Chip Slave Address 0xC2 | |
| Sub-Address | Function |
| 00 | Divider Byte 1 (MSB) (DB1) |
| 01 | Divider Byte 2 (LSB) (DB2) |
| 02 | Control Byte |
| 03 | Band Select Byte (LSB only) |
I found out that all I needed to know before I could tune the TV was:
Band 1 tunes Channels 2-6 along with cable channels "4A", "(A-1)" through "(A-5)", "A" and "B".
Band 2 tunes Channels 7-13 along with cable channels "C" through "W" and "(W+1)" through "(W+11)".
Band 3 is not used for commercial TV although the synthesizer will create these frequencies. The base frequency is 0x7816.
Band 4 tunes UHF Channels 14-69 along with cable channels "(W+12)" through "(W+29).
The "base frequency" is the value used to calculate the divider bytes values. DB1 and DB2 values are calculated by multiplying the channel times the step rate (which is 0xC0) then adding the result to the base frequency.
The base frequency for Band 1 is 0x0B16.
The base frequency for Band 2 is 0x1656.
The base frequency for Band 4 is 0x3616.
So to calculate the values of DB1 and DB2 for Channel 9, I would first determine that Channel 9 is on Band 2, which has 0x1656 as the base frequency. Then multiply the STEP RATE (0xC0) times 9 (channel number) to get 0x06C0. Then add the base frequency of 0x1656 to get 0x1D16.
The value of DB1 is therefore 0x1D and the value of DB2 is 0x16.
The blatent formula for calculating the divider byte values is:
(base frequency)+{0xC0*(Channel Number)}
Now that I knew the values of DB1 and DB2, I was able to tune the TV!
All I had to do was:
The software in the SYSCON chip would then be programmed to calculate the DB1 and DB2 values from the base frequency lookup table for each channel, resulting in a complete tuning system.
RF Modulator
The next task was to come up with a good RF modulator to output the tuner video and audio back to Channel 3. After scrounging around on Ebay, I was able to scarf up a deal on 100 pieces of an ALPS RF modulator. This neat RF modulator was originally manufactured for VCR's and has an "antenna" input as well as an "RF OUT" connector. So another feature came to mind...what if the cable goes out? Could I switch to my antenna without changing around a bunch of wires? YES YES!! So now my neat and VERY CHEAP (less than a quarter each!) RF modulator would not only convert my cable box video and audio out back to Channel 3 but it would also serve as an RF switch!

The Story Behind The Case
The case I chose to enclose this project has been a friend for a long time. I received this case as a Christmas gift when I was 11 years old! Way back in 1974 Radio Shack sold these cases as "equipment enclosures", and they came with a solid aluminum front panel. Well over many years and lots of projects, I still have the one I was given as a boy! In the picture below, you can see where I used Bondo to seal up old holes from previous projects, then painted the once "NASA Blue" outer surfaces. A dark brown was chosen to blend in with the furniture of the TV, although a nice equipment grey would also have been a good choice. Although hard to tell, one of the front panel mounting screw holes was modified out of the case in a previous project so now only three of the four front panel screws can be used. The front aluminum panel is long gone and has been replaced with 1/8" smoked plexiglass.

Notice the row of 8 GNP-7 red coated Nixie tubes in the front. Just behind the tubes are the 80 MPS-A42 driver transistors. Behind the driver transistors are 10 74HCT374 Octal Latches used to latch the Nixie segment information. The tuner module fits snuggly against the inside right wall. SYSCON, a PIC17C42 is barely viewable just underneath the Power Supply board (on top) and under the TV Courtesy outlet. The RF Modulator is located on the back panel about center inline with the two voltage regulators on the Power Supply board. The Power Supply board provides +5v for the logic circuits and +12v for the analog circuits. The +200v circuit for the Nixie tubes cannot be seen in the photograph because it is located on the Main board and is underneath the Power Supply board. The small object between the six clock Nixies and the two Channel Nixies is the infrared detector.

Cable TV is connected to the box at the connector located at the top left corner. RF OUT to the TV is the centermost F-connector, and the ANTENNA input is just above the RF OUT connector. Holes in the rear panel to the left of the RF OUT connector allow access to the Ch3/Ch4 select switch and the Audio Tank tweak adjustment on the RF Modulator. VIDEO OUT and AUDIO OUT RCA jacks are mounted just to the right of the RF Modulator. Just underneath the Courtesy outlet a hole allows access to the VIDEO LEVEL adjustment potentiometer.
Putting It All Together
Now that I have solved all the major issues, it's time to build the World's First Nixie Tube Cable Box.
| Item | Quantity | Designators |
| 20pF AX CONF NPO | 2 | C10,C11 |
| .1uF AX CONF BYP | 8 | C3,C4,C5,C8,C12,C14,C16,C18 |
| .1/250v MYLAR | 2 | C9,C13 |
| .056uF MYLAR | 3 | C1,C6,C7 |
| 1uF/50v RAD AL ELEC | 1 | C15 |
| 10uF/16v RAD AL ELEC | 1 | C17 |
| 220uF/200v RAD AL ELEC | 1 | C2 |
| 68 OHM 1/4W | 1 | R85 |
| 100 OHM 1/8W | 2 | R16,R17 |
| 1K 1/8W | 72 | R1,R2,R5,R13,R14,R15,R18-R84 |
| 3.3K 1/4W | 8 | R7,R8,R9,R10,R11,R12,R90,R91 |
| 10K 1/8W | 3 | R86,R87,R88 |
| 47K 1/8W | 1 | R4 |
| 1M 1/4W | 1 | R3 |
| 1K Trim Pot | 1 | R78 |
| 1N4001 Diode | 2 | D1,D2 |
| 33V ZENER Diode | 1 | D3 |
| BRIDGE,1A 400V | 1 | Z1 |
| 2N3904 NPN Transistor | 2 | Q1,Q2 |
| 2N4401 NPN Transistor | 1 | Q3 |
| MPS-A42 200v Transistor | 63 | Q18-Q75 |
| 4 MHz CRYSTAL | 1 | Y1 |
| 100uH CONF CHOKE | 2 | L1,L2 |
| PIC17C42A | 1 | U1 |
| 74HCT374 | 8 | U2,U3,U4,U5,U6,U7,U8,U9 |
| Tuner, PANA ENG-2 | 1 | U10 |
| 555 TIMER | 1 | U11 |
| RF MODULATOR UNIT | 1 | U12 |
| IR DETECTOR, 33KHz | 1 | U13 |
| 120V CT ISOLATION TR | 1 | T1 |
| 3/4A SB 250V FUSE | 1 | FUSE |
| NIXIE TUBE, GNP7 | 8 | V1,V2,V3,V4,V5,V6,V7,V8 |
Parts List for Nixie Tube Cable Box Power Supply Board
Item Quantity Designators
10uF/16v RAD AL ELEC 1 C21
10uF/25v RAD AL ELEC 1 C22
2200uF/25v RAD AL ELEC 1 C19
6800uF/25v RAD AL ELEC 1 C20
7805 VOLTAGE REGULATOR 1 U15
7812 VOLTAGE REGULATOR 1 U16
BRIDGE, 1A 200v 2 Z2,Z3
12V DUAL TRANSFORMER 1 T2
HEATSINKS FOR U15,U16 2
A block diagram for the Nixie Tube Cable Box is shown below. The schematic diagram is too large to present here but can be downloaded in EasyTrax format by clicking the link above (all schematics provided by Lupine Systems are in EasyTrax format and are drafted on the 1 Mid Layer). The SYSCON PIC17C42 is at the heart of the system. The PIC is operating at 4MHz and clock is provided by crystal X1. Octal latches U2-U9 latch the segment data for the Nixie tubes from SYSCON. The outputs of the 74HCT374 latches then drive individual MPS-A42 transistors to drive the segments of the Nixie tubes.

555 timer U11 and transistor Q2 form the +33v Buck converter. Transistor Q1 is the 60Hz zero crossing detector and transistor Q3 is the Courtesy outlet relay driver. Transformer T1, bridge rectifier BR1 and filter capacitor C21 form the +200v power supply for the Nixie tubes.
The software integrates two aspects of the project into its code. First, it is a Nixie Tube Clock, and secondly, a cable box. This is done through the use of the PIC's Interrupt system. A 120Hz pulse from the zero crossing detector triggers an interrupt causing the PIC to update the time registers as well as the display latches. When not in interrupt, the PIC scans the input switches and IR detector and waits for a signal. If an infrared signal occurs, the PIC disables interrupts (to keep interrupts from interferring with the IR detection process) then processes the IR signal input. This creates a latency in the upkeep of the time (since the interrupts are OFF the timebase will not be able to tell the PIC to update the time registers). To correct for this latency, once the IR signal has been processed, the PIC then updates the time registers as if it were in interrupt, then waits for the next zero crossing before enabling interrupts again. The code latency during the IR routine is minimized to fit within one 120Hz period so there cannot be more than one lost/replaced update per IR detect cycle. If communication to the tuner via I2C is required to complete an IR command, the request to send data to the tuner flag bit is set so that the main task manager can perform the task once an interrupt has updated the time registers.
Since there are so many interconnects, I chose to draft a PC Board. The printed circuit layouts can be downloaded from the Lupine Systems Download Site or by Clicking Here. PC Board is drafted using EasyTrax and is also free to download.
Since space was limited inside the chosen cabinet and the Nixie tubes and support circuits take up so much room, I chose to design the low-voltage Power Supply on a separate board. The Power Supply is a separate board and must be downloaded separately from the Main Board by clicking the link above. The Main board is a double-sided board and the Power Supply is a single-sided board. Since the cable box will draw less than 1 amp of +5v and way less than 1 amp of +12v a simple linear power supply was used.

Buttons to operate the cable box without the remote are mounted on the top panel to the right side center. There are three buttons. The rightmost button is used to turn on and off the television through the Courtesy outlet. The center button changes the channel down, and the leftmost button changes the channel up.
Since I desired fewer buttons on the box, I shared the Time Set buttons with the Channel Up/Down buttons. This is acomplished by holding down the POWER (right most) button, then pressing the Channel Up to set the HOURS and the Channel Down to set the MINUTES. Releasing the POWER button will NOT turn off the TV! Only a down-up on the POWER button WITHOUT touching the Channel buttons will turn ON/OFF the TV.
After blowing the PC boards and assembling them, I first powered up the circuit outside the case for testing purposes. Once I made sure there were no wiring errors or other shorts/opens on the board, I then used the 1 Mid Layer (Legend Layer) printout as a bottom mounting hole template to drill the mounting holes for the Main Board. Then using a line of sight method, I marked the rear panel holes, drilled them, then patched the "old holes" with Bondo, then painted the cabinet. A front panel lens was cut from a sheet of scrap smoked plexiglass. The final project is shown in the photograph below.

Building Your Own
It is possible for you to build your own Nixie Tube Cable Box from the designs on this website. However, here are a few things you must think about before you begin:
The information given in this article should be enough for you to be able to salvage a tuner module from a damaged TV, or to use one that you have purchased from a surplus dealer or Ebay. As mentioned earlier, most of these tuners work about the same. But it's best if you find one that outputs CVSD/AUDIO rather than IF. Having to add the IF circuitry can be tricky, especially for the sound. Noise from the PIC and the Nixie circuitry can be a problem with some tuners and some IF sound chips. Just be aware that there are some tuners out there that are PAL (Phase Alternate-Line) video format (mainly used in Europe) and won't work in the United States. There are also a few that are SECAM (old Soviet system used by France and most of the ex-Communist countries), but you probably won't run into any of those except in "surplus". Be sure the tuner you use is NTSC (sometimes called 3NTSC which means 3.57MHz NTSC) and not Japanese NTSC (sometimes called 4NTSC which means 4.43MHz NTSC). If you stick a Japanese NTSC tuner in place of an American NTSC tuner, it will work, but you will only get half the picture and in black and white! This is because Japanese NTSC is non-interlaced video and only displays the first field of video whereas American NTSC is interlaced and displays two fields of video.
The PC Board Layouts for the cable box I built are FREE to download. You can also download EasyTrax for FREE. You will need to download and install EasyTrax before you can view the PC board layout files. Once installed, you can modify, delete, add or alter the layouts to fit the tuner, RF Modulator and Nixie tube you plan to use.
More Information
While experimenting with the tuner module, I discovered that these tuners will actually tune just about any frequency from 55MHz to about 1.4GHz, including FM radio, police band, fire department bands, aircraft, marine and public service radio bands. After playing around with the module for a while, I was able to add FM radio to the cable box! With a little more circuitry, FM STEREO can be achieved by adding a stereo decoder to the SIF output pin of the tuner (a chip like the TEA5582). JUST BE CAREFUL!! There are some "restricted" frequencies out there! Don't go to those frequencies!! Just don't do it!
Please note that this device does not decode, descramble, decipher or otherwise unencript scrambled cable channels, nor is it intended to do so. Any modifications to enable this project to defeat the cable system is illegal and is not endorsed or condoned by Lupine Systems.
The information contained in this article is intended for educational purposes only, and for the functional entertainment of the person or persons reading. It is not intended in any way to infringe upon the rights of cable TV operations or any component thereof. Lupine Systems recommends that anyone who builds and uses any device connected to a cable system first contact the cable system for permission to do so before connecting the device.
Back to the Lupine Systems Homepage
(C)2003 Lupine Systems. It's a WOLF Thing! (TM)
Lupine Systems Download Section
How to Make PC Boards
How to Use EasyTrax CAD Software