RGB LED Strip (5050) and PWM --> never completely off


I'm new in the topic of microcontrollers etc.. I only have plenty experience in programming.

I want to build this: http://www.instructables.com/id/30-channel-LED-RGB-Ambilight-Clone/?ALLSTEPS

Today I've connected a little piece of the RGB LED strip with an external power supply and the Arduino. I did it like in the image at step 2 in the link: +12 V Power Supply --> +12 V LED Strip GND Power Supply --> GND Arduino

To control the LEDs I've connected the 3 colours from the strip to PINs 9 (red), 10 (green) and 11 (blue).

My main problem at the moment is that all LEDs are shimmering even if I set the PINs to HIGH/255. Green and red are much more brighter than blue and therefore if the strip should be off there is a greenish yellow.

I have the same problem if I want only one of the base colours, it's not possible because the other two LEDs are shimmering and that's for mixed colours also a problem.

How can I fix this? I tried to use different resistors but the only difference is the overall brightness of the LEDs.

Best regards!

Sadly instructiables are notorious for being very poor, this looks like no exception. By shimmering do you mean flickering? There are no decoupling capacitors on the two chips. Put a 0.1uF cap on the power lines of each chip, that might help with the shimmering.

I haven't used the TLC5940 so far - I only wanted to test the software etc.

My circuit is more like this one: http://www.instructables.com/files/orig/FMJ/RGXH/GKQ39IK8/FMJRGXHGKQ39IK8.png but without the Transistor and Resistor --> The R/G/B Pin from the Strip goes directly to the PWN Pin of the Arduino. I think the lack of the transistor is my problem and therefore the LEDs are never grounded.

With shimmering I meant glowing, illuminated a little bit ;) (Sry, English is a foreign language for me :blush: )

I'm going to test the LLC5940 this weekend maybe the problem is solved then ;)

If you drive the strip directly from your Arduino PWM pins your Arduino will probably die.

You need the transistors or something like a ULN2003 darlington array.

Check this:


MikMo: If you drive the strip directly from your Arduino PWM pins your Arduino will probably die.

Then my Arduino is immortal :grin: It ran for hours directly from the PWM :zipper_mouth_face:

Thanks for the answers, next step is TLC5940 if I have the time.

Then my Arduino is immortal

No it is severely damaged, you just haven’t spotted it yet.