Electronics > Projects, Designs, and Technical Stuff

Critique my LED PWMer

(1/6) > >>

So I have a few LEDs that I'll be running at 1-amp so that they meet their characterised spec (i.e. wavelength of light) but I want to run them at low brightness/power.

So I've come up with the following schematic which I think will achieve that. Every 6.66 milliseconds (i.e. 150Hz) it will turn the LED on for anywhere between 1 microsecond and 256 microseconds.

I expect there might be some slight inaccuracies ~10% at low brightness, like for the 1 or 2 microseconds pulses, because of the turn-on time of the MOSFETs and LEDs, but I can live with that.

What do you think? Have I done anything bone-headed?

Links to semiconductor datasheets:
MCP1404: https://ww1.microchip.com/downloads/en/devicedoc/22022b.pdf
SSM3K345R: https://toshiba.semicon-storage.com/info/docget.jsp?did=55842&prodName=SSM3K345R

Your circuit is pretty straight forward, not much to go wrong. I assume you chose the resistors to match the different voltage drops of the LEDs, and 150Hz should be above noticeable flicker. Is it wise to use the Tx pin? Is that used for serial coms? Might want to keep that free if it is.

Nominal Animal:
I'm only a hobbyist, so I cannot say anything about your circuit, really.  The reason I'll annoy you with my opinion, is that I've got a couple of DIY LED lights (a floor-standing reading light) I'd like to dim, preferably down close to zero output if desired, but have it be silent (since I like quiet when reading; any buzzing annoys me), so perhaps my real-world observations may help.  If not, feel free to ignore!

For a stroboscopic effect, 150 Hz is in my opinion borderline, possibly problematic.  When tired, I can definitely perceive the 100 Hz flicker from fluorescent lights, and it is not only annoying but occasionally causes headaches.  Although the frequency is higher, the relatively large dead time between pulses may make it more observable.  Furthermore, the switching frequency most likely yields audible noise.

(I do understand that my preferred solution, something like TPS61169 which LCSC has TPS61169DCKR (SC-70-5) in stock for under $1 USD apiece as of 2021-10-17, will probably not work for you, since your duty cycle varies from 0.015% to 3.88%, and these typically don't go that low; I think TPS61169 practical minimum is something around 1-2%.)

150Hz probably won't cause a visible flicker, but there's really no reason to not use a few kHz or more instead. Add 10 ohm or so resistors in series with the MOSFET gates to prevent ringing. Add 10k pulldowns on the MOSFET driver inputs to prevent spurious operation during boot. The decoupling capacitor seems quite small so make a provision to fit a bigger one instead.

If you're making a PCB, add (spots for) extra channels on each PWM capable pin if space allows even if you have no immediate plan to use them. Break out all other remaining pins to test points. You might want to think about provisions for improvements like a spot for a light sensor and different options for the power input connector. Remember that you pay for board area and not the "complexity" of the board given the same number of layers.


--- Quote from: robzy on October 17, 2021, 08:52:59 am ---Every 6.66 milliseconds (i.e. 150Hz) it will turn the LED on for anywhere between 1 microsecond and 256 microseconds.

--- End quote ---

If it's for illumination all of those short on times at 150 Hz would be very visible and annoying, - to me.


[0] Message Index

[#] Next page

There was an error while thanking
Go to full version