The TV-B-Gone flashlight build

——- Update #2 ——-

Group buy done, out of parts/PCBs. Getting ready to post the code/design files shortly.

——- UPDATE ———

I’m doing a group buy of parts - I’m selling LED/driver pairs, P60s and prebuilt lights. Information is in this post:

——— Original post ——-

First post!

I’ve been kicking around the idea of building a “TV-B-Gone” ( in a flashlight form factor. Basically, it’s a little handheld device that blasts out 100+ power-off codes for TV sets, that you can use to turn off pretty much any television set. There’s endless fun to be had with these:

There’s an open source/creative commons version available from Adafruit:

And I’ve created a reasonably high power (~2W peak) handheld version, using 8 infrared LEDs:

My handheld version works OK but is a bit expensive to make, and I’m not too happy with the optics - I’m constrained by the LEDs themselves, and their beam pattern is pretty horrible. It has a lot of spread and doesn’t have as much range as I hoped it would because of it.

After doing some research into LED flashlights, what’s crappy and what’s not, and learning about “P60” form factor and drivers etc… I’ve realized that it probably won’t be too difficult to make a flashlight based TV-B-Gone with more power, a good beam pattern and probably even less cost.

Here’s what I’ve got in mind:

- Starting with a cheap 1*18650 flashlight body (eg, Ultrafire WF-501B) that takes a P60 module.

  • Building a P60 module, with the following:
    — a high power infrared LED/heatsink/reflector
    — a modifed ATTiny13 + AMC7135 based driver.

On the driver, I’d pull the Tiny13 and replace it with a pin-compatible ATTiny85, graft on a crystal, move I/O pins around if required, and cross my fingers that the AMC7135 ICs can be enabled/disabled quickly enough to send a 38KHz IR carrier. If that doesn’t work, I’ll build a new driver from scratch.

On the LED… well, I don’t really know. I’ve got a few options:

(1) Buy something like this:
… take it apart, hope that it doesn’t have the infrared dice wired in series (thus the 8.4V requirement), pop my modified driver in and call it a day.
(2) Buy a raw LED:
… which is definitely drivable from a single 18650, mount it to a heatsink, eg:
… and cram it and my driver into some sort of P60 tube/reflector combo.

Unfortunately, I’ve hit the “I’m a noob at this” wall and don’t really know where to go forward from here - how to properly match LEDs/heatsinks/reflectors, what diameter heatsinks I should be looking for, etc. Anyone mind helping a noob out?

In return for any help I pledge that the end result - AVR software, a custom driver design if required, etc - will be fully open source and anyone will be able to build the end result.


Welcome to BLF! If you want to do it in a P60 host you would simply start with one of these.

This is basically the limit of my experience though, if you would like to get a premade IR drop in, Lighthound does sell them so the you would only need to replace the LED.

You mean the driver. :stuck_out_tongue:

Thanks - the top item looks good, and illuminationsupply seems like a pretty decent site. (DX is a bit sketchy…)

The second item looks much the same as the one on DX, LED itself looks the same (3 dies) and the same 8.4V upper voltage is there. Again, I’m wondering if the IR dies in that package are wired in series, which would explain the 3.x V minimum voltage.

If that’s the case, I s’pose I could find a 2*AA P60 body, use two 14500s and find an AVR controller that can run from 8.4V. Or if such things don’t exist, modify an AVR controller to add a voltage regulator for the AVR itself (or perhaps just accept the fact I’m probably building my own controller…)

2*AA P60 body would be hard to find, but you could use 2x CR123 in a 1*18650 body (or 2x 18650 with a extender).

I would just go for a L2P with a CR123 extender and then run 2 18500s in it. And yes, I did mean driver. ;)

OK, plan is coming together. After wondering how I was going to mount the discrete IR LED, I saw this picture and thought “aha!” - I’ll just glue the IR LED straight to the holder with Arctic Alumina.

So my ingredients are…


On the driver I have to replace the ATTiny13A with an ATTiny85, and add a crystal and a couple of capacitors to the card - the ‘stars’ on the back of the card are conveniently placed so I can solder those components straight on there without having to airwire anything.

The IR LED is rated for 1.2-2A - I’ll be driving it at 2800mA but at a <50% duty cycle (more like 20% sending TV codes) so I should be OK.

Fingers crossed that the 7135s can switch at 38KHz.

Interesting project.

Yes, AMC7135s are fast enough.

Now that I’ve made a $100 DX order, you’ve just made my day!

Merry Christmas and all that other good stuff.

Nice project, keep us updated!

I thought about the exact same thing a while ago, I am looking forward for more information.

But perhaps a p60 host is not perfect in terms of throw, what about a zoom to throw torch? Sk68 or so…

Okay. I’ll bite. What’s your intended use-case for this? IIRC, the original TBG-type devices were pranks that would toggle a nearby TV or bank of TVs (say, at a sports bar or a electronics store). With a high-powered IR LED and proper optics, you’re extending the range to perhaps 1000 feet. What’s the goal? To drive down random streets on Superbowl Sunday turning off people’s TVs from afar? Or perhaps driving down those streets during the day turning TVs on while the owners are at work? Or perhaps your neighbor has a rear projection TV or projector with a $150-$300 metal halide bulb that you wish to damage by toggling power on-and-off all day while the owner is work?

Seems there are lots of malicious (and, in that last example, arguably criminal) uses for such a device. I’m having difficulty envisioning a non-malicious use. Please enlighten me…

The goal is to use this for the exact same purpose as the original TV-B-Gone - mindless pranks. I don’t really have any specific justification for building the thing in a flashlight form factor, but here’s basically what I had in mind:

- increasing IR intensity (focus and power) increases my chances of getting a usable IR signal through an outdoor window - efficient household windows reflect most of the IR hitting them in order to prevent heat loss. This allows pranking from outdoors.

- Lots of IR power also means I should be able to fill a room with IR light - ideally I’d be able to set the thing on a table at a sports bar, pointed pretty much anywhere in the room, and get enough bounce/scatter for it to work on any TV in the room. Currently I have to hold and point my handheld gadget at the TV I want to turn off, which increases my chances of getting caught.

- If I do get caught, “dude, it’s a flashlight. I carry one with me all the time.”

  • Now that I’ve ordered parts, I can say this thing will cost 1/2 the price that the handheld gadget did and take a lot less time to put together.

Sure, it can probably be used for all sorts of terrible purposes, like burning out a HID projector lamp as you mentioned. But I won’t be doing that - I’ll be using this for mindless pranks mostly, and maybe getting even with an electronics or department store if they piss me off.

Wish I thought of that. A twist-to-zoom form factor with a few indexing marks made into it would be pretty nice. Maybe next time… I’ll see how the P60 works out for now.

Everything I come up with will be posted here, if others want to take it and mess with it - try different form factors etc, excellent - I’m all for others taking my crappy stuff and making it better :smiley: I have no idea how long DealExtreme’s free shipping takes to Canada, but updates to follow then.

On a completely unrelated topic, I’ve also ordered bits to build a XM-L flashlight in one of the same WF-501B bodies. I’ve decided to mod the driver (same AVR driver) with a 3-axis accelerometer, and have it work in such a way that you simply rotate the light when you’re holding it to adjust brightness - no modesetting or anything, and it remembers the last brightness it was at. Don’t know if this has been done already, but it should be a good bit of fun to implement.

That sounds awesome!

Parts are starting to come in.

DX was frustrating to order from - I paid for a bunch of stuff that appeared to be in stock, and surprise surprise, most of it wasn’t in stock. Ended up cancelling most of the order and placing a new one, just to have it happen all over again. I’ve got reflectors, LEDs, drivers and batteries so far. Still waiting on a flashlight body.

The P60 reflector housings are pretty crappy. There’s a ton of play when they’re threaded together, and there’s less space between the reflector and the pill’s LED mounting surface than I hoped, probably 1/2mm of space between the two when they’re fully screwed together. And you can’t unscrew them much because there’s not much thread to begin with. I originally planned on using a PCB for the LED, but I’ll probably have to solder the LED straight to the pill and use a ring of kapton tape to insulate the wires from the pill, and maybe bore out the LED hole in the reflector.

Wish I had access to a lathe, I’d make a new copper pill for the reflector with more depth and better LED heatsinking.

Things are looking good on the driver - the 2800mA driver appears to be an authentic Nanjg 105C. I’m replacing the narrow-SOIC ATTiny13A with a wide-SOIC ATTiny85V, which means bending the leads on the new part into “J-leads” but it fits. Also, a 4x2mm ceramic resonator solders perfectly to the mode stars on the back. Code’s 100% done for it.

I’ve yanked the IR filter out of an old point-n-shoot digital camera, which looks like it’ll do the job for setting up the beam.

Updates to follow as everything else comes in.

So, this is really just to piss off other people who you don't know and don't care about, just to entertain yourself, because you're bored? Is that about the gist of it?

Sounds like fun. Hope someone you do it to, is able to catch you at it.

Love to see pictures. Turning a attiny85 into j leads is a good idea. :bigsmile:

Since everything is free shipping on dx it helps to buy each item in a separate order, annoying for a bunch of items but that way one delayed item doesn’t hold up others.

I actually did the J-lead thing in my day job - there was a shortage of SPI flash a few years back, and we found ourselves unable to buy a 16Mbit flash in a narrow SOIC. We ended up J-leading wide SOICs and hand-soldering them on a couple hundred boards.

Well, the original idea was conceived when a bunch of us were at a local "sports themed" restaurant. The table next to us had a few hooligans who were watching soccer on TV and cheering whenever anything would happen, being obnoxiously loud, being inappropriate with the waitress and generally being inconsiderate jackasses. I thought "man, I wish I had a remote for that TV - I'd turn it off right before something interesting happens." So I did some digging, and found the TV-B-Gone project had been done - and was open source!

I haven't found myself in the same situation since I built my pocket one. But I will admit using it a few times - mostly turning off 'decorative' TVs in storefronts, and a few TVs scattered through department stores with product ads on loop.

edit: But yes, I'll confess that this build is the result of boredom :)

Starting to come together - only part I’m missing right now is teflon wire.

I did order PCBs to mount the IR LED on, but these IR LEDs are quite tall and with the LED sitting on top of the PCB, the P60 reflector wouldn’t screw together. So I decided to solder the LED directly to the pill - I tinned the LED and pill, got the pill hot (the solder blob sticking off from the LED is where I had my iron placed to heat the pill) and placed the LED with tweezers. Result:

The Kapton tape is there for insulation for the wires, I’ll cut a few more pieces and cram them in there. I’ll probably pot everything when I’m done to make sure nothing moves.

Installed the Tiny85V microcontroller in place of the Tiny13A. There was plenty of pad available so I bent the leads straight down instead of J-leading, this makes attaching programming clips easier.

And the ceramic resonator’s added to the bottom, to make the AVR frequency more accurate. This is a 4MHz, 4.5mm resonator with built-in capacitors, the center lead (piece of a resistor lead) going to the ground ring is for those capacitors, and the outer leads attach pretty much perfectly to the stars.

Star #2 will be used for NA/EU mode selection. Leaving this star alone makes the flashlight transmit North American TV turn-off codes, connecting it to the ground ring or the first star makes the flashlight transmit EU codes.

I’m currently proofing the software on my AVR Dragon, once I’m happy with it there I’ll slap the light together and cross my fingers.