[Emilio Ficara] dropped us a line recently about his efforts to drag his television and receiver kicking and screaming into the modern era. His TV is old enough that it needs an external tuner, which means it requires two separate remotes to properly channel surf. He wanted to simplify the situation, and figured that while he was at it he might as well make the whole thing controllable over WiFi.
To begin the project, [Emilio] had to capture the IR signals from the two remotes he wanted to emulate. He put together a quick little IR receiver out of parts he had in the junk bin which would connect up to his computer’s microphone port. He then used an open source IR protocol analyzer to capture the codes and decode them into hex values.
As a proof of concept he came up with a little device that combines an ESP-01 with an ATmega88. The ESP-01 runs a minimal web server that receives hex codes as URL query strings. These hex codes are then interpreted by the ATmega88 and sent out over the IR LED. [Emilio] notes that driving the IR LED directly off of the ATmega pin results in fairly low range of around one meter, but that’s good enough for his purposes. If you want to drive the IR LED with more power, you’ll need to add a transistor to do the switching.

Now that he can decode the signals from his original remotes and transmit them over WiFi via his bridge device, he has all the groundwork he needs to come up with a streamlined home entertainment controller. A native application for his smartphone or perhaps a minimal web interface is the last piece of the puzzle.
This project reminds us of a similar attempt at controlling legacy IR devices from a smartphone via Bluetooth. If you’re looking for more information about wrangling IR signals from your microcontroller, this primer from 2013 is still a great look at the subject.