Recording IR remotes using inexpensive IR Receiver device

Many people asked me weather the Irdroid hardware modules support “learning” of infrared remote codes. The two modules (Irdroid v1.0 and Irdroid v2.0) have only IR transmit functionality for the moment. There are plenty of units available all over the Internet which offer the infrared codes recording functionality, they are compatible with LIRC , and can be purchased for relatively low cost depending on their features. Here I will present a very simple device that can be built in a minutes. It is a DCD Serial Device (RS-232 interface), it works with both LIRC (for linux) and Winlirc (for Windows). The device schematic consist of a quite few components and it is perfect for DIY fans.

Irdroid IR Receiver schematic

Irdroid IR Receiver schematic

The schematic consist of a standard 38khz IR receiver module, 3 diodes, 1 LED indication LED and 3 resistors . The communicates with a PC is via a RS-232 serial interface and all the components are on a very small PCB inside a standard DB-9 female serial connector. I  will not explain here how the hardware and / or software works. There are already plenty of explanations of the above schematic all over the Internet. The schematic is shown in order to demonstrate the simplicity of the device. I will focus on using the Device with winlirc as it is most commonly used with Windows and I am using it as well. Winlirc is responsible for processing the signals received by the device and it can also send signals to the device, so it is a transceiver module. The application “irrecord.exe” (part of the winlirc package) under windows is used to capture the infrared remote codes. The application “reads” the received signal from the serial port (in our case) and it tries to decode and store the signal into a file. Before using “irrecord” you need to choose the driver for a DCD serial device from winlirc configuration settings and select the serial port to which the device is attached to. Irrecord will try to identify the protocol of the received infrared signal and to decode it and store it in a LIRC configuration file, or if it is unknown protocol it can store the RAW codes in the file, so that they can be reproduced later. Irrecord is a command-line tool and you will need to type some command line  parameters as well in order to capture your remote codes.  

The IR receiver hardware works with a standard computer serial ports, it won’t work on a USB to RS-232 cables as these are not emulating the serial port with all its signal lines. For best result use a desktop PC with available free serial port in order to connect the IR receiver.

If you want to get a IR receiver module the cost is $12 and you can buy one from the Irdroid DIY Section.

The screenshots shows the winlirc configuration settings dialogue and the Irdroid IR receiver unit / schematic . From this dialogue you need to select the SerialDevice.dll driver for the Serial IR receiver. Then you need to click on driver setup in order to set the needed configuration settings foe the Serial IR Receiver. The screenshot shown on the right shows you the SerialReceiver driver configuration settings. You need to select the serial port number to which the device is attached. The baudrate is 115200 in most cases and you need to select DCD Receiver type as the Serial IR Receiver is a DCD type device.

IR Receiver device features

  • RS232 serial connection
  • DCD type device
  • Transmit and Receive functionality
  • 30 cm cable length
  • Works with all standard IR remotes
  • Compatible with LIRC & Winlirc

The application winlirc works with lirc configuration files and in combination with the serial IR receiver device can be used to control your IR equipment from your computer.

A full list of supported remotes and configuration files can be downloaded from If the remote that you are using is not in this list you can easily scan your remote using the Serial IR Receiver and generate a lirc configuration file by using the Irrecord.exe utility. The Irrecord utility is part of the winlirc package. It is a console tool and you need to type some command line parameters before you start the actual scan process.

The “irrecord.exe” command line syntax:

IRRecord.exe -d SerialDevice.dll ..\config.cfg

Then simply follow the onscreen instructions. If you know the protocol the remote uses, you can use one of the templates from here. This will make generating the config considerably easier. IRRecord will generate a config file that looks something like this.

If you want to use lots of remotes with the same receiver, you can just paste all the configs for those remotes into the same file, then load that file into WinLIRC.

The serial IR receiver can be used practically with any remote, it is inexpensive ($12) and easy for use.

You could purchase irdroid serial IR receiver from the DIY section below :


Comments are closed.