Introduction: Universal Remote Control

About: 4D Makers is a group of curious engineers and enthusiasts who finds great satisfaction in creating and building anything from electronics.

The Universal Infrared (IR) Remote Controller can control any appliance that uses IR communication for remote operation. This remote controller uses the gen4-uLCD-35DCT as the main interface for sending IR commands. This project is highly customizable for use on any appliance as long as it uses IR control

Step 1: Build


  • gen4-uLCD-35DCT-CLB
  • gen4-PA and FFC Cable
  • uSD Card
  • uUSB Cable
  • Jumper Wires
  • 5 V power supply
  • Arduino Pro Micro 5V 16 MHz
  • KY-005 IR Transmitter Module

Build the components as shown in the diagram.

Step 2: Program

  1. Copy the IRremote folder to the Arduino IDE’s library folder
  2. Open the project code for the Arduino microcontroller using the Arduino IDE.
  3. If the desired remote controller is using an unknown transmission protocol, you may also add their raw IR code that can be derived by using the IRrecvDemo example provided by the IRremote library and use any IR receiver module for decoding their raw commands.
  4. In order for the Arduino program to compile properly with the provided raw IR commands, data can be written directly to the flash memory upon compilation as shown below.
  5. In order to utilize the raw codes for transmission, the following must be done to read the raw code stored in the flash memory. Additional case statements can also be added for more command interface. Some appliances may require multiple consecutive command transmission, this can be done by just resending the same code commands multiple times as shown below. Open the project code for the display using the Workshop 4 IDE. This project uses the Visi-Genie Environment.
  6. You can modify the properties of the objects and form using the object inspector.
  7. The universal remote control can control even more appliances by adding more button(s) to add more functionality. Use the widget ribbon to add the type of button(s) you need.
  8. In order to use the added button with the host(Arduino Uno), make sure to change the Event Handler under events of the object into “Report Message” or another “Magic Event” depending on its usage.
  9. Click on the “Compile” button.Note: This step could be skipped. However, compiling is essential for debugging purposes.
  10. Connect the display to the PC. Make sure that you are connected to the right port. Red Button indicates that the device is not connected, Blue Button indicates that the device is connected to the right port.
  11. Go back to “Home” tab. This time, click on the “(Build) Copy/Load” button.
  12. Workshop 4 will prompt you to select a drive to copy the image files to a uSD Card. After selecting the correct drive, click OK.
  13. When the micro SD card is not yet inserted, this message will appear on your gen4 Display: "DRIVE NOT MOUNTED..."After inserting your micro SD card the GUI shown in this step should appear on the gen4 Display.

Step 3:

The IR controlled outlet can also be customized by adding more relays

The command codes for each relay can also be customized through the following lines of code

The additional relays can be added to the circuit for the IR controlled circuit