TLC5940 + high current + keep the constant current sink (looking for part)

Hi Community!
I'm experimenting with TLC5940 and some LED's. Works great so far (3 chained TLC on 16 RGB-Leds)!
Now the tricky part:
The TLC provides 120mA. Now I'd like to drive a power consuming LED (a Seoul P5 to be exactly http://www.farnell.com/datasheets/615004.pdf).
This hungry piece consumes 350mA per color.
I read about solutions driving the Led via a MOSFET/Transistor/Darlington Arrays http://www.ti.com/lit/an/slva280/slva280.pdf. In my understanding i'm losing the constant current sink with this solution, so my LED is driven via resistor, which i'd like to avoid.
My solution in dreams is a constant current sink providing my led with 350mA/color - and this constant current sink takes its information about dimming (pwm) from the TLC.
I crawled farnell a lot - but i didn't find any proper part (i also did'n know what i was searching for XD) Can you help me out?
This problem was discussed on many places here and in some other tinkerforums (GrumpyMike provided a lot of helpful information - thanks a lot) so i feel a little bit awkward asking this again. As said it's important to have a constant current sink when driving such hungry leds...and i think all given solutions break up with this.
Thank you for helping me!

This will do the job, it has a PWM input. It's at 1.25 volt (the pwm input) i think so you have to sort that out. I used a potential divider on the output's. Other than that it need's no other components. There is a good range of mA if you have a look. This is the link for a 350 mA.

Hi!
Thanks for your advice!
Nice part - but definitly too expensive! I searched for similar parts and found this http://uk.farnell.com/microchip/mcp1640t-i-chy/boost-regler-synchr-500khz-6sot23/dp/1800205 - far cheaper! Are both compareable? Keep in mind that i need 16*3 of those :wink: So i also need to care the price....

dont really know hat that is for, it doesn't say anything about constant currant so i'd guess it might not be what you want.

This would be more like it i think, there is similar one , don't know if this is the cheapest. it might go down on price if you buy more.

OptimusPrime:
I searched for similar parts and found this http://uk.farnell.com/microchip/mcp1640t-i-chy/boost-regler-synchr-500khz-6sot23/dp/1800205 - far cheaper! Are both compareable? Keep in mind that i need 16*3 of those :wink: So i also need to care the price....

That part is not comparable, it's a step-up switching regulator, not a constant current device.

Unfortunately, there is no easy solution to the problem. What you are looking for is a current mirror with a gain of several times between the input and the output. Such devices exist internally to some integrated circuits, but I'm not aware of any devices you can buy just for this function, certainly not with an output of 350mA.

Here are some solutions:

  1. Use PNP transistors to drive the LEDs. As you said, this loses the benefit of the constant current output; so you need either a series resistor for each LED, or else a second transistor and resistor to form a constant current source.

  2. Parallel several TLC5940 outputs to drive each LED. For example, use three chains of TLC5940s driven from the same clock, data and latch lines, with the outputs connected in parallel. This gets quite expensive because the TLC5940 isn't cheap.

  3. Use plain shift registers and do software PWM (ShiftPWM library) instead of using TLC5940s. Use transistors or constant current drivers as in solution (1).

Thank you for the effort!
dc42:
i think its technically the best way to build up a constant current source by my own.
I found some circuits online and it might look like this in the end:

Im quite unsure how this works - also with this nasty PNP/NPN problem (i always mix up the two). Also i will have to plan it for 350mA and additionally i need a control pin to turn this on and off(do i need special transistors due to pwm?) Isn't it strange that i cant buy this in an ic?

This will make my circuit more complex than expected!

EVP:
I'd like not to change the code (the tlc arduino lib is soooooo nice <3 ) - and also this part is quite expensive. 2,95€ when i take 16 which is 47,5€. Now i pay about 10€ for my tlc's and i guess if i do dc42's solution with 2 transistors i'll end up at about 20€ for the whole circuit.

Thank you both for your input!
I'd be glad if you could drop a few lines about the homemade constant current sink above!

----ADDED----
I just read some interesting things about Constant Current Sources! In this example a voltage regulator is "abused" as ccs. The ic is an LM317 http://www.farnell.com/datasheets/76338.pdf

Here appear some BIG questionmarks! How do i turn it on or off? Simply by transistor at the end? And there is again this PNP/NPN thing...

That first circuit is OK. If you were driving it direct from an Arduino pin, you would disconnect the right hand end of the 4k7 resistor and connect it to the pin instead. To adjust the LED current, adjust the value of the 30 ohm resistor to give the required current when there is around 0.65v across it. For 350mA, the 4K7 resistor would also need to be reduced to provide sufficient base current.

Since you want to drive it from a TLC5940 output, you'll need to invert it, i.e. use PNP transistors instead of NPN and put it in the high side of the LED supply. You don't need the 4k7 resistor, you can drive the circuit direct from the TLC5940 output, with the TLC5940 set to produce a low current e.g. 15mA.

The circuit using the LM317 is not suitable for PWM applications.

Hmm...ok! That is very helpful about the first circuit. At the moment i am creating a eagle file for this - i hope things become more clear then.
I don't get the second one...why can't i do like him? http://arduino.cc/forum/index.php/topic,80353.0.html
My approach would be similar:
Create an ccs with the lm317 and interrupt it with a FET before the LED's GND. Then drive the Fet with the Tlc.
Thank you so much for helping me (and excuse my stupid questions :wink: )! I am learning a lot of new stuff right now!

This is what i planned (attachment) - i have to say that i didn't understand what i was drawing. How do you figuered out the 0.65v? You also said:

...the 4K7 resistor would also need...

but:

...You don't need the 4k7 resistor...

In my diagram it misses...

I guess this will f*** me up when it comes to soldering. I need this 48 times. I will also need Common Cathode RGB Leds, right?

http://www.satisled.com/Wholesale-rgb-full-color_c27[/ur]

I got my led's from here, they were fine and a lot cheaper than anywhere else. You can chooses the common, and get them in diffused or clear. Diffused is best. The odd one's colour is a bit of, depends how picky you are i suppose.

OptimusPrime:
This is what i planned (attachment) - i have to say that i didn't understand what i was drawing. How do you figuered out the 0.65v?

The PNP transistor and resistor on the left hand side of your circuit needs to be in the emitter circuit of the other transistor, not the collector circuit. The 0.65v is the approximate voltage between a transistor's base and emitter at which it starts conducting. You'll also hear this quoted as 0.6v and 0.7v.

OptimusPrime:
I will also need Common Cathode RGB Leds, right?

Yes, or LEDs that have independent connections for the 3 LEDs (6 pins in all) - such as the ones you said you were planning to use.

EVP:
Best toy store ever :smiley: Quite cheap if i compare them to the planned Seoul P5! Do you know how good colors are mixing for example with this one? http://www.satisled.com/10w-9w-rgb-led-emitter-3w-for-each-color_p236.html Or do you know which diffusers are matching them? I already wrote a question to the shops tech support. I have a 10w white high power led ordered from ebay http://www.ebay.de/itm/120563047449 which looks similar. Very bright and a lot of fun to play around (try strobe effects! :wink: )! As mentioned i expect a not very homogenous lighting when using this in rgb without diffuser.

dc42:
I will give it another try! I'm searching for a explanation why this works and where the regulation in current happens (i hate working with black boxes :slight_smile: ).
Did i calc the resistor the right way? It was like: "Oh, let's take 0.65V, gimme 350mA -> divide ==> 1,8 Ohm Resistor"
The Common Cathode/Anode is all fine - i just need leds which are freely configurable (which all are i mentioned)

I still 'd like to know why the LM317 will not work :wink:

Thank you guys! You are great!

OptimusPrime:
Did i calc the resistor the right way? It was like: "Oh, let's take 0.65V, gimme 350mA -> divide ==> 1,8 Ohm Resistor"

Yes, although the 0.65v is an approximate value (it depends on the type of transistors you use), so you may need to experiment to find exactly the right value it you want to run your LEDs at their maximum current. That voltage decreases with temperature, so the current will be highest at low temperatures.

OptimusPrime:
I still 'd like to know why the LM317 will not work :wink:

I guess it would work if the PWM frequency is not too high, but you'd need to use a transistor or mosfet to switch the power somewhere, and the voltage drop would be higher.

Ok! Fine!
I hooked it up again (attachment). Could it be that there is a mistake in my first try from yesterday with the upper right transistor? Its emitter is facing to Vcc - this is wrong, isn't it?
Also interesting for all german speaking people: http://www.hobby-bastelecke.de/grundschaltungen/konstantstromquelle2.htm
Very "humanreadable" explanation of the constant current source with 2 transistors - just to share this here...

Parallel i was looking for a part that provides many transistors in one package to make manifacturing easier, and i found this transistor array:( http://www.fairchildsemi.com/ds/FF/FFB2907A.pdf <- not available in germany...my bad. Alternative: http://www.nxp.com/documents/data_sheet/PBSS4041SP.pdf )

For the LM317 thing: i planned it in eagle and in comparison with the 2 transistor circuit the soldering effort will be the same (i was assuming that i need fewer parts when using the LM317)

LED CCS Setup.JPG

OptimusPrime:
I hooked it up again (attachment). Could it be that there is a mistake in my first try from yesterday with the upper right transistor? Its emitter is facing to Vcc - this is wrong, isn't it?

Yes it is. See attached sketch.

OptimusPrime:
Parallel i was looking for a part that provides many transistors in one package to make manifacturing easier, and i found this transistor array: http://www.fairchildsemi.com/ds/FF/FFB2907A.pdf

The transistor driving the LED needs to be chosen quite carefully because of the relatively high current you are using. It needs to pass the 350mA while maintaining a good hfe and a low Vce(sat). It also needs to handle the power dissipation. The worst case power dissipation is the red LED because it has the lowest voltage drop (2.6v typical). So the voltage drop across the transistor will be around 5 - 2.6 - 0.65, which comes to around 1.75v. At 350mA current the power dissipated will be 613mW. This is right at the limit for a typical TO92-style transistor such as the BC327. You could put a 2.7 ohm resistor in series with the red LED to bring its voltage drop up to the same as the green and blue LEDs.

The problem with using a transistor array is that the package has to dissipate the total power for all the transistors. Also, the Vce(sat) of that array at 350mA is probably far too high, judging from the values quoted at 500mA. Even with a good transistor, the green LED has a worst case voltage drop of 4.2v, and you lose about 0.65v in the current sense resistor, so you really need a transistor with a Vce(sat) of only 0.15v at 350mA. You may find that a BC327 is not good enough and you need a small power transistor instead. If you are planning SMT manufacturing than that would be your best option anyway, maybe something like http://uk.rs-online.com/web/p/general-purpose-transistor/7114960/.

The other transistor in the circuit is much less critical and could be part of an array.

OptimusPrime:
For the LM317 thing: i planned it in eagle and in comparison with the 2 transistor circuit the soldering effort will be the same (i was assuming that i need fewer parts when using the LM317)

For the LM317, you need one resistor and a capacitor for the LM317 itself, plus a transistor or mosfet and at least one more resistor to switch it. So more soldering effort.

Ok...slowly i understand the circuit...and your calculation.
Due to evp's advice i will have to switch the led!!!
Just because of the price - the shop sells it for 2,14€ vs. 10€ this saves me so much money! - and this comes in handy with our problem (when i got everything right).
If i switch to this one http://www.satisled.com/3w-rgb-led-emitter-on-star-1w-for-each-color_p234.html i'll deal with 3.6 max v loss. So just to be sure i understood this correctly i have 5 - 3.6 - 0.65= 0.75 V Vsat. To get the red one up to the same V i burn 1V with a 2.8 Ohm resistor. The friction in the transistor is reduced to 262mW.
So lets give me another try with a part :wink: http://www.farnell.com/datasheets/1504602.pdf
Vsat is -500mV (i can provide 750 in the worst case), Powerdissipation can be over 1W (i am below with 262mW) Did i forget something?

Just to ask it: is it really that bad to drive an led via resistor without ccs??? I can't imagine how http://www.satisled.com/10w-9w-rgb-led-emitter-3w-for-each-color_p236.html those are driven... (they get special drivers i guess as dc42 mentioned in his first post).

OptimusPrime:
If i switch to this one http://www.satisled.com/3w-rgb-led-emitter-on-star-1w-for-each-color_p234.html i'll deal with 3.6 max v loss. So just to be sure i understood this correctly i have 5 - 3.6 - 0.65= 0.75 V Vsat. To get the red one up to the same V i burn 1V with a 2.8 Ohm resistor. The friction in the transistor is reduced to 262mW.

To calculate the maximum power dissipation in the transistor, you need to assume the minimum voltage drop in the LED (3.2v for the green and blue) and across the current sense resistor (say 0.6v). This gives 1.2v (assuming a 5v supply), which at 350mA gives a dissipation of 420mW. To this, you need to add the dissipation due to base current, but that should be only 20mW or so.

OptimusPrime:
So lets give me another try with a part :wink: http://www.farnell.com/datasheets/1504602.pdf
Vsat is -500mV (i can provide 750 in the worst case), Powerdissipation can be over 1W (i am below with 262mW) Did i forget something?

Vce(sat) for that part is quoted at 500mA collector current and 50mA base drive. You can't provide 50mA base drive because your TLC5940s would get too hot. You'll need to run with something like 10mA base drive instead. Looking at that data sheet, the transistor looks like it may not have sufficient hfe at 350mA to guarantee a low enough saturation voltage. Also note that the power dissipation limit assumes 6 sq cm of copper as a heatsink, per transistor.

OptimusPrime:
Just to ask it: is it really that bad to drive an led via resistor without ccs??? I can't imagine how http://www.satisled.com/10w-9w-rgb-led-emitter-3w-for-each-color_p236.html those are driven... (they get special drivers i guess as dc42 mentioned in his first post).

No, it's not that bad to use just a series resistor, especially as your new LEDs now give you 1.4v minimum voltage drop across the resistor. [The higher the voltage drop across the resistor, the better the current regulation, at the expense of more power dissipation in the resistor.]

If you use the resistor, you might wish to consider using mosfets (e.g. http://export.farnell.com/toshiba/ssm3j02t-te85l-f/mosfet-p-ch-1-5a-30v-sot23/dp/1714372 or http://www.farnell.com/datasheets/25641.pdf) for switching the leds, because this keeps the dissipation in the TLC5940 low, at the cost of needing a resistor (say 1K) to pull the mosfet gate high when the TLC5940 output turns off. Make sure the series resistors are adequately rated, e.g. the one for the red LED will dissipate up to 1W in this configuration.

Yet another possibility is to use a constant current driver in which the transistor passing the current is replaced by a mosfet - thereby avoiding problems of saturation voltage and allowing the TLC5940s to be run at a low current so as to keep them cool. This may be the best solution.

The other thing you might want to consider is whether it is still worth using TLC5940s, given that they are not cheap and you are unable to get the benefit of the constant current output.

Ok...weekend is over(i need weekend) - now i have to do PROGRESS :slight_smile:
I just made some decisions with my collegue who works with me on this project.
First of all i'd like to thank you two very much for your support!
We will do the "small version" with normal leds - we will face some other problems when it comes to etching for sure, so time is an expensive factor.
We will build it modular - so we can extend the actual controllerboard with a "driverboard" which contains the small solution of powering the 3W led by MOSFET and resistor.
The circuit design must be Pin (2.54) compatible. We can use our parts even if etching fails (which is quite hard when we work with smd).
And there is another question (yeah im not annoying :wink: ):
The posted MOSFET is smd - due to our decision it won't make it to the basket. I found another one which seems to be similar for me http://www.farnell.com/datasheets/14454.pdf - one thing i noticed: the GS threshold voltage is -2 to -4 on the recommended RTR030P02 (second link, previous post) it is -0.7 to -2. Will this work out with my -5V? I read that the on resistance is 0.32 ohm - do i need to subtract the volts i lose in the mosfet?
In the attachment i painted how i'd wire it. Please ignore the calculation - the correct one is: ((5V - 0.32ohm*350mA)-Urgb)/350mA = Rrgb
Thanks a lot!!!

That mosfet isn't suitable, it's designed for 10v gate drive. Look for one that has Rgs(on) specified at 4v or 4.5v.

You need a resistor from mosfet gate to +5v. The value is not critical, I would try 10k.

Your calculation looks OK but bear in mind that the Rds(on) value quoted on the data sheet is usually the maximum value at the specified gate voltage, and it might be somewhat lower in practice.

Finally we found one (yeah i really hope 4 eyes got the right one now)

Did you mean Ugs(on)/Vgs(on) here?

Look for one that has Rgs(on) specified at 4v or 4.5v.