Objective/Customer requirements:

To design a device that can capture IR (Infrared) signals from IR Remote. The device should be capable of transmitting the captured IR signals to Universal IR remote. The other functionalities that should be implemented:

  • Software Data Logging of the Captured Signals
  • USB Compatibility
  • Compatibility for RC5 protocol and Samsung TV remote

The device should be made with low cost and easily available components so that it can be easily replicated at customer end.

The Application Software should be capable of transferring previously stored signal from the database to device hardware. Once the hardware receives the IR signal from software, it can transmit that signal to Universal/Programmable IR remote.

From the Customer perspective, the aim behind designing this device was to enable a user to program the buttons of universal remote with different functionalities taken from different IR remotes. In the end, a single universal remote is required to control different appliances.

Hardware Solution :

The controlling hardware of the device is Atmega16 micro controller that operates on 12 MHz clock. It is a low power, 8-Bit micro controller with four I/O ports. Its features and capabilities meet the hardware/software requirements:

  • 16kBytes of Flash – meets firmware program size
  • 12 MHz Clock – appropriate for IR pulse measurement
  • 512 Bytes of EEPROM – Storing useful calibration data
  • Sleep Modes – Decreasing power consumption

The captured IR signals are stored in Volatile Memory of the micro controller. The Interrupt feature of the micro controller was used to interface the Infrared Receiver and capture digital signal. Hardware buttons and indication LEDs were used to provide a simple User Interface for the device.


Technologies used:

  • RC5 Protocol and Samsung TV IR remote decoding
  • RS232 Protocol for Serial Data Communication
  • Atmega Firmware programming


The firmware for the controller was designed using High-Level Language, Embedded C. The functions of the firmware were:

  • To calculate the received IR Pulse Count and Width
  • Store the data in volatile memory
  • Generate IR pulses
  • Controlling Buttons and LEDs
  • Data Communication with Application Software

An Application Software was also developed to log the captured data on Excel Sheet. The software also provides Graphical Representation of IR signals.

  • Programming language – C#, Dot Net
  • Database – Microsoft Excel, XML
  • Development Tool – Visual Studio
  • Operating System – Windows