TV-b-gone clone

There’s no better tool for making mild mischief than the tvbgone. This handy little device uses two IR LEDs to transmit the turn-off codes for most major tv models in rapid succession. I followed the “$3.50 DIY TV-B-Gone” instructible for this project.

The circuit design is fairly simple. When turned on, the ATTiny85 starts transmitting the codes on pins 1 and 2, which drives two LEDs (narrow and wide beam) through a 2N2222 NPN transistor. Pin 3 lights up the green status LED after each code. An external 8MHz resonator guarantees that the carrier frequency of the signal is accurate enough for the TV to detect. The decoupling capacitor and current limiting resistors were chosen based on a combination of the values given in the tutorial and the proximity of different parts to my workstation. Since pushbuttons are surprisingly expensive, I salvaged one from an old alarm clock. I also decided to go with the AA clips since I don’t usually have coin cells lying around.

I flashed the microcontroller with the hex file provided by the Adafruit tvbgone kit using an Arduino mega as an ISP. One interesting part of the code is that there are too many turn-off codes to hold in EEPROM, so they’re held in the flash program memory instead. The program then uses the “modified” parts of the AVR modified Harvard architecture to load the codes into memory and transmit them one by one.

The assembly was a bit of a headache since I haven’t picked up a soldering iron in a few years, but I managed to pull it off. The layout shown in the instructible worked well.

And it works! At least on my TV.

TV-b-gone 1 TV-b-gone 2