High power high freq PWM from a 3.3V port?

Hi
I've been looking for a way to drive a load with 20 kHz PWM - 3A / 15V controled by a 3.3V µC but did not succeed. I've seen a lot of drivers (gate driver/Mosfet combi) but none of them can run at 20 kHz, so if any of you have a suggestion it is very welcome. It must be a high side / common ground konfiguration.

(I'm looking for a way to drive and dimm a series of LED's)

The ESP32 has 2 ways to generate PWM.

The LED PWM and the MCPWM modules accessible through the ESP32 API. API Reference - ESP32 - — ESP-IDF Programming Guide latest documentation.

The LED PWM can:

The LEDC can be used for generating signals at much higher frequencies that are sufficient enough to clock other devices, e.g., a digital camera module. In this case, the maximum available frequency is 40 MHz with duty resolution of 1 bit. This means that the duty cycle is fixed at 50% and cannot be adjusted.

The MCPWM can be ran at 1/2 the peripheral clock speed, 80Mhz/2.

I have used both the LED API and the MCPWM, works great lasts a long time.

Good luck with your hardware search.

Thanks :slight_smile:

The esp32 is exactly the one I'll be using :slight_smile: - now hoping to find a good way to generate the 3A at 15V :slight_smile:

You probably want a logic level N-channel MOSFET. Or you may try a NPN Darlington transistor but it will have to dissipate about 3 W which is quite a lot.

20 kHz is not so high frequency.

Hi,
Welcome to the forum.

Please read the post at the start of any forum , entitled "How to use this Forum".
OR
http://forum.arduino.cc/index.php/topic,148850.0.html.

What is the load?
Is it inductive?

Thanks.. Tom... :slight_smile:

wittrockvita:
I've seen a lot of drivers (gate driver/Mosfet combi) but none of them can run at 20 kHz, s

This driver can work at 100KHz - https://www.mouser.com/datasheet/2/268/21946B-277918.pdf

alesam:
This driver can work at 100KHz - https://www.mouser.com/datasheet/2/268/21946B-277918.pdf

I looked at these drivers but they are categorized as low side drivers and I have therefore not given them any more attention. However, I have now come to think about whether they can be used to drive the gate on a P-channel mosfet as a high side, but I do not have enough knowledge about mosfets to use them and can not find any application notes about it. Is there anyone who can help me with that?

You can do this:
Use an NPN transistor is the buffer to pull the Gate of a P-channel MOSFET, like NDP6020, low to turn it on.
Use a resistor to pull it high to turn off.
Only need to go from 15V to 10V to be fully on.

CrossRoads:
You can do this:
Use an NPN transistor is the buffer to pull the Gate of a P-channel MOSFET, like NDP6020, low to turn it on.
Use a resistor to pull it high to turn off.
Only need to go from 15V to 10V to be fully on.

I don't think it will work at 20 KHz due to the large gate capacitance of the mosfet - it has to be actively pulled up.

wittrockvita:
I've been looking for a way to drive a load with 20 kHz PWM

I'm looking for a way to drive and dimm a series of LED's

Might have to go to DC dimming of a switching LED driver,
because basic 8-bit dimming with 20kHz PWM is already > 5Mhz (20000*256).
Or, a dim level of 1/256@20kHz is a ~200 nanoseconds wide pulse.

Why don't you give us all the details.
Is this one LED string, of how many LEDs, or more strings in parallel, or a COB LED?
Leo..

If I'm applying my math right, a frequency of 1/(2xPixRxC) Hz can be achieved with 1K pullup and the 1590pF gate capacitance:
1/(2 x 3.14159 x 1000 x .000000001590) = 100,097 Hz, 5 times faster than needed.

Hi,
What is the application?
Is there a specific reason it has to be high side switched?

There are high side drivers.
Google

high side mosfet driver

Tom... :slight_smile:

@CrossRoads: You are not applying the math right. OP is driving a MOSFET, not trying to construct a low pass filter. To reduce switching losses you need to have the MOSFET in linear region for only a very short fraction of time.

OP: Why do you need high side switching? In general low side is better in every aspect.

CrossRoads:
If I'm applying my math right, a frequency of 1/(2xPixRxC) Hz can be achieved with 1K pullup and the 1590pF gate capacitance:
1/(2 x 3.14159 x 1000 x .000000001590) = 100,097 Hz, 5 times faster than needed.

RC Waveforms and RC Step Response Waveforms

You're right - sorry. I didn't calculate it before assuming.

Smajdalf:
OP: Why do you need high side switching? In general low side is better in every aspect.

I need the high side mode because I need a common ground.
@TomGeorge and others: I have to drive several strings of LEDs and all strings have to be connected to common ground. Therefore, low-side switching cannot be used (just as the dedicated LED drivers cannot because they are all low side drivers).
I have looked a lot at high side drivers but have not been able to find one that fits the purpose.
The solution I like best is to use e.g. a TC4423A, but I do not know if it can be used to control a p-channel mosfet in high side mode - can you help me to clarify that?

So why the 20kHz PWM.
Is that a number from a magician's hat?
How low do you want the brightness to go.
How do you control LED current.
Leo..

Wawa:
because basic 8-bit dimming with 20kHz PWM is already > 5Mhz (20000*256).

The ESP8266 PWM is 10 bit.

wittrockvita:
Hi
I've been looking for a way to drive a load with 20 kHz PWM - 3A / 15V controled by a 3.3V µC but did not succeed. I've seen a lot of drivers (gate driver/Mosfet combi) but none of them can run at 20 kHz

A gate driver chip into any standard MOSFET will handle 20kHz no problem, and be drivable from
3V or 5V logic.

Don't bother trying to roll your own with a transistor, go straight to a chip designed for the purpose,
a low-side MOSFET driver. My go-to device is the MIC4422 as it will drive any size MOSFET and is
available in through-hole. I'd run the 15V through a 7812 12V regulator to power the driver chip,
so that you can use a non-logic-level MOSFET.

MOSFET driver chips need proper decoupling, 1--10uF ceramic less than 10mm from the chip is going
to work. Keep the wiring between driver and MOSFET short.

RIN67630:
The ESP8266 PWM is 10 bit.

OP is using the ESP32. Could also be 10-bit PWM.

MarkT:
A gate driver chip into any standard MOSFET will handle 20kHz no problem, and be drivable from
3V or 5V logic.

But 20kHz PWM is not always a pulse width of 50us. Only at 50% PWM.
20kHz 10-bit PWM has ~50ns wide steps.
Leo..

ESP32 PWM LED API 13bit.

ESP32 MCPWM API 32bit.

See ESP32 API.