Controlling an IKEA DIODER LED light strip with the EFM32 Giant Gecko

Hack-a-Gecko project by Mads        


Would you like to make your drawers or book shelves brighter with colorful lights? In this Hack-a-Gecko project, Mads demonstrates how to run an IKEA DIODER LED light strip equipped with the EFM32 Giant Gecko MCUs.

Project description

The goal of this project was to use the EFM32 Giant Gecko to control a LED DIODER light strip. The light strip contains a flexible cable filled with multi-color LEDs. First some research was done online to figure out how to hack and interface with the IKEA DIODER. Bertho has documented the IKEA DIODER schematic here, which was helpful to start out this Hack-a-Gecko project.


When the IKEA box was opened, I removed the original MCU. Then the R,G, and B signals were wired to the EFM32 Giant Gecko starter kit as instructed in Bertho’s schematic.


The Timer 0 location 3 pins for CC0(PD1), CC1(PD2) and CC2(PD3) were used. A simple 3 channel PWM driver was made using Timer 0 with a 8 bit PWM signal.

With a MCU clock of 48MHZ, a divider of 512 and a resolution of256/8 bit the PWM period frequency is approx.  366Hz.

The API created was very simple to use:

void IKEADIODER_Init(void);

void IKEADIODER_RGBColorSet(uint8_t red, uint8_t green, uint8_t blue);

Example of usage:




Materials Used

Source Files

IKEA pwm driver available – can be included in e.g. EFM32 Giant Gecko STK blink example.

5This Hack a Gecko project is a result of a “fun hacking session” and are provided as is, free of charge with no guarantees or support from Energy Micro, to partially or fully show and demonstrate EFM32 Gecko microcontroller capabilities. Get inspired, use at own risk, and build some awesome and cool applications.”

For technical questions about this project, please use our support forum. The Hack-a-Gecko team will answer your questions directly.