# Calculating MOSFET gate current at certain PWM frequency

I want to power the gate of an IRLB3034 MOSFET by a PWM output from an arduino. I know that the current required to charge the gate increases, the higher the switching frequency is. With 5v powering the arduino, and a 490Hz PWM signal, what will the required current? The max current from an arduino pin is 40ma, will I need a transistor to power the MOSFET gate? The MOSFET will only be switching a 2A load.

• Not only the switching frequency is important, but also the desired minimum and maximum duty-cycles when operating, since you're using PWM. These specifications lead to the determination of turn-on and turn-off times for the MOSFET (what is really relevant at the end). – Dirceu Rodrigues Jr Sep 19 at 20:15
• What is the load, and what is its supply voltage? – Bruce Abbott Sep 19 at 21:19

You should first put a gate stopper resistor, $$\R_G\$$, to limit the current drawn from the MCU's pin when turning the MOSFET on (remember that there is a large capacitor, $$\C_{iss}\$$, at MOSFET's gate, and it may draw a large current even for a short time when driven from a low-resistance source).

This resistor and the input capacitance of the MOSFET also form a 1st order LPF having a cutoff frequency of $$\f_C = (2\pi \ R_G \ C_{iss})^{-1}\$$. Since a PWM is the case, $$\R_G\$$ should be selected such that $$\f_C\$$ can be at least 5 times the PWM frequency, to prevent the PWM signal will not be chopped off at the gate of the MOSFET:

$$\mathrm{ f_c = 5\cdot490Hz \approx2.5kHz < (2\pi \ R_G \ C_{iss})^{-1} \\ 2500 < (2\pi \ R_G \ 10nF)^{-1} \rightarrow R_G\leq6.3 k \Omega }$$

This resistor will limit the instantenous current drawn from the MCU's pin to less than 1mA.

As BeB00 suggested, it would be better if you use another NMOS with lower gate charge and input capacitance.

If you really worry about the MCU's pins and cannot trust the gate stopper resistor then you can put a totem-pole before the MOSFET:

simulate this circuit – Schematic created using CircuitLab

This configuration significantly reduces the current drawn from MCU's pin.

• I dont think your resistor maths is correct, it should be around 6k – BeB00 Sep 19 at 21:24
• @BeB00 ops, thanks. Fixed. I can't fix the value in the schematic because I'm on mobile. Please fix it in my post, if you can. – Rohat Kılıç Sep 19 at 21:41

The gate capacitance is around 10nF, so if you add a 500 ohm resistor (limiting the pin current to 10mA), the switching time will be around 10-15us, which should be fine for your application. This mosfet is pretty over-spec for what you want (it can switch hundreds of amps), so maybe you could choose a less powerful transistor with a lower gate capacitance.

• This capacitor is pretty over-spec You probably mean: This MOSFET is pretty over-spec. I agree that this MOSFET is overkill, use an IRFX44 or even an AO3400 (tiny, SMD but can switch 5 A) is more than good enough. – Bimpelrekkie Sep 19 at 20:00
• yup I changed it – BeB00 Sep 19 at 21:03

You left off how rapidly you want the thing to switch. I'll assume that you want to switch in around 1% of the total PWM time (so, $$\20\mu\mathrm{s}\$$) -- adjust my answers up and down based on what you really want.

With 5v powering the arduino, and a 490Hz PWM signal, what will the required current?

That transistor has a maximum total gate charge of 160nC. To charge a total charge of $$\q\$$ in $$\t\$$ seconds, you need a current of $$\q / t\$$. So, $$\i = 160\mathrm{nC} / 20\mu\mathrm{s} = 8\mathrm{mA}\$$.

The max current from an arduino pin is 40ma, will I need a transistor to power the MOSFET gate?

You can do this from your Arduino pin. Normally you'd want a gate driver, but one of the suggested transistor circuits would work to speed things up.

The MOSFET will only be switching a 2A load.

That thing is good for almost 200 amps with proper heat sinking!! You do realize that you could use a much smaller transistor, yes?

• Yes, I know that, however it is all I have at the moment. Also, I will be using a duty cycle of about 64% – ladiesman217 Sep 20 at 18:09