Remote Controlled LED Lightbulbs

Lightbulbs can glow in different kind of colors. You can control each bulb with a simple infrared remote controller, which is usually contained in the boxing. This is called manual control, but you can control your colorful lightbulbs automatically with Ozeki 10, which can handle the transmission. Why use Ozeki? To change the color of the bulb depending on the current time or you could glow your room depending on the outside temperature. This way you will instantly know what kind of clothes to wear.

STEP 1: Screw in the lightbulb

Acquire a bulb and screw it in the socket by turning it clockwise. It is just like screwing a traditional lightbulb into it's socket. You can get these bulbs from the electronic shop or from the internet. They can light up your room and change your mood or the mood of your partner as well. A single bulb costs maximum 10 dollars with a simple remote controller.

screw in the lightbulb
Figure 1 - Screw in the lightbulb

STEP 2: Install Ozeki

You can find your Ozeki 10 installer at http://www.ozeki.hu/index.php?owpn=231. One of these installers are most likely compatible with your operating system. Try Ozeki by downloading and installing it. You can reach it from any webbrowser at a remote location. There are detailed installation tutorials for each operating system in the Ozeki 10 guide.

install ozeki
Figure 2 - Install Ozeki 10

STEP 3: Download C++ Arduino IDE to install it

Check if you have an Arduino IDE installed on your machine. If not, please download it from https://www.arduino.cc where you can find installers for Windows, Linux or Mac, so you can program your Arduino boards.

install c++ arduino ide
Figure 3 - Install C++ Arduino IDE

STEP 4: Please format EEPROM

After the IDE is installed please upload the EEPROM format code, which you can find at http://www.ozeki.hu/index.php?owpn=3110. All Ozeki device needs a clear EEPROM to store the ID of each uploaded device.

format the eeprom
Figure 4 - Format the EEPROM

STEP 5: Wire the IR receiver to your Arduino

Connect the 1838B infrared IR receiver module to your Arduino. You can see how to connect it on the circuit diagram below. Connect the parts with some jumper wires and a breadboard, which are used to build small electric circuits. Thanks to the pin holes on the breadboard, you can easily build it. The 1838B module is powered with 5V-s coming from the Arduino itself.

wire the ir receiver to the arduino
Figure 5 - Wire the IR receiver to the Arduino

STEP 6: Upload the IR receiver code too

With the same technique you have uploaded the EEPROM code in STEP 4, you can upload the receiver code to catch the remote signals. Find it at

C:\Users\User\Documents\Arduino\libraries\
OzIRTransceiver\OzIRTransceiver_ReceiverTest

upload the receiver code
Figure 6 - Upload the receiver code

STEP 7: Start Control Panel from the GUI

To read the signals from the remote controller, you will need the Ozeki 10 browser GUI. The Ozeki 10 server you have installed in STEP 2 is capable to read all messages coming from the IR receiver device. Please login to your Ozeki server and start the Control Panel with the red Napoleon icon. It is an essential application to test and use your connections.

start the control panel
Figure 7 - Start the control panel

STEP 8: Turn ON serial port autoconnection

Use the 'Serial ports' icon on the left, click the 'Config' tabpage and turn on 'Autoconnect'. Next time you plug in your Arduino, the connections will be instantly listed on the Home page of your Control Panel. Find it next to all other connections. Good to know if Ozeki connects to a COM port, other software will not be able to use the port until it is freed up by Ozeki 10.

set the autoconnection on
Figure 8 - Set the autoconnection on

STEP 9: Catch the remote controller signals

On the home page of the Control Panel you can see all connections. If you have done everything right, you will see the IR Receiver active. Please click on it and watch the textbox on the 'Test' tabpage. Now you can target the 1838B module with your remote controller and write down the signals it had cought. Below you can see some example signals for red, green and blue colors. Although all type of lightbulbs have different kind of signal sets.

catch the remote controller signals
Figure 9 - Catch the remote controller signals

STEP 10: Unplug the IR receiver and wire a transmitter

Congratulation for catching some signals coming from your remote controller, so next time you can change the lightbulb color by retransmitting one of these signals from Ozeki 10. To do this please wire another Arduino connection by adding an infrared LED and a resistor between the Arduino's D3 and GND pin. It is important to know that the pin cannot be changed from the code. If using an Arduino Mega, it works through the D9 pin.

unplug the ir receiver and wire the transmitter
Figure 10 - Unplug the IR receiver and wire the transmitter

STEP 11: Upload IR transmitter code to Arduino

Make sure you have cleaned the EEPROM like in STEP 4. If forgetting it, the communication can malfunction. Then upload the transmitter code from

C:\Users\User\Documents\Arduino\libraries\
OzIRTransceiver\OzIRTransceiver_SenderTest

upload ir transmitter code to arduino
Figure 11 - Upload IR transmitter code to Arduino

STEP 12: Click IR transmitter in the connection list

Go back to Ozeki 10, find the Connection List on the Home page of the Control Panel. You can see that the IR receiver connection is inactive, while the freshly plugged IR transmitter connection is active. A green or red LED next to them shows the connection state. A 'Details' button shows you the settings of each connection with a simple 'Test' interface as well. Please click on the transmitter to send an IR message towards the lighbulb.

select the ir transmitter connection
Figure 12 - Select the IR transmitter connection

STEP 13: Transmit a signal to switch color

Please look at the HEX codes you have copied above in STEP 9. Type one of these codes in the following format: protocol_HEXcode. The remote controller brand defines the protocol, but you can recheck the protocol type with an IR receiver. For general purpose, like for most lightbulbs, the NEC protocol is supported. After typing the signal code, transmit it by pressing 'Send'. You will get a response in the textbox just below the send field. This is a reaction from the Arduino showing if the message has been sent or not.

transmit a signal to switch color
Figure 13 - Transmit a signal to switch color

STEP 14: Look at the glowing bulb

If the lightbulb glows in the color signal you have transmitted, you can see that the message have been sent. If it is not glowing, then check if you have received a response from the Arduino showing that the signal was sent. If yes, then please set the bulb in the IR signal's path. Probably the bulb was not positioned in the IR LED's way. The strongest signals can be received from the top of the infrared transmitter. You can also use the IR transmitter to set the brightness or turn on or off the lightbulb as well.

the lightbulb switched to red light
Figure 14 - The lightbulb switched to red light

More information