IR Translator Makes Truly Universal Remote

Universal remotes are a handy tool to have around if you have many devices that would all otherwise have their own remote controls. Merging them all into a single device leads to less clutter and less frustration, but they are often not truly “universal” as some of them may not support every infrared device that has ever been built. If you’re in a situation like that it’s possible to build a truly universal remote instead, provided you have a microcontroller and a few infrared LEDs on hand.

This was the situation that [Matt] found himself in when his Amazon Fire TV equipment control feature didn’t support his model of speakers. To get around this he programmed an Arduino to essentially translate the IR codes from the remote and output a compatible set of codes to the speakers.This requires both an IR photodiode and an IR LED but little else other than the codes for the remote and the equipment in question. With that all set up and programmed into the Aruino, [Matt]’s remote is one step closer to being truly “universal”.

While [Matt] was able to make use of existing codes in the Arduino library, it is also possible to capture the codes required manually by pointing a remote at a photodiode and programming a microcontroller to capture the codes that you need. [Matt] used a Raspberry Pi to do this when debugging this project, but we’ve also seen this method used with a similar build which uses an ESP8266 to control an air conditioner via its infrared remote control capabilities.

18 thoughts on “IR Translator Makes Truly Universal Remote

  1. Great project! I worked on a similar setup with a ESP32 which recorded the IR codes to a firebase store. I built a web app that i could use to control the remote and fire the recorded IR codes. It worked well but sometimes recording IR commands was finicky and this code might come in handy to improve the recording of commands. I can see a use case where having a physical remote like in this setup would be useful.

  2. This is more of an IR Repeater. Done this a lot in the AV world. However this has a twist, he is making the Nano receive a code and outputs a different code.

    I’ve been working on my own universal remote to control my shop with since I have a bunch of TVs and Audio equipment. Problem is I keep over engineering it and would be nice to use in Home Assistant as well. Instead of it Inputting a IR code set from the remote to a Hub I want it to connect to a Hub via WiFi and then the Hub outputs the IR code set. Kinda like how the URC MX Home Pro series works.

  3. The response he got from the speaker manufacturer made me laugh:

    Edifier support said “Our remotes use custom IR codes that can not be inputted into a universal remote”. And, “information about the IR code is not open to the public” (from his Git)

  4. Cool proyect i made something similar because I have a tv that loss the stored channels al least once a week. I made an automatic remote that can store the buttons pressed in the tv remote and then repeat the secuence, so i resintonize the tv and arrange the chanels once and now every time the tv lost the channels i use the automatic remote.

  5. Search for the old “JP1 Remotes” They are universal remote control that were reverse engineered.
    With the addon program, you can program the remote (EEPROM) via I2C. you can assign all the keys on the remote, select the carrier frequency, bit pattern, mark/space. Unfortunately they sort of disappeared off the market.

    I have captured IR from old Chinese clone Xbox remote (non-standard encoding) with a logic analyzer to come up with the programming. I have even fix the mark/space ratio to improve on the distance as IR receiver have lousy rise time.

  6. What am I missing? There are universal remote codes all over the internet. Most universal remotes also have a “learn” feature for oddball devices that aren’t on the list, or new devices that haven’t been added yet. Point the unknown remote at the Universal remotes receiver, store the command, label it. Now take the batteries out of your Fire TV remote and forget it in a drawer somewhere.
    I get that this is a “I did it myself” thing, but a Fire TV remote is a pretty limited feature remote. I just saw a used Harmony 900 remote listed for not much more than he spent on this hardware, plus there’s no wait on shipping from China. And you get a full color GUI on the remote itself, and free PC software to setup macros with multiple devices.
    Yeah, now I’m “That guy”. Yes, it’s a hack. Yes this is “Hack-a-day”‘, not “Buy-a-prebuilt-solution-a-day”. But I just see this one as a pointless endeavor. To me, it’s just like paying for some parts to build a crystal radio set. You might learn a little building it, but in the end, time and money could’ve been spent better elsewhere, and I wouldn’t want to watch a video about it unless it’s adding some intriguing new feature or technique.

    And you hippies get off my lawn, now!

    1. I have a Chromecast remote that controls everything, except my projector. So the idea is that I would set up my Chromecast remote to send an IR code for a standard Tv on/off code, which this device would translate into something my projector understands as on/off.

      The Chromecast remote is a dual bluetooth / IR device, and no universal IR remote will do both IR and bluetooth, so using the IR translator allows me to do everything with the Chromecast remote.

    2. I made my own version of this project a few years ago, with a Samsung TV remote controlling a Yamaha soundbar. I was able to use one of the unused keys (the red ‘A’ key, in case anyone is interested) to turn the soundbar power on and off. One of the few projects I followed through all the way to completion, including packaging it nicely in an old battery charger housing.

      Could I have done it with a universal remote? Perhaps. But I wanted most of all to continue to use the Samsung remote.

      Now I might revisit it, to power it via USB from the TV, and add the power code for the soundbar at boot time.

  7. Back when I worked a lot of IR remotes, I kinda drafted a low-overhead protocol to be able to transfer whatever IR code, with modulation and timing, over either a simple serial or ethernet connection. But being a software guy I didn’t realize how the difficult part of IR is to receive all modulation frequencies at once. So the project ended up in the drawer when I realized (But I learnt a lot about different IR protocols in the process).

    Anyway, I still have an affection for good old IR, you don’t need to tell your remote what room you’re in, just point and shoot. But I can of course also see the advantages of radio based control.

  8. I have a related project in my “I’ll get to it… someday” queue. I have six FireTV devices, two 4K Firesticks, one Insignia FireTV Edition TV, and one Amazon FireTV Edition TV. The remotes for the sticks have a built-in IR emitter and can be set to control older A/V receivers even though the sticks themselves are controlled with RF. When I bought the first FireTV Edition set I was confounded to discover that the almost identical-looking remotes don’t have the IR feature, so my “vintage” Sony 5.1 Surround receiver has to have the volume set with a second Harmony remote, which is not particularly convenient.

    My eventual plan is to use an Arduino Nano clone to read the HDMI-CEC from the TV and output suitable IR for the A/V receiver.

Leave a Reply

Please be kind and respectful to help make the comments section excellent. (Comment Policy)

This site uses Akismet to reduce spam. Learn how your comment data is processed.