Stelios's Place

A place for thoughts and ideas

IKEA STRALA Lamp USB modification

   Modify a cheap Angel-shaped LED light from IKEA to make it play x-mas tunes, flash the light and control it through your laptop!

   I found this small angel shaped STRALA lamp at an IKEA store the other day. It uses a couple of AAA batteries in order to light up a small LED. This is pretty much all it can do. On the other hand it does look like it has a lot of free space to fit inside a small circuit to make it more fun. This could end up be a nice fun x-mas desktop toy!

The IKEA STRALA Lamp modified with a USB cable!

      Lamp assembly
The assembly .

   I used parts I had lying around to build a small circuit that can play sounds and flash the LED light. Parts used are:
  • Picaxe 08M or 08M2 microcontroller.
  • Piezo speaker
  • USB-2-ttl cable (can get them on eBay)
  • Green LED (can be any color) - only used for testing communications with the PC
  • Resistors
   For the schematic and the circuit board I used the ExpressPCB software. If you want to view or print those files you will need to download this this software. You can get it for free from their site.

   This is how the schematic looks like. On the left side it's where the USB-2-ttl cable is connected. This cable provides 5v power and serial communications with the laptop. On the right side there it's where the LED is connected and the piezo speaker.

IKEA Lamp schematic
The schematic.

   I decided to make a small PCB to put everything together. The board actually came out to be about 2.5cm x 3.5cm. it can fit nicely inside the lamp. You can skip this step and just use a protoboard/perfboard to build the circuit which will be simpler and faster. This is how the PCB layout looks like:

IKEA Lamp PCB layout
The PCB layout.

   In order to control the lamp you will need a simple software. For the software I once again used the Liberty Basic language. I have been using it for a while to make applications for Windows. The same software is able to run under wine, so applications will work under Linux as well. As for the rest of the operating systems, since the device is controlled over a serial connection it should be fairly easy to create a small script to send commands. This is how the application GUI looks like:

Liberty Basic IKEA Lamp
Liberty Basic is used to make the GUI software for the lamp.

   The communication protocol is pretty simple and straight forward. First you need to trigger an interrupt for the PicAxe to switch into serial-in mode and then send the number for the action you want the lamp to make. The 'backspace' character (\b) works fine for triggering the serial-in mode. Then you only need to send a number, eg '0\n':

0 - Play 'Jingle Bells'
1 - Play 'Silent Night'
2 - Play 'Rudolph'
3 - Play 'We wish you'
4 - Play all tunes
5 - Flash the light
6 - Turn the light on
7 - Turn the light off

   All files and source codes are released under the GPLv3 license. You can get the from here:
Note: You need Liberty Basic to run the GUI application.