TV-B-Gone_JeonLab power source

As same as Adafruit’s original TV-B-Gone kit, my modified TV-B-Gone_JeonLab accepts any DC power source within 3-5V. The micro-controller, ATtiny85V, runs within 1.8-5.5V, but the IR LEDs consumes more power than the micro-controller, you need to keep the source voltage at least 3V.

Adafruit includes 2 AA battery holder in their kit, but I will not include any battery holder or connector in my kit in order to give more flexibility of choice of power source.  As long as the voltage of the source is within 3-5.5V, any battery or supercap can be used.  For example, 2-3 AA or AAA alkaline batteries, 3-4 rechargeable batteries like NiCd or NiMH, Li-ion (or Li-PO) rechargeable batteries or 2 of 2.5V (0r 2.7V) supercap (at least 10F).

As I mentioned a few times before, I like supercaps. Even though they can not hold much charge compared to batteries, they can be charged quickly (less than a minute) through USB or 5V wall adapter and small and light.  So I decided to attach two supercaps to my TV-B-Gone_JeonLab, but I wanted to compare the sizes of 4 and 2 AA battery holder and AAA batteries.

TV-B-Gone_JeonLab size_4AA

TV-B-Gone_JeonLab size_2AA

TV-B-Gone_JeonLab size 3AAA & 1A

The actual size of my modified PCB is slightly smaller than Adafruit’s which fits nicely at the back of 2 AA battery holder. Anyway, I figured someone would be interested in having supercaps as a power source and here is how I did.

First thing I did was to attach a male header a guide (plastic piece on one side) for assuring correct polarity of connection.

connector male header

But this one was too tall compared to the other components.
connector male header before cut

So I cut the plastic guide and pins a little bit.
connector male header after cut

Using a small piece of double sided tap with foam two supercaps (2.5V, 10F) were attached to the bottom of the PCB and soldered in series together.
TV-B-Gone_JeonLab supercap soldered

TV-B-Gone_JeonLab sideview with supercap

In order for ensuring the supercaps in place securely, a thin cable tie was used.
TV-B-Gone_JeonLab top view cable tied

TV-B-Gone_JeonLab cable tied bottom

Now it’s time to make the USB cable connector. I cut one of those USB cable found from my junk box.
USB cable wires

And attached female connector to the red (+) and black (-) wires of the USB cable.
USB cable power wires red and black

female connector before finishing

When you insert those spring pins in the connector housing, make sure the stopper to be inserted all the way in until it makes click sound (blue arrows in the picture below).
female connector assembled_click

Finished with a heat shrink tube.
female connector shrink tubed

Charging from my laptop computer.
TV-B-Gone_JeonLab with supercap USB charging

Look how small it is in my hand.
TV-B-Gone_JeonLab size in hand

And it works!!
TV-B-Gone_JeonLab_supercap in hand

With one full charge (about one minute), I could turn one of my TVs on and off more than 40 times from about 6.5m (21 feet) away. Of course I used STOP button right after it turned on (or off) the TV. It does save power!

If you want to buy the kit (without supercap or battery holder), PCB, or firmware loaded ATtiny85V or any combination, email me for a quote.

Finally “TV-B-Gone JeonLab mod” is assembled!

Finally, the PCBs (revised) I ordered for the TV-B-Gone JeonLab mod have arrived. It’s always exciting to see actually fabricated PCBs I designed. It was not an exception this time. As I mentioned before, I made a couple of mistakes and had to order the revised one. Which means that the new PCB itself doesn’t look different from the faulty one, but it did look different. Funny.

For those who don’t have a clue what I’m talking about, please take look at my previous post.

Anyway, I quickly started making one and wanted to share the procedure and brief test results.

Here is the look of the PCB.
TV-B-Gone_JeonLab_PCB top-bottom

As you may have noticed from above picture of the PCB, it is “universal” version meaning it has a region (NA-North American models, EU-European models) selection switch.

First thing I did was to solder a 8-DIP socket for the ATtiny85V chip.
8DIP socket on TV-B-Gone Jeonlab PCB

The ATtiny85V chip is flashed with my modification from the Adafruit’s firmware v1.2 as below.

// exit do loop if REGIONSWITCH is pressed
 if ((region == US && !(PINB & _BV(REGIONSWITCH)))
|| (region == EU && (PINB & _BV(REGIONSWITCH)))) break;// delay 100 milliseconds before transmitting next POWER code (it was 250ms, but found 100ms works fine and faster)

Before assembling it fully, in order to check whether or not the ATtiny85V chip was flashed correctly, the indicator LED (green or red, I chose green), an 8MHz ceramic resonator, and a 1k ohm resistor for the LED were soldered first.  With my favorite power source (two 10F super-caps, 5V, USB charged), I checked the LED was blinking as below and it worked fine.
assembling TV-B-Gone_JeonLab: ATtiny85V and indicator LED check

Some photos after fully assembled:
assembled TV-B-Gone_JeonLab 1

assembled TV-B-Gone_JeonLab

components of TV-B-Gone_JeonLab

Further test results and assembly instruction will be posted soon.

If you want to buy the PCB, the ATtiny85V with JeonLab mod firmware, or a full kit, email me.


TV-B-Gone mod for battery saving and region/range selection

TV-B-Gone is a small gadget that can turn on and off virtually any TV in the world developed and sold as a kit by Adafruit. They also provide the source code and compiled firmware under Creative Common Share Alike license.
I would like to thank original developers at Adafruit for this great work and sharing ideas.

At first, I downloaded the firmware v1.1 and flashed an ATtiny85-20 and made it with only one transistor and two wide angle IR LEDs with two supercaps as shown below. The switch is connected to the supercap + so it will beam only when you press the button.
simple TV-B-Gone with supercaps

It worked fine, but the problem was it drained the supercaps too quickly.  The first reason is, of course, low capacity (compared to batteries) of the supercaps, but there are other reasons, too. I didn’t have a resonator at 8MHz, so I burned the oscillator selection  fuse bit of the ATtiny85-20 as internal 8MHz.  The internal oscillator has benefits of omitting an external component and programmable, but there are serious down side; its frequency can be unstable and varies depending on the temperature and power supply, AND it consumes more power at high frequency settings.

I also tried v1.2 on a tiny bread board as shown below.

TV-B-Gone on breadboard

I haven’t taken a picture, but on the breadboard shown above, I added a 8MHz ceramic resonator and uploaded v1.2 firmware on an ATtiny85V-10 and found it can last double the time. One full cycle of pulsing all the codes takes a little less than a minute and with this latest testing configuration, more than 30 times of full cycle worked with 2 supercaps before the voltage dropped below 1.7V (two in series).

I have thought about to turn off the device before the full cycle finished. I thought about to add a power switch but that wasn’t very attractive to me.

A couple days ago, I suddenly got a good idea to utilize the Region Detection pin6. Once the program detects the region from the level of pin 6 (float (internal pull-up): US, pull-down: EU), it is not used until all the code pulsing is finished. So, in US mode for example, after it started pulsing and when you want to stop it, forcing the pin6 to ground will exit the do loop  in software and the device will go sleep. I tested both US and EU mode with modified code and worked fine. This way, you can save battery.

Here is the schematic for the US version. I also added a slide switch to select IR LEDs between 2 wide but short ones and 1 narrow but long beam LED.

TV-B-Gone JeonLab Mod-US

And EU version:

TV-B-Gone JeonLab Mod-EU

If you want to have both in hand like me, you can use following design with a DPDT slide switch to change region.

TV-B-Gone JeonLab Mod-Uni

More updates will be followed.

If you want to buy an ATtiny85v-10 chip with this modified firmware loaded, send me an email with your location.  It will be $5.00 + shipping.

The full kit will be ready soon, too.