Electronics > Beginners

How do I drive LEDs without flicker ?

(1/20) > >>

First some background:
I have been struggling with LED lights for 4 or 5 years (or maybe more...)
They usually fall in multiple of these categories:
unpractical / big / super expensive | (never bought)
awful color quality | (skin looks green/magenta, super hard to remove in post even with correct tint/WB)
too dim (the placement in my room is pretty bad so need multiple ones anyways but that’s fine)
flicker, flicker, flicker, I like to make nice videos and I like to be creative with my framerate and shutter angle
They just die very fast due to probably overheating?

What I plan to make:
Custom celling lights!
Decent quality (~95 Ra ~90 Re) light
High Brightness
Underdriven LEDs on a big heatsink (should increase the life massively)
RGB-whatever for casual party (and red to keep nightvision)
basically a overkill light I can enjoy and fix for many years to use both as a room light, recording light (well, from above at least) and other purposes
everything should be dimmable (more below).

What I have:
bunch of designs, tests
Basically got the heatsinks/frame figure out, as well as Decent Quality LEDs, basic idea of the software, what features I want, over-whatever protection, both software and automatic (like fuses, other things)

What I don’t have:
didn’t order many parts (more below)
a working LED driver ☹ (more below)
fan-less power-supply (I’ll deal with it last myself, don’t worry about it)

So basically
First thing I went for is well, googling, after hours of looking at sold out super expensive chips , I resorted to ask on random discords, everyone suggested PWM, but I feel like that would flicker pretty badly? (please tell me)
later someone suggested using lm2596 CC CV module like THIS looking at this diagram from some weird website LINK it shouldn’t flicker? It’s only 300mV at 48kHz (also I would use max 1A per module)

I already had one and bunch of 5W leds, so powered them up on nearly max (mistake), pointed my camera (120fps 8.6°) and didn’t find any flicker also made sure they can deliver 1A over long time while being pretty insulated (they got warm but not really hot)

So instead of using a trimmer to set the voltage and current, I set the voltage using trimmer and used a MCP 4461-103E/ST MCP 4461-103E/ST digital potentiometer for current (ordered 8, needed 6 to power 1 light)
took me about 6.5h to write a working I2C code… oh well
so I pointed my camera at 5W LED and used I2C to change the potentiometer wiper position (because the potentiometer controls the current to the LED) and well, it flickers, badly

I repeated the experiment with unmodified lm2596 module, used pots to set the current lower and lower… the flicker appears, gets worse and worse. So I feel like lm2596 is dead path? Please let me know!

I’m pretty sure I can throw these chips away (put into “forever” parts bin) which well, my fault, didn’t test enough but kind of unfortunate ☹

But anyways, what options do I have? How do I dim a light without flicker, I feel like even at 1MHz there will be flicker (let’s say I rented phantom v2512 and shot video at 500k fps and 10° shutter speed, for whatever reason) isn’t there another way than PWM? Or am I just wrong?

For white leds (majority) I don’t really need “infinite” brightness levels, I’d say 10 is ok, but seamless would be even better. For RGB it’s a must because of mixing.

Also I would prefer something “easy”, I do not have 100’s of euros to just prototype and find out 99% does not work. My budget for the project was 200€ per light, but would end up at around 300€ (the drivers were 30-40ish euro I think)
The leds I wanna use are 23V 300mA (would limit to 225mA) cool white + warm white in 4x4 matrix so 32 LED dies but was thinking to put them in 2x pairs (I know one should not do this) (plus like 5 rgb ones in the middle…)

What options do I have?, Please help !
note: by flicker i mean anything from visible turning on-off to weird bands on the walls or similar. when i test with sunlight or battery and resistor, i do not get that

you need a current mode driver. a LINEAR one, not switching.

Can i have an example please? also how would i change the current with a microcontroller? (i.e. get dimming working)


--- Quote from: pigrew on March 15, 2022, 11:07:11 pm ---For low/no flicker, you need a constant voltage across the LED (PWM won't work). It's preferred to supply an LED with a current source vs a voltage since since the intensity is a much stronger function of current and not voltage.

Switching converters, with enough filtering, should work well (assuming the ripple current is small enough). You might be able to get the 'flicker' down to a few percent of amplitude change.

What you have, a LM2596 module, is a voltage regulator module, but what you want is a current regulator. With that module, you'd need a series resistor to form a "poor-man's current regulator". Sufficient output capacitance is also required, though I expect your module already has that. Provide more details about the particular LED you have (what's its max current, forward voltage range, model number, etc) if you need help determining a reasonable series resistor value. The resistor itself will burn a lot of power, so needs a sufficiently high power rating. If you don't have a series resistor when using that module, I'd guess that the module is hitting an over-current fault condition and causing flicker.

If you need higher efficiency, use a switching converter IC designed for powering a high-power LED, such as LM3402 or LM3406. With these, a capacitor can be added in parallel to the LED in order to reduce the ripple and/or higher-value inductors. With these controllers, the brightness can dimmed based on an input PWM signal.

An oscilloscope may be useful, to be able to measure the LED's voltage ripple.

Also, as free_electron said, the BEST would be using a linear regulator. You'd likely use a DAC (or filter a PWM signal) as an input to an op-amp with a nFET or NPN output transistor, and feedback through a current sense resistor.

(I don't have experience with filming LEDs, so I could be a little wrong.)

--- End quote ---

Hi, here is the link https://www.aliexpress.com/item/1005003210480731.html they aren't amazing, but decent, the quality is decent

I sadly do not have a scope, storage is premium and pc/handheld ones arent worth it in my opinion

well, also i need to controll it with micro so i can get my brightness adjustment. and i have no idea how to achieve that... 4x4 leds each with 2 channels... so that's 32 leds, 16 if i group then

I dont really care about efficiency... the amount of leds i would use is MAX 170W, so burning like 30W or 50W or whatever in inefficiencies is fine

is there some easy proof of concept i can make/buy and test? 23V 225mA or 23V and 450mA (or maybe someone can do me a favour...)

I really dont know what's best / works, so i'm happy to use whatever you guys offer...

You can build a constant current source pretty easily, if you have the digital potentiometers, you don't even need to order many more parts.

look at this basic schematic: https://tinyurl.com/yc9kgv2s
The potentiometer acts as a voltage divider to provide a voltage reference between 0 and 5 volts. The op-amp uses that voltage and a reference resistor (100 ohm here) drives the MOSFET so that the output current equals reference voltage/reference resistor (here it would be from 0 to 50 milliamps (5v / 100ohm) ). All of the unused voltage will be applied across the MOSFET, which will heat it up, so make sure to use a heatsink and add as many LEDs in series as possible (to calculate that subtract the max reference voltage (5v) from the supply voltage (12v) and divide by the maximum voltage of the LEDs at their peak current).

If you have time, it'd be worth replacing the voltage source with a boost converter which allows for fine adjusting the voltage, so that the heat dissipated in the MOSFET is always minimum. To do this, just measure the voltage drop across the MOSFET with a differential op-amp that connects to your micro controller's ADC. then use another digital potentiometer to adjust the feedback resistor of the boost convertor so that the voltage across the MOSFET is a low value (for example 500mV). Here is an example of how to do this: Adjust your brightness and set the voltage source to its maximum output value (let's assume 12v). Then measure the voltage between the drain and source of your MOSFET (using differential amplifier connected to ADC).  Assume it reads 2 volts, but you want it to be 500mV, so you need to lower the voltage source by 1.5V (12 - 1.5 = 10.5).


[0] Message Index

[#] Next page

There was an error while thanking
Go to full version