IKEA Dioder + Arduino Leonardo (Newbie)

Hi everyone!
I'm an absolute Arduino newbie and currently working on a school assignment.
What I'm trying to do at the moment is establish a connection between the IKEA Dioder LED Strips and the Arduino, then use the Arduino to control the LEDs.

I've basically followed these instructions so far (removed the microcontroller and soldered connections)
http://www.slickstreamer.info/2013/10/another-ikea-dioder-hack-arduino-ikea.html

So I've connected GND and 5V to the Arduino as well as RGB to Arduino pins. The code I've used is the following:

Arduino Setup Code

My multimeter shows that the DIODER circuit board is recieving ~5V.
So why won't my LED strips turn on?
All the DIODER tutorials on the web use the old circuit boards which looked a bit different. I'm not sure if I soldered the correct connection for RGB? Should I have used the soldering pads above the MOSFETs, left of the voltage regulator?
I've attached a photo of my DIODER board.

Any help is much appreciated, thank you very much!

That circuit looks right to me.

Are you feeding the Arduino with data from the serial monitor?
All an extra line so you turn on the on board LED when you say recieve the letter 'a' and see if that turns on.

Thank you for the reply, I've tried that already and the onboard LED turns on so it receives the serial monitor letter. It's just the DIODER LED which won't turn on.

Do you think it would be possible to bypass the circuit board and instead build a circuit like this one using the DIODER sticks? Could I use 220ohm resistors for such a circuit with the Leonardo?

You need to make some measurements to try and find out what is going wrong.

  1. measure the voltage on the gate of those FETs, you they change when you send the appropriate serial command?
  2. if that works then move over to the Drain of e FETs that is the LEDs going into the board. You should see 5V when the signal is not being sent and 0V when it is.
  3. check the 5V is actually reaching the LEDs.

Do you know for sure that the LEDs take 5V?

Hi,
What pins on the arduino do you have the three wires going to the resistors on the pcb?
If you are using the setup code you should be connected to pins 9,10,11.

Can you attach a picture of your project please..

Tom.... :slight_smile:

  1. measure the voltage on the gate of those FETs, you they change when you send the appropriate serial command?

I just checked and measured 0V on the gate of the FETs, with and without serial command.

What pins on the arduino do you have the three wires going to the resistors on the pcb?
If you are using the setup code you should be connected to pins 9,10,11.

I used 6,5 and 3, but I changed the code so it should work on those pins.

I'm not actually sure if the LEDs work with 5V.
Today I tried a different method using an external 12V power source and an ULN2003A, but it didn't work either :confused:

I found this wiring:

My circuit is in the attachment. Does anyone see any mistake on my setup...?

Does anyone see any mistake on my setup...?

Yes you are feeding a strip that clearly says it needs 12V with 5V from an Arduino.

You also have the label saying "download your IDE from Arduino.org", that is the "bad guy" so don't do it use Arduino.cc.

I just checked and measured 0V on the gate of the FETs, with and without serial command.

You need to find out why, that is a function of your Arduino and wiring to the board, without that bit nothing will work.

I used 6,5 and 3, but I changed the code so it should work on those pins.

Post your code and let's see.

I found this wiring:

That would work sort of but it is restricted to switching a maximum of about 650mA and there is no need to use it you should be able to get your original controller working, now we know it needs 12V. Before you were only supplying it with 5V.

Also you seem to be using an LED without a resistor, that is a great way to damage your Arduino.

Ok I've attached my code. PIN13 LED turns on when I send 'e'. I didn't download the software from Arduino.org.

I didn't use a resistor for the single LED because I thought PIN13 is ok to use without as it has built-in 1kOhm resistor?

I don't know how to combine Arduino and the original controller when it comes to power supply. I'm a bit afraid of damaging the Arduino, like I said I'm not very experienced.
Can I use Arduino+external 12V power supply and the original controller without doing any damage?

dioder.ino (2.54 KB)

chainjail:
I didn't use a resistor for the single LED because I thought PIN13 is ok to use without as it has built-in 1kOhm resistor?

It absolutely does not. It only has a resistor for the onboard LED. The pin is just a pin like any other.

I don't know how to combine Arduino and the original controller when it comes to power supply.

Where does the power come from on the original set up?
Remove that 5V wire from your board. Unplug the signal wires from the Arduino and power the board from its original power supply.
Now measure what voltage is on those signal wires that was connected to the Arduino. If it is less than 5V then that is fine. Now touch one of those wires to your Arduino's 5V line, does it light up?

If not measure the voltage on the pads where U1 used to be. What is the biggest voltage you can see here? If it is 12V then try touching one of those wires to the 12V.

it has built-in 1kOhm resistor?

As mentioned no it has not.

See IC2A at the lower right - input driven by IO13, output drives the L LED.
IO13 thus unencumbered.

Where does the power come from on the original set up?

Are you referring to the pic I attached in the first post? I simply had my Arduino plugged in via USB but I realize now that of course this couldn't have worked.
The DIODER normally gets its power via a power plug, all 4 Strips connect to a box which connects to the power plug.

Thank you for the info on PIN13, it seems I've misunderstood some information from my school lessons!

Now measure what voltage is on those signal wires that was connected to the Arduino.

I got 4.9V, nothing lit up.

If not measure the voltage on the pads where U1 used to be. What is the biggest voltage you can see here?

4.9V on one of the pads where the microcontroller used to be, and 3.6V on another, the others were all 0V.

OK,
Apply 12V to the LED strip and touch one of the three R, G or B to the ground of your 12V supply. If nothing lights up then your LED strip is shot, or you are not doing it correctly.

The strips light up when I do that.

Good.
So looking at your board you could have those signal wires shorting out to the adjacent tracks. So first of all measure the resistance between those signal wires and ground and make sure that they are not shorted. If they are remove the wires and clean up the soldering.

If all is OK apply that 12V to your board and the ground of the 12V to the ground of the board. Then touch the wires that should be connected to the Arduino again to the wire that is connected to the 5V from the board. There should be no wires to the Arduino at this point.

I suspect you are having a grounding problem with the ground not being connected.

Thanks a lot for your suggestions!

So first of all measure the resistance between those signal wires and ground and make sure that they are not shorted. If they are remove the wires and clean up the soldering.

I checked the soldering and the resistance and it seems to be fine.

If all is OK apply that 12V to your board and the ground of the 12V to the ground of the board. Then touch the wires that should be connected to the Arduino again to the wire that is connected to the 5V from the board. There should be no wires to the Arduino at this point.

The strips light up in their individual colors.

So I could basically just use the original IKEA power supply and the Arduino then gets its power from the IKEA circuit? With ground from the IKEA board connected to Arduino GND.

Yes that would be the way to do it. Connect the 5V signal to the 5V pin of the Arduino.

One more thing, I found this thread which does not recommend supplying voltage via the 5V pin directly? Should I add a diode or use the Vin pin instead?

Also, a quick Google Search told me that USB and external power supply at the same time should be fine as the Arduino will simply choose external power supply over ~6.6V then. Is that correct?

hat USB and external power supply at the same time should be fine as the Arduino will simply choose external power supply over ~6.6V then. Is that correct?

Yes if the external power goes in through the Vin pin or the power jack.

If you are worried then forget the 5V connection from the unit to your Arduino and feed the 12V from your original power supply into the Vin or power jack of the Arduino. Personally I have no problem powering it with 5V and USB at the same time.