Selecting one or many LEDs for constant-current driver?

I'd like to build a flashlight with several LEDs, perhaps different colors, perhaps different beam characteristics, and allow the user to select one or more of them to be active at once.

With primitive electronics, this is simple: Each LED gets its own current-limiting resistor in series with it, and then all the LEDs with individual switches go in parallel across the power bus.

But I'd like to use a constant-current driver (buckpuck or similar) for better efficiency and stability across varying input voltages. This means the LEDs should be in series. To take one out of the circuit, I'd simply short across it, bypassing it so the current still flows through the other(s). This is pretty simple with two LEDs, as I could use a center-off toggle switch to short A, neither, or B. But if I try for three LEDs in series, the logic of allowing any combination to be bypassed *except* all of them (because a dead short would damage the driver circuit) quickly gets complicated.

Is there something simple I'm overlooking? Or do people simply avoid doing it this way for this reason? (The obvious solution is to use a constant-current circuit for each LED and run them all in parallel, but that gets expensive in a hurry!)

sort by: active | newest | oldest
Have you looked at switched led drivers such as LM2756 or TLC5940? (capacitor or inductor variety) You would have to use a microprocessor of some sort to control them, but that would also solve your problem of turning any combination of leds on/off.
You have a great idea, shorting one LED and letting a constant current circuit manage the current flow. If buckpuck is a switchmode device running in a constant current mode (I'm not familiar with buckpuck), shorting across an LED to turn it off will cause it to change its output voltage via changing its operating characteristics (likely internal frequency or pulse width) (great for efficiency) rather than just increasing the dissipation in an output pass transistor (bad for efficiency). Find out what's inside. Here's another idea for increasing efficiency: Pulse the LEDs rapidly with a low duty cycle square wave. Turn the LEDs on for a small percentage of the cycle, off for a large percentage of the cycle. The eye perceives brightness as peak illumination, while total power used is an average over time. A low duty cycle square wave gives high peak (for high brightness), but low average (for efficiency) power draw. Pulse the LEDs fast enough that persistence of vision takes care of the off time. A cheap LM555 can generate a variable pulse width, and will drive LEDs well. This is the reason flashing bicycle tail lights run so long on a set of batteries - they're on only briefly; they're off, most of the time. How to integrate, how to use buckpuck to limit square wave current only during the on times? Maybe buckpuck has an output enable; maybe the output enable wouldn't mind being toggled on and off by the LM555 several dozen times per second. Or maybe it would hate it, based on the loop characteristics of the feedback for the constant current control.
Myself (author)  GiveItSomeThought10 years ago
The buckpuck is a current regulator, with integrated PWM brightness control. There's no need to do your own offboard PWM. My plan with switching different LEDs in and out is to change the beam profile, with a wide-angle optic over one LED and a flood optic over another LED, then there'd be no need for mechanical focusing. I think my solution is just to use a separate driver for each LED.
kadris310 years ago
every commercial light made uses current limiting resistors. the trick is to have 3 similar LED in series w one current limiting resistor across 12vdc. for white, green. blue, and uv it would be 100 ohms. if ur using 13.8 where a charging circuit is involved, u need 180 ohms. with red,yellow, and amber(orange) u can series 4 bulbs and 180 ohms or 5 in series and 75 ohmson 12 vdc.for a charging circuit on when the LEDs are it's 270 ohms for 4 and 165 for 5. in all probability the small current limiting resistor dissipates far less power than any regulator circuit. if u put 1 LED across 12 vdc w a 680 resistor, the opposite is true. on ur circuit board have a solid trace down the left side (negative), and a solid trace down the right side (positive). place isolation pads(squares) in the middle for connecting LEDs, resistors and switches. simple and workable. also the most efficient. good luck. lite the world. X
photozz10 years ago
Well, constant voltage is easy with a 7805 power regulator. as long as the batteries can deliver enough current to drive all the LED's together, eliminating one or two should not affect how much current is delivered to any particular LED. they will only draw as much as the LED and resistor combo will allow. I would not wire in series. I would wire in parallel with a separate resistor for every LED. Then have the switches add or remove LED/resistor combinations as needed. This will then only change the amperage required, not the voltage. Check the drawing below. sorry about the crudeness. it's time for lunch and I'm in a hurry.. ;)
Myself (author)  photozz10 years ago
Right, but efficiency is my goal here, and linear regulators are the exact opposite of what I'm going for. I could try a constant-voltage switching regulator with small resistors, I suppose. I was just attached to the idea of constant-current regulators because it means I wouldn't need current-limiting resistors (i.e. power-wasters) at all.
photozz Myself10 years ago
Gar.. OK. I see. now it gets complicated. :) and.. would three or four constant-current regulators be more efficient than the resistors? or would all the extra hardware just draw the same amount of overhead, not to mention cost. I guess I would have to check if a 7805 draws any current when there is no load on the output. If not, it might just be simpler in the long run to go with the resistors, or a single resistor before the selector switch.
Don't use multiple regs or LDO's/Bucks. Two solutions exist. A) Use a LED Segment driver. These have multiple 'channels' to driver seven segment or more LED's. Get the correct current rating for your LED's you can even vary R for Red to White for various Vf. B) with identical Vf, mA ratings of LED's use a BCD rotary switch or a optical encoder with Gray code or BCD. Even more complex is a PIC MPU with microcode for I/O drivers to enable multiple LED's in "combos" via one button. i.e push one for white, again for Red and thrid time you get both white/red, next click you get RGB etc... Another low power low tech solutions is a "revolving head like on a Mag Light that has 'contacts' inside for various positions for each LED. as you turn the head the contacts touch and each LED lights in turn from the Buck and via it's own resistor...all "mechanical"... see me for sketches...
Myself (author) 10 years ago
So, an EE friend of mine found this after I posed the same question to him a few days ago. Posting it here in case anyone's still pondering this: LED Balancing Circuit With Power Limit
westfw10 years ago
Note that constant current regulators are no more efficient than constant voltage regulators with a current-limiting resistor UNLESS you're using switching regulators. I dont' think I've seen many flashlights that allow large numbers of combinations of which LEDs are on or off. Usually there are small numbers of fixed configurations...