3 Simple Ways to
Share What You Make

With Instructables you can share what you make with the world — and tap into an ever-growing community of creative experts.

PhotosPhotos

Share one or more photos of a project, recipe, or whatever you've made, quickly and easily.

Step by StepStep-By-Step

Share your step-by-step photos with text instructions of what you made so others can do it too!

VideoVideo

Share your how-to video. You'll need your embed code from a video site such as YouTube.

High Power LED Driver Circuits

Step 6The new stuff!! Constant Current Source #1

The new stuff!! Constant Current Source #1
lets get to the new stuff!

The first set of circuits are all small variations on a super-simple constant-current source.

Pros:
- consistent LED performance with any power supply and LED's
- costs about $1
- only 4 simple parts to connect
- efficiency can be over 90% (with proper LED and power supply selection)
- can handle LOTS of power, 20 Amps or more no problem.
- low "dropout" - the input voltage can be as little as 0.6 volts higher than the output voltage.
- super-wide operation range: between 3V and 60V input

Cons:
- must change a resistor to change LED brightness
- if poorly configured it may waste as much power as the resistor method
- you have to build it yourself (oh wait, that should be a 'pro').
- current limit changes a bit with ambient temperature (may also be a 'pro').

So to sum it up: this circuit works just as well as the step-down switching regulator, the only difference is that it doesn't guarantee 90% efficiency. on the plus side, it only costs $1.


Simplest version first:

"Low Cost Constant Current Source #1"

This circuit is featured in my simple power-led light project.

How does it work?

- Q2 (a power NFET) is used as a variable resistor. Q2 starts out turned on by R1.

- Q1 (a small NPN) is used as an over-current sensing switch, and R3 is the "sense resistor" or "set resistor" that triggers Q1 when too much current is flowing.

- The main current flow is through the LED's, through Q2, and through R3. When too much current flows through R3, Q1 will start to turn on, which starts turning off Q2. Turning off Q2 reduces the current through the LED's and R3. So we've created a "feedback loop", which continuously monitors the LED current and keeps it exactly at the set point at all times. transistors are clever, huh!

- R1 has high resistance, so that when Q1 starts turning on, it easily overpowers R1.

- The result is that Q2 acts like a resistor, and its resistance is always perfectly set to keep the LED current correct. Any excess power is burned in Q2. Thus for maximum efficiency, we want to configure our LED string so that it is close to the power supply voltage. It will work fine if we don't do this, we'll just waste power. this is really the only downside of this circuit compared to a step-down switching regulator!


setting the current!

the value of R3 determines the set current.

Calculations:
- LED current is approximately equal to: 0.5 / R3
- R3 power: the power dissipated by the resistor is approximately: 0.25 / R3. choose a resistor value at least 2x the power calculated so the resistor does not get burning hot.

so for 700mA LED current:
R3 = 0.5 / 0.7 = 0.71 ohms. closest standard resistor is 0.75 ohms.
R3 power = 0.25 / 0.71 = 0.35 watts. we'll need at least a 1/2 watt rated resistor.


Parts used:

R1: small (1/4 watt) approximately 100k-ohm resistor (such as: Yageo CFR-25JB series)
R3: large (1 watt+) current set resistor. (a good 2-watt choice is: Panasonic ERX-2SJR series)
Q2: large (TO-220 package) N-channel logic-level FET (such as: Fairchild FQP50N06L)
Q1: small (TO-92 package) NPN transistor (such as: Fairchild 2N5088BU)


Maximum limits:

the only real limit to the current source circuit is imposed by NFET Q2. Q2 limits the circuit in two ways:

1) power dissipation. Q2 acts as a variable resistor, stepping down the voltage from the power supply to match the need of the LED's. so Q2 will need a heatsink if there is a high LED current or if the power source voltage is a lot higher than the LED string voltage. (Q2 power = dropped volts * LED current). Q2 can only handle 2/3 watt before you need some kind of heatsink. with a large heatsink, this circuit can handle a LOT of power & current - probably 50 watts and 20 amps with this exact transistor, but you can just put multiple transistors in parallel for more power.

2) voltage. the "G" pin on Q2 is only rated for 20V, and with this simplest circuit that will limit the input voltage to 20V (lets say 18V to be safe). if you use a different NFET, make sure to check the "Vgs" rating.


thermal sensitivity:

the current set-point is somewhat sensitive to temperature. this is because Q1 is the trigger, and Q1 is thermally sensitive. the part nuber i specified above is one of the least thermally sensitive NPN's i could find. even so, expect perhaps a 30% reduction in current set point as you go from -20C to +100C. that may be a desired effect, it could save your Q2 or LED's from overheating.
« Previous StepDownload PDFView All StepsNext Step »
46 comments
1-40 of 46next »
May 11, 2012. 9:06 AMLoafman says:
Hi, first thing I have to say is I love this circuit. I have built one and have been doing some testing with it. The main difference with mine is that for Q2 I am using an IRF540 (I had about load of them already), but it functions basically the same as it's still a power N-FET. The thing I have found though is that when calculating the value of the current set resistor (R3) I kept coming up with worryingly high readings (I was aiming for 300ma), and found that R3 = 0.5 / 0.3 = 1.67 ohm to be giving about 360ma (according to both my multimeters). The solution (at least for me) was to change it to R3 = 0.6 / 0.3, which gave a resistance of 2 ohms and a near perfect 300ma. I'm not sure if anyone else has had the same issue (I can't find any issue with my equipment), so thought I would post up here in case it helps.
Anyhow, thanks for a great post!
May 16, 2012. 5:29 AMLoafman says:
Hi, just a quick follow on from my last post. In the last post I was using a 12v DC power supply, and found that the formula to work out the resistance of R3 (at least for my circuit) was 0.6 / 0.3a (300ma was my required current).

I have since chosen a 36v DC supply ( so that I can connect more LED's in each series and maximise efficiency) and found that it once again alters the formula slightly. With the 12v supply I had a steady 302ma current, but with the same circuit and 36v input I am showing a steady 326ma. I am currently using a breadboard, so I'm not sure if the higher voltage is proving more efficient at driving the current through the connecting points... maybe, but I'm rusty as hell with electronics!

The good thing is that the Vgs on the MOSFET is sitting around 3.6v, so no danger there!

Anyway, thanks again for this fab cicuit, and I hope my findings help some others with their experiments!
Apr 20, 2012. 11:50 AMnnadine1973 says:
It is working incredible considering the parts involved! I become member here just to say thank you to you.
So, Thank You!!
Apr 14, 2012. 4:57 AMbobking144 says:
just a fast know it seems to help out with a 1000uf+ cap on the outgoing wire to the led's, I am using a 3000uf 16v cap.
Apr 14, 2012. 4:40 AMbobking144 says:
ok I am kind of rusty for the Constant Current driver do I need to use the same voltage as my le need? led need 15volt so in put needs to be like 17volt is that right?
anyone know.
Apr 8, 2012. 3:54 PMbobking144 says:
this is a great drive I love it, what voltage did you build yours with? cues I see that when input voltage is lower output amps goes down and when input voltage is higher amps out goes up.
Jan 16, 2012. 11:59 PMsprocketme2 says:
I understand that R3 is calculated as R=(Saturation voltage of Q1)/(desired current through LEDs) If I am wrong please correct me. Now for circuit 5 specifically, is R1 still functioning as a pull up (100kohm) like the other circuits, or is it functioning as gate resistance for Q2? In which case it would be in the order of 25-100ohm.
Jan 6, 2012. 9:10 AMdante.ragnarok says:
i need to kwon how calculate the set current, because i have a 18v and 3,5 A power source and i want conect 4 red led 3w and a blue one 3w at 700mA each one
Aug 7, 2010. 4:44 AMletniq says:
Hi, Great article but I didn't understand how to calculate the how many ohm should be R3. For example I'm having 36 3W power leds. 12x3 leds Source: 12V PC PSU LED Forward: 3.2V LED Current: 750mA I will have 9A through Q2 (IRF3205) Q1: 2N3904 R1: 110K It will be great if someone can help me. Thanks.
Jun 18, 2011. 3:29 AMwolf1728 says:
I see my website has been referenced. A month ago, the domain name 1728.com was stolen from me and so that link should no go to parallel resistor calculator
Apr 14, 2011. 8:33 AMArtemKuchin says:
I am thinking about using this schematic to power just 100mA RGB LED (pulses 1/12 of time). But the power is only 5V and Vf for blue can go up to 4V (for 20mA). So, the question is: do i have enough voltage here? As i understand the minimum voltage drop will be
V across R3 (Vbe which can be 0.7V) + drop across Q2ds which probably can be ignored because it will open fully when needed and Ron is 0.021 Ohm.
But the led Vf can be higher than 4V for 100mA and who know how much higher. But it seems like i have only 5-0.7-4=0.3V headroom.
Do you think this is not enough and i should switch to higher voltage power supply? For my project this means 12V. If so, i would probably go for switching regulator because of power dissipation on the FET.
I not even sure that with 100mA the Vf will be within 5V :( No graph for such case in the datasheet, but 100mA is allowed with 1/10 PWM. Any idea what could it be?
Apr 6, 2011. 12:15 PMoranges0da says:
I'm looking to power 1 or 2 1W LEDs with a 3.7V LI-ion battery... will this circuit work with it?
Dec 19, 2010. 6:51 PMlarams says:
Does the power dissipation of R3 depend on how much of a voltage drop there is? He says .25/R3 will tell us what wattage we need but doesn't really say where the .25 comes from. Does that formula change depending on the supply voltage?

Aug 7, 2010. 6:33 PMkjjohn says:
In the schematic, the LEDs appear to be wired in series. I have multiple 3v 700mA LEDs, but a 3.7v power source, so I would like to wire the LEDs in parallel. So do I calculate the R3 value for 700mA * the number of LEDs?
Sep 25, 2010. 8:25 PMswitch62 says:

You should not put the LEDs in parallel.  It sounds good in theory, but there is no control as to how much current each LED will draw.  You will only control the total current.  That means that if one of the LEDs starts to draw a little more than the others it could overheat and then blow.  If that happens the current in the other LEDs will rise, the circuit keeps pushing the same current, and they will all eventually die.

In your case I would recommend a separate driver for each LED.  Circuit #1 would work but may not give 100% brightness.  If you had 4.5-6V you could guarantee 100% brightness.  At a few dollars each it would be the cheapest and easiest solution.

The other option is to use a boost driver to raise the 3.7V to something higher.  The LEDs would be in series.  The required voltage would be at least Number of LEDs x LED Voltage.  So 4 LEDS at 3V = 12V  the currrent setting would be 700mA.  Unless you can find a suitable design to build you'll need to buy one.

May 4, 2010. 4:55 AMmertg says:
 Ok. I have a question about this topic. Some people posted comments about this circuit, being not so efficient. I want to ask them, how to measure the efficiency. I built this circuit with an IRF630MFP  and a C3198 from my old CRT monitor chasis.  I put 2 ammeters. 1 for LEDs, 1 for the whole circuit. If I apply 12 VDC and drive 3 PowerLEDs with 349mA, I read 351mA from the ammeter connected to the main supply. The FET is not connected to a heatsink and no heat is produced on the FET. It supplies constant current for leds. Thus can I calculate the efficiency like 349/351 ???
May 4, 2010. 5:34 AMmertg says:
I think I've missed some points. if i calcutale P_in and P_led (P_led / P_in) it becomes 3,35Watt / 4,2 Watt. Thus the circuit is 79% efficient. Is that correct?

Thank you.
Apr 11, 2010. 1:59 PMYakumo says:
@Dan
I don't know how to say it but the Instructable was a little bit confusing even if the schematics are easy to understand. Please don't get me wrong but the "parts used" and "setting the current!"-part are the most important and its kind of hidden in this much extra information. ordering the textparts a little bit different will make it easier for the reader ... I think^^
Thanks for the Instructable made me read a lot about stuff I didn't understood before oh and my LED's are actually emitting light now ^^

@Everyone who cares
I replaced Q1 with an IRF1010N (because of the lack of Fairchild FQP50N06L in the German market) and Q2 with a 2N3904 (hat too much lying around) and it works nicely
Mar 31, 2010. 2:31 PMzspzs says:

Dear Dan,
Thanks for the article!
I would like to use your current regulator to provide 5A. (For a DC motor.)
Based on the above calcularions in my circuit R3 should be 0,1 Ohm / 2,5W.
Should I modify anything else or that's all?
Can I use 2N5089 instead of 2N5088? The supply voltage is 18V.
Thank you in advance for the answer.
Peter

Feb 10, 2010. 10:31 AMOrikson says:
Hey there,

First of all, I guess the symbol for Q2 is wrong. You write, that you are using a N-channel FET, but in the scematics there are p-channel FET symbols!

Also I'm trying to build this circuit, but it isn't working as I expected. I'm tried a 100k and 1M for R1, 0.85 Ohm (5 watt) for R3 (should be around 600mA), white power LED (3,4 - 3,6V @ 700mA), BD548C for Q1 and IRL540N for Q2 because I already have them. The power supply was a regulated powersupply. I set it to 5 Volts and set the current limiter to 100 mA which I increased slowly up to 600mA.

The problem is, that the voltage wasn't regulated by this circuit! In the end the LED got 4 V at 550mA!

So where is the problem? My Q1 and Q2 seems to have nearly the same technical data, don't they?
Mar 24, 2010. 9:11 AMmjhilger says:
Q1 & R3 set up a clasic constant current supply (by def voltage will vary and is not regulated).  The base emitter junction drop is approximately 0.7 volts, as the author noted, this voltage will vary as temp varies (temp variation of diode junstion - exp of absolute kelvin temp).  The current is set by 0.7/R3.  He set the circuit to effect the gate voltage and allow the FET to regulate the power (heat), the R3 power drop is constant i^2 * r, but the FET power will depend on the current, led voltage drop and supply voltage P(fet) = (V+ - V(led) - 0.7) * (0.7 / R3).  As you noted the drop of the LED is not as listed, welcome to the real world.  This is usually a result of heat build up within the LED, but could be normal for your LED. 
While this circuit is not the most efficient from a power view, it is easily one of the best to understand and sets the current with a minimum of components.  This is a good circuit and should perform well with a wide power supply tolerance.  Just monitor the heat dissapated by the FET.
Dec 6, 2007. 7:59 PMxsmurf says:
In the FET circuit, can I dim the leds by changing R1 to a potentiometer or multi-position switch?
Mar 3, 2010. 11:25 PMgopskochi says:
cant i adjust the brightness by connecting a pot instead of R1, pls can u brief the theory behind how R3 adjust the current in the led.
Jan 6, 2008. 6:52 AMbobbyg says:
Dear dan, I am designing a light for argicultural applications I want to use 36 k2s red 700 ma 2 watt at 75 lm and 10 royal blue at 620mw 1500ma appx 7 watts I am disturbed because they are charging me almost $300 for the materials and only $100 of it is actually leds the drivers are so much I want to do a 24 x 24" box w/6" overhang where do I start?
Mar 3, 2010. 11:22 PMgopskochi says:
can i adjust led brightness by making R1 a variable resistor, also i am using a lead acid battery, which will not be connected to any charging circuits when lighting leds. will the brightness remain constant for a few hours as the battery discharges.
Feb 20, 2010. 12:15 PMosmana says:
hi all,
i want to drive 12x3w power LED's. LED's forward voltages are 3.2V. Total i need 38.4V. How can i drive it.
Jul 15, 2009. 6:09 PMsoovui says:
Dear friend,

I like to make use of this circuit for my LEDs about 18 LEDs in a row. It groups into 3 LEDs in serial and 4 parallel (3 LEDs in serial) in a row of 18 LEDs. Each LED is 1 Watt x 18 = 18watts in a row and also LED is 3 Watts x 18watts = 54 watts in a row.

Anyone can help me on what is the right resistors value for LED circuit 18watts and 54watts?

Your advise and help is very much appreciated.
Thanks and best regards,

Stuart
Jul 10, 2009. 11:56 AMalah says:
It´s good to use your brains doing something like this, but if you prefer just using your hands you can buy a simple, up to 1A controller, ( CAT4101 )for just $1.56 at futureelectronics. You will only need one resistor. Please read and UNDERSTAND the datasheet.
Mar 31, 2009. 6:47 PMgeeklord says:
Okay, so I'm tryin to figure out how this works, because I always do that. I can't decide if that's a curse or a blessing :D. So Q1's base is "monitoring" the current going through the LED's, the FET, and R3. If the current through that part of the circuit is too high, it pulls that gate of the FET low, lowering the current through the LED's. Right?
Apr 12, 2009. 7:05 PMgeeklord says:
wow, I didn't think I would receive all of that, thanks! I learned some new stuff today.
Apr 12, 2009. 11:17 AMjonathanjo says:
How It Works

The gate of Q2 is held near its threshold voltage (around 1 - 2 V) by the potential divider formed by R1 and C-E of Q1. But as the voltage on the gate rises, the resistance of D-S of Q2 falls (perhaps as low as 0.02 ohm). As that happens, the voltage on the base of Q1 rises, which turns on Q1, pulling the voltage on the gate of Q2 down. Which feeds back by increasing the D-S resistance, which lowers the voltage on the base of Q1. It reaches equilibrium quickly.

In practice, both transistors will be near their turn-on points.

I built this with the same FET (FQP 50N06L), a similar NPN (the very common 2n3904), and a single 3 W LED from Avago (ASMT-MYE0).

The FET has gate threshold of 1.0-2.5 V, the 2n3904 has base saturation voltage of 0.65-0.95 V, and the LED has a forward drop of 3.6-4.3 V, current of 700 mA. (Values from datasheets.)

If the supply voltage is enough (above the forward voltage of the LEDs + the turn-on voltage of Q1), then the base of Q1 will basically be at its turn-on voltage (measured at about 550 mV in my circuit). It depends a little on the supply voltage (see later), but mostly on the properties of Q1. It doesn't depend on R1 at all (tried a few values 100K, 150K etc).

This is the crux of the design: the voltage on the base of Q1 is held constant, R3 is constant, so the current is constant. As all the current (except for a negligible amount) is going through the LEDs, the D-S of the FET, and R3, we can control the current through the LEDs by the value of R3.

So now we know that R3 will have all the LED current, and drop 550 mV. Per Dan's calculation, a 1R resistor will give 550 mV = 550 mA * 1R, thus 0.55 V * 0.55 A = 0.3 W.

It should be pointed out that the power used by the resistor is dependent on the turn-on voltage of Q1 and the required current. The power dissipated by the FET is dependent on how much we have to drop the supply voltage to the forward drop voltage of the LED chain.

Attached below are the scope traces for 100R, 10R and 1R setting resistors. The top trace is the voltage at the gate of the FET, the bottom trace is the base of the NPN. We see some start-up bounce, then the gate falls while the base rises until they are in equilibrium. It's quicker if R3 is lower.

The start-spike for 10R is shown expanded in the fourth trace. It shows a gate voltage 'shoulder', followed by a fast rise, and damped oscillation to the supply voltage. At this point Q1 is off with Vbase at zero. With 10R, it takes a further 75 usec unti Vbase starts rising. Sorry but I don't know why that is! (Both Q1 and Q2 have switching times in nanoseconds, so my guess is that capacitive effects of the LED or the circuit in general are charging up.)

At 1R, the current should be 550 mA (confirmed on power supply) and the 1 Watt resister got warm. The FET got very hot, and the LED got finger-burning hot. (It should have had a heatsink like they told us as it has an external operating temperature of only 95 C. It lasted about 5 minutes.)

Lastly is graph of measured Vbase against Vsupply.

Hope that's of some use.

Kind regards.
Jonathan
Apr 12, 2009. 3:22 PMjonathanjo says:
Thanks Dan.

You're right of course: I've just tried it now with R1 = 12K, and it drives up the Q1 base voltage to 631mV. When R1 was 100K or 150K I got the same 550mV value.
Jan 11, 2008. 8:39 AMac-dc says:
Efficiency of this circuit is usually as bad as with a resistor. The one large benefit is the variability to different supply voltage like when batteries are used. It does not work as well as a switching current regulator, it does waste as much power as a resistor in typical uses since even one "poorly configured" is an equivalent state to just picking a different resistor. So it is indeed better than a resistor to control current as supply voltage drops but I feel we can ignore this method altogether as there's little point. Switching controllers are not expensive anymore, and smaller, and require fewer supportive parts. Switching controllers are better and cheaper, and faster to implement. Even so, it is good to be thorough showing this method, it just isn't ever the better option _today_ to power LEDs. See my prior comment for sources of the current regulating controllers for about $2 each and no time prototyping to use them.
Jan 31, 2009. 8:26 AMsmartroad says:
Valid points, although I feel you are being a bit harsh saying this can be "ignored". I am designing a circuit which doesn't need to worry too much about efficiency as it is still more efficient then the normal bulb it replaces. It has to fit into a very tight space on the circuit board and this circuit does it nicely. Most switching circuits I have seen need far more then 4 components, and also need coils and capacitors which again take up more space. So yes, if efficiency is the aim of the game and you have the space for the circuitry then don't use this circuit, find a good switcher. If you have something in a tight space with limited board area and you don't need anything more efficient then a resistor, but have an environment where the voltage can change, then this could be the kiddy. Its cheap and effective.
Jan 31, 2009. 12:00 PMac-dc says:
If the space on a circuit board is tight, it's unlikely you will have enough space to heatsink the transistors. An entire switching regulation circuit can fit within 1 sq. in, less area than is needed to heatsink the LEDs so that swamps the area difference from the regulation circuits. While you are right that it becomes more useful when the input voltage changes, generally this is a backwards approach to engineering. Instead of taking a limited purpose design and envisioning where it might be used, generally one looks at the functional requirements and THEN designs a circuit to meet those. Plus, you still had to have an input voltage higher than the sum forward drop of all LEDs in a series so once again a switching regulator makes more sense. The voltage needed to be close to the forward drop of these LEDs so there wasn't excessive heat buildup, and yet in this case the scenario of having fluctuating voltage is necessarily going to be minimized. With switching controllers costing $5 or less, or to run several high powered LEDs you have a bit higher cost for the controller but still a small cost relative to the cost of all those LEDs, heatsink, enclosure, etc. There's very little reason to use such a lossy design unless you were in a hurry and happened to have the parts in your spare parts bin. Otherwise postage will cost more than the parts.
Feb 1, 2009. 5:51 AMsmartroad says:
I for one never said I was use a power LED, in fact I am using 5mm leds and not that many of them. I have changed the FET to better meet the power and thermal requirements to not need a heatsink. Yes switching CONTROLLERS are getting cheaper, however they still need a number of support components that can push this price up fast. I didn't take this design and "envision where it might be needed", I had already decided what functionality I needed then started the hunt for a simple design that would achieve this. This one happened to fit all the needs I had plus I am able to get all the parts from my local electronics supplier on my way home from work. I appreciate that you have a passion for SMPS and high efficiency systems, however although this is a less efficient design it is simple and effective, it does what it says it does without fuss or a high component count.
Feb 1, 2009. 8:27 AMac-dc says:
In that case, yes it's a good way to cut cost with low powered LEDs, as you can't even get a typical controller with low enough current to run low powered LEDs unless they're in a parallel topology with a resistive current limiter (or separate IC for this). I was not necessarily claiming the circuit would not work acceptably with any specific purpose, rather than it is not assumed universally useful without considering the project requirements first. The component count need not be very high on a switcher though, and when I spoke of switching controllers I was speaking of the entire circuit like used in flashlight drivers, not just the IC which needs support parts, BUT these were mentioned in the context of using higher powered LEDs instead of the 100mW 2.5-10mm encapsulated type.
1-40 of 46next »

Pro

Get More Out of Instructables

Already have an Account?

close

All Steps Viewing
View all steps of an Instructable on the same page when you're a Pro Member.

Upgrade to Pro today!
524
Followers
47
Author:dan(MonkeyLectric)
Dan Goldwater is a co-founder of Instructables. Currently he operates MonkeyLectric where he develops revolutionary bike lighting products. He also writes a DIY column for Momentum magazine.