High Powered RGB LEDs

Hello,

I am a complete noob when it comes to electronics and Arduino. I was wondering if someone can check this schematic for me to see if things are within the "working ranges" for the Arduino (esp. in terms of current). The LED Specs are on the picture.

I've hooked up the circuit as shown, and things seem to work, but when the LEDs are supposed to be "off," they remain lit at a very dim intensity white (all three colors). Is there any way I can hook them up differently or do something from the software-side to keep them "off" completely when they're supposed to be?

Also, after researching online, I learned there was a way to configure the LM317 as a constant current source (as shown in pic). But I've also read that this is very inefficient. Can someone suggest a better way to get a "constant current" driver that I can use for better efficiency?

Thanks everyone!

No this is not the way to power high power LEDs and using this circuit you are overloading the output pins of your arduino and have defiantly damaged it. The good news it that it will probably still work but it is likely to fail earlier that it should.

You need an output that will allow you to sinlk much more than the 40mA maximum from the arduino.

High power LEDs should be driven with a constant current supply, one constant current supply per LED (so that's three constant current supplies for an RGB LED).

Have a look at this thread and the links off it:- http://www.arduino.cc/cgi-bin/yabb2/YaBB.pl?num=1234273497

But I've also read that this is very inefficient.

It is inefficient because the excess current is burnt off as heat. However a more efficient system is also more expensive and difficult to lay out as it involves a switching supply.