Physics Stack Exchange is a question and answer site for active researchers, academics and students of physics. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I am designing a LED dimmer using software-controlled Pulse Width Modulation, and want to know the minimum PWM frequency that I must reach to make that LED dimming method indistinguishable from variable DC current.

To dim to X% power, the led will be fully on for X% of the PWM period, and fully off for the rest, with X from 0 to 100. I am assuming that the observer can compare with nearby LEDs driven by DC current at various power (but not exactly X% power), and can move the eye (in particular look at the LEDs in peripheral vision, which, I'm told, is the most sensitive to flicker). I disregard purposefully moving one's head relative to the LEDs, which (I guess) could be an effective distinguishing method; and use of a rotating slit disc or similar technique.

I read movie projectors use 48 or 72 Hz shutter frequency (twice to thrice the frame rate) to reduce flicker to something tolerable (but quite noticeable in peripheral vision, I guess). I also read that the 50 or 60 Hz AC frequency has been chosen to avoid flicker, suggesting that that 100 or 120 Hz flicker is perceptible (but the limit could be much higher, because thermal inertia of the filament must damp variations). Another reference point is that CRT with 100 Hz scan rate have been designed, presumably with some benefit (but again that is not an indication of the upper limit).

Edit: Found this relevant post, Effects of high frequency lighting on human vision

Edit: My LED is "white", that is really blue with a luminescence converter consisting of an inorganic phosphor material.

share|cite|improve this question
as a rule of thumb, 30Hz or 30 fps will not be perceptible. – Vineet Menon Jan 3 '12 at 7:27
That's for movement. Flicker is horrible at 30 Hz. – MSalters Jan 3 '12 at 9:50
up vote 3 down vote accepted

You're correct in comparing it to the television refresh frequencies; my brother graduated on flicker research for LED televisions. You indeed need to drive your LED at higher rates. LED TV's do have flicker issues at 60 Hz. In reality, the frequencies involved are even higher: LED TVs used PWM to display intensities in the 0..255 range, by splitting the 1/60'th of a second per frame in parts lasting 1/120th, 1/240, 1/480th,... of a second. (used; some modern TVs now use more complex, less regular schemes that reduce flicker perception).

Another effect that you need to take into account is the phosphors involved in CRT's. The 100/120 Hz models have no flicker issue because the phosphors are designed to glow for milliseconds. Your LED phosphors might not be designed for that; there are quite some different variants around.

share|cite|improve this answer
Any pointer to your brother's research/thesis? And +1 for suggesting alternatives to plain PWM in implementing the dimming while increasing the flicker frequency. – fgrieu Jan 3 '12 at 17:39
US patent 6703991 – MSalters Jan 3 '12 at 20:39

Seems like you did most of the research yourself already.

However, There is one important effect that can keep flicker visible, even at 200Hz or more. And that is due to movement: leaving the trace like a dotted line on the retina, or creating the perception that the light is slightly behind the object it is attached to. This might not be noticeable for large projections (cinema), but it is ever so noticeable on point sources such as LEDs. During saccades (rapid eye movements) the eye can turn at more than 500 degrees/sec. Combine that with the high resolution on human vision (up to 2 arcminutes) and get a theoretical minimum frequency of 15KHz. If you expect the light source and observer to move relative to each other, than you could argue that this limit needs to be even higher.

share|cite|improve this answer
Yes. My "I disregard purposefully moving one's head relative to the LEDs" should be re-stated as "LED does not move relative to head of observer". – fgrieu Jan 3 '12 at 15:32

It depends on the circumstances, where in the field of view and the ambient lighting.

In bright light looking straight at it then 20Hz flicker would be barely noticable, in dark adapted corner 'of your eye' vision you can detect 60Hz - assuming the LED goes all the way off.

Regular lamps don't cause flicker at 50/60Hz because the filament barely changes in brightnes during the cycle because it doesn't have time to cool. Fluorescent tubes are notoriously 'flickery' because they do go off on each cycle.

Since you have no reason not go to high frequency (<1Khz) you might as well do that.

share|cite|improve this answer
I do have an incentive to lower the frequency: the PWM is in software, running simultaneously for 10 pins of some tiny CPU with individual dimming factor, and there are other stuff to do. From your answer and other sources I get that 60 Hz could be detectable in the dark, 1 kHz would not, but I'd like to reduce that interval. Surely that must have been studied. – fgrieu Jan 3 '12 at 6:25
Then anything faster than 50hz would probably be OK. Another trick is a single PWM to modulate the common supply to all the leds (via a switching transistor) – Martin Beckett Jan 3 '12 at 16:19

Firstly, because of the range of duty cycles used to simulate dimming, your dimmest condition is going to enhance flicker effects beyond the waveforms used in experiments traditionally used to find the flicker fusion threshold. This means you will need to treat the reference below with caution, or take a risk that your results will be acceptable, or possibly find someone with (probably) unpublished information using a similar system.

You appear to be creating 100% modulation in a lighting application (the phosphor probably won't prevent this at the frequencies you are considering using). Responses (adverse ones) still occur above the level of flicker perception up to 162 Hz (and beyond). See Berman et al 1991 Optometry and Vision Science - and consider the differences in waveform (duty cycle) and intensity. There are other factors such as spectrum and the stimulus size and location in the field-of-view, but these are probably secondary for your decision. However, as they most likely both work against your objectives, it is probably also wise to add a generous margin.

share|cite|improve this answer

There are many factors involved and while there are studies for room lighting (they found decrease in sick days when switching to higher frequencies from 50 Hz fluorescent), flicker-free TV, and effects from movement as Kris Van Bael mentioned but for your application there might be two simple workarounds:

  • For a LED dimmer you do not need to vary your brightness with a high frequency, so you can use a small capacitor in parallel with your LED which dampens your PWM oscillation so that you achieve much less flicker, even at lower frequencies.
  • You can "outsource" your PWM pulse creation to a timer chip (NE555 or similar) and your controller only has to update the PWM value, while the high frequency (1kHz or higher) is created by the external chip (examples can be found in the Arduino websites)
share|cite|improve this answer
The capacitor across the LED needs to be several uF, thus has non-negligible cost and space. Also it multiplies the inrush current (for initially loading it) by a factor of about 3, exceeding the maximum rating of my output port. Outsourced PWM is not an option for same cost and space reason. Really my only option is to raise the flicker frequency. – fgrieu Jan 3 '12 at 15:41

If to consider computer monitors, to make the mouse cursor to move smoothly one have to make it no to skip pixels when moving. Since one can move the cursor from one corner to the other in about 1/2 second and the horizontal resolution is 1920 pixels on modern monitors, this gives us about 4000 Hz. Of course on better resolution it would require greater frequency to achieve maximum smoothness.

share|cite|improve this answer
Well, computer monitors only update their image around the flicker fusion frequency, i.e. about 60Hz. So the 4000Hz is not achievable in practice (nor observable to the human eye). – Carl Brannen Apr 21 '12 at 3:55

protected by Qmechanic May 27 '14 at 13:59

Thank you for your interest in this question. Because it has attracted low-quality or spam answers that had to be removed, posting an answer now requires 10 reputation on this site (the association bonus does not count).

Would you like to answer one of these unanswered questions instead?

Not the answer you're looking for? Browse other questions tagged or ask your own question.