18
\$\begingroup\$

I want to control LED's brightness with PWM (via BJT transistor). What frequency of PWM should I choose?

\$\endgroup\$
  • \$\begingroup\$ Between 70 and 200 Hz. \$\endgroup\$ – starblue Aug 18 '13 at 12:27
  • 2
    \$\begingroup\$ @starblue "Between 70 and 200 Hz." - 70Hz produces visible flicker to many people, and very visible flicker to virtually everyone if the led (or the observer) moves. Please, use a higher frequency than that. I'd recommend 200Hz as a minimum. \$\endgroup\$ – marcelm Oct 23 '16 at 19:22
  • \$\begingroup\$ @marcelm Yes, it is probably a better idea to go as high as practical, to get the most pleasant light. I'm now using 1kHz for an RGB light, a hobby project. Even then you can see the PWM as stripes when you quickly move the eye, but IMHO that's not really a problem. \$\endgroup\$ – starblue Oct 26 '16 at 11:55
22
\$\begingroup\$

For a question like this, you will probably get as many answers as there are people interested in answering. Here is my answer: It depends.

Here are some of the limiting factors, first the lower limits:

  • Persistence of vision:
    • Different people are differently sensitive to flicker in a light source. Some would notice flicker even at 100 Hz, others perhaps not even at as low as 10 Hz.
    • Motion of light source relative to the eye makes flicker more discernible, scaling up with speed of the motion.
    • Human vision sensitivity at low intensity of light - both ambient and source intensity. At very low intensity, the eye is much more sensitive to any change in intensity. So an LED operated at low duty cycle / low current and in a dark environment would require a higher minimum PWM frequency.

Now the upper limits:

  • LED turn-on characteristics: An LED cannot be toggled at arbitrarily high frequency, once the pulse duration approaches the turn-on time, the LED never really turns on fully, hence linearity of PWM control is lost to begin with, and at higher frequency / shorter pulses, eventually the LED just stays dim or off.
  • PWM provider capabilities: Your microcontroller would have its own maximum PWM rate, which sets a hard limit.
  • Switching losses: Any switching system, MOSFET based, BJT based, or other, suffers switching losses of power as switching rate increases. At one point this become significant both in terms of heating of switching device, and efficiency of illumination.

Thus, depending on these parameters, and any others affecting your specific requirement, the correct answer could be anywhere in the 50 Hz to few dozen KHz range.

| improve this answer | |
\$\endgroup\$
  • 1
    \$\begingroup\$ Human Vision "refreshes" (the Flicker fusion threshold) at minimum 50hz to 60hz. Flashing 10hz would be visible to anyone short of the blind... \$\endgroup\$ – Passerby Aug 18 '13 at 18:23
  • 2
    \$\begingroup\$ @Passerby No, there are several conditions which do not count as blindness but which cause flicker threshold reduction. The common cold is one such. I have been part of a human vision study where flicker thresholds down to 10 Hz were found in several participants. \$\endgroup\$ – Anindo Ghosh Aug 18 '13 at 22:13
  • \$\begingroup\$ I am currently experimenting with dimmable LED lights installed in a living/eating area indoors. Setup right now is a LED dimmer Leviton and dimmable LemonBest 4W LED spot light. At lower dimmer settings there is a bad flicker. It's at 120 Hz (2 zeros per wavelength) and it generates a stroboscope effect. (You can see the flakes of grated cheese falling on food; not very nice believe me). \$\endgroup\$ – ritter Apr 29 '15 at 19:15
  • 3
    \$\begingroup\$ @Passerby: our eyes don't work like monitors. Not only does the response time differ between cones and rods, but it differs between different areas of the retina and between varying light levels, and then to add to it, we ultimately don't see with our eyes but with our brains. \$\endgroup\$ – whatsisname Jan 24 '17 at 6:57
  • 1
    \$\begingroup\$ I doubt your assertion that some people cannot discern flicker down to 10 Hz. They would have a serious vision impairment if they cannot even detect 25 Hz motion flicker in cinema. Enhanced Peripheral flicker detection is useful when driving a car to detect and avoid collisions starting from the side ( kids running towards street) or cavemen seeing attacking animals for self-preservation reasons. @AnindoGhosh Did you want to back this up with a reference? or personal experience? I suggest 1kHz minimum >3kHz is better. Your answer neglects peripheral enhancement of perception. N.B. \$\endgroup\$ – Tony Stewart Sunnyskyguy EE75 Nov 28 '18 at 17:05
8
\$\begingroup\$

It depends entirely on the application and human eye natural sensitivity to flicker when the light is moving or when your eye is moving with peripheral sensitivity improved to flicker, while steady-state peripheral vision declines.

Cadillac was one of the, if not THE first car to introduce LED brake lights and we as Engineers wonder how this missed this major detail.

People would say why is that car brake light flickering as it was driving past our view? It was so irritating to some with Seizure sensitive to flicker, that it could trigger an "episode".

Since we have house LEDs stationary we, don't often care yet we know something is irritating to some people. This is often because Engineers don't know much about Biomedical responses and think 150 Hz is OK, because they can't tell anything staring at it. That's because it requires motion artifact to detect the flicker or moving images across the retina peripheral.

The range of frequency I would suggest is 300 Hz minimum for stationary and 1kHz minimum for moving flicker-free. Although the industry has been slack with 300 Hz and peripheral eye motion flicker-sensitivity still exists at this flicker rate in moving tail lights.

White LED phosphor responds much much faster than TV tube phosphor.

If you don't care about my concerns, feel free to follow the others' advice at lower frequencies.

I looked for references to back up my experience. This is just one example. http://www.thenakedscientists.com/forum/index.php?topic=45126.0

| improve this answer | |
\$\endgroup\$
3
\$\begingroup\$

As I've seen, almost all of the PWM dimmer diagrams with LM555, have the oscillating circuit formed by a 0u1 capacitor and a 1k resistor. That means something about 2 kHz with slight variations at low and high widths. I think this frequency offers enough switching speed in order to not see bad flickers on moving and, on the other hand, slowly enough to turn on the LED al low width. I wanna try higher frequencies to see what happens (5...10 kHz)

| improve this answer | |
\$\endgroup\$
3
\$\begingroup\$

Agree with those above on the low end, but on the higher end of frequency spectrum, you can sometimes hear an audible switching if you are in the 1k-15k range. You'll want to stay out of the audible range or you can potentially hear a high pitched noise at your PWM frequency.

| improve this answer | |
\$\endgroup\$
0
\$\begingroup\$

If you put a capacitor parallel to the led you should be able to avoid the flickering and instead get a slight declining wave, or ripple. The higher the frequency, as well as longer 'on' pulse width will give the most consistent light.

Choice of frequency now depends more on how many different widths you wish be able to squeeze into a cycle, or intended dimming resolution so to speak.

| improve this answer | |
\$\endgroup\$
  • \$\begingroup\$ Wouldn't the cap act to smooth the pwm signal? Instead of the LED being fully-on and fully-off, it would be continuously on with a lower forward current.. as if pwm wasn't be used at all? My understanding was one benefit of the pwm approach was to maximize LED efficiency by avoiding just such a situation. Or is the situation different if you use a sufficiently small cap? \$\endgroup\$ – apraetor Apr 29 '17 at 17:01
  • \$\begingroup\$ Yes you are right, it'd smooth the signal, "ideally" as if there was no pwm used at all. The reason I suggested it is that I would want to avoid the on/off flickering since it sometimes affects concentration. I did not reflect on maximizing efficiency . \$\endgroup\$ – Nikke Apr 30 '17 at 18:40
  • \$\begingroup\$ Reducing the forward current through an LED is ineffective and certainly not the "ideal" way over PWM. Most LEDs characteristics are rated at full forward current, and these will drift out of specification as the forward current drops. For example, in high-power white LEDs the color temperature will change as the forward current drops. This is why most LED manufacturers recommend PWM as the method of dimming, the LED stays in it's ideal region of operation. \$\endgroup\$ – jduncanator May 15 '17 at 2:43
  • \$\begingroup\$ Pardon the n00b question here, but would one be able to use a capacitor in parallel to an entire strip of LED to achieve the same result? How does one determine the size of said capacitor? \$\endgroup\$ – Rob de Jonge Oct 11 '18 at 2:12
  • \$\begingroup\$ I have the problem that I get audio noise from the power supply coil at hearable frequencies (like 10kHz). I changed the frequency to the full 31.25 kHz of Timer0 from a AtTiny85 at 8MHz, but I'm not sure what the maximum supported PWM frequency for a 5050 SMD LED is. It seems to work, but I'm not sure if it's in the safe specs of the LEDs. \$\endgroup\$ – needfulthing Jun 4 '19 at 16:04
0
\$\begingroup\$

There is research that suggest the majority cannot distinguish past 500Hz, and some other research that suggest a minority can see flicker up to 1500Hz. I have a housemate who is very sensitive to flicker - 1Khz caused them problems but had no further problems once my lighting system as set with a 4kHz PWM frequency.

(apologies I read it some time ago and cannot find the reference now)

Note my application was soft lighting for the whole room, so peripheral visions would definitely be an issue.

The limiting factor is really the rise and fall time/resistance of your mosfets as this will dictate switching losses in relatively high current applications. Fast low resistance fets are worthwhile in this application.

| improve this answer | |
\$\endgroup\$