Intro - Infrared Remote Control Coding Schemes

Author: Dirk Uffmann (Munich, Germany)

Original version published: June 13, 2008
Last update: August 1st, 2008

The intention of this article is to provide support for everyone who intends to use his commercial TV remote control for his fischertechnik models. A typical application would be a model car driven by dc motors which are controlled in speed and direction by the IR remote. The presented solution here is a self-made substitute for the original fischertechnik IR Control Set part no. 30344 (see picture on the right side).

Besides the remote control unit which functions as the sender of the infrared signals, also a receiver is needed, in this case a microcontroller board equipped with an infrared receiver. Such boards are typically used for automatic control of mobile or other robots.

Basically all commercially available infrared remote controls send a modulated light burst, typically the modulation frequency is between 36 and 60 kHz. For an overview you may have a look on these articles:

Overview and Pages on IR Coding Schemes RC-5, REC-80, RECS-80, etc.

Powerpoint Presentation with Overview on Circuits and Coding Schemes

Article on RC-5 and RECS-80 Coding Scheme

Article with Introduction on IR Coding Schemes

Typically you do not know which modulation frequency and which coding scheme your infrared remote control is using. So the first experimental step is to find out. One possibility to do this is described here:

Analyzing IR Remote Control

This method uses a self-made "logic analyzer" on the parallel port of a PC described here:

Logic Analyzer

On the next pages linked in the navigation menu (top left) I have described all information I have found out about the IR remote controls I own myself for: In case you find out that your infrared remote control uses RC-5 or REC-80 coding, you may download and use my C-code and header files on the next pages (see the navigation menu on the left side at the top). I have developed this software using the Gnu C-Compiler GCC under WinAVR. It is interrupt based and runs on an Atmel AVR microcontroller ATMEGA16: The hardware uses an IR receiver SFH5110-38 directly connected to the external interrupt pin INT2 of the AVR microcontroller ATMEGA16 (PinB2). For a description of the hardware see:

Board with AVR ATMEGA16

With this board you will be able to control up to 4 dc motors in both directions including speed control from 0-100%. Here you see a picture of the used hardware for receiving and decoding the infrared remote signals:





Top of Page