My boss brought me a gift from Mexico City a couple of years ago — thanks, Brian? Karen? Whoever it was? — and I’ve finally gotten around to doing something with it.
The key ingredients — the little TV chassis and an old i9000 Android phone — are things I already had kicking around, and were perfect matches for each other, so this project was just a matter of filling in the gaps.
I considered getting the fake buttons on the TV working but that idea wasn’t satisfying.
I hit on the idea of making an outlandishly large remote control for the tiny TV and this concept stuck. Main Electronics had a box of identical, shiny “new old stock” remote controls that it’s probably been warehousing for most of 30 years, so I picked up one of these for $2.00.
The big consideration was how to interface the remote control to the phone. I considered using USB OTG, WiFi, and/or writing some custom software on the phone, but in the end I googled the i9000’s Bluetooth support and found that it was decent, though old, and would happily accept a keyboard or mouse.
Further googling turned up AdaFruit’s BlueFruit product. They have a few variations and I was careful to choose the non-LE version because my phone doesn’t support it.
BlueFruit is great and very easy to use, but one thing it’s lacking is support for matrix (row/column) keypads. The remote control had one of these and I didn’t feel like rebuilding the keypad too, so this necessitated another microcontroller.
I’ve been having fun building things with bare-bones ATMega328 chips. This is the same chip as the Arduino uses, but pulled from the board and configured to use its own internal clock source. Building things this way results in an impossibly small parts list:
(Note: This is NOT the exact circuit I used — the remote keypad had a different row/column layout, but the concept is the same.)
That’s right, not a single component beyond the necessities. A keypad, a battery, the controller chip, and the BlueFruit board. The BlueFruit itself accepts a 3-16V power source and includes a 3V regulated output that’s usable for the ATMega328, permitting me to power it from the remote control’s stock 9V battery compartment.
The source code (posted on github.com) is very nearly trivial. I used the Keypad library for Arduino and translated keypresses into mouse and keyboard commands for the Bluefruit using the serial interface.
I’d like to refine the keys I’ve chosen and possibly make a new template for the remote control button labels, but for now, it works!
Categorized as: Uncategorized