I'm trying to build a MOSFET driver, I am new in electronics, and specially in controlling MOSFETs. Please take a look at my schematic, are there any mistakes or recommendations?

I'm trying to create a circuit for controlling the gate of a MOSFET (IRFZ44N). For my needs, the maximum load of the MOSFET is 1A (but the driver should work fine even with higher load), and the PWM frequency is 245 Hz (5V).

Please do not recommend using a commercial MOSFET driver, I know they are cheap and easy to use. I'm trying to learn how to build one individually (for a beginner, not perfect).

Push-pull MOSFET gate driver using BJT transistors

I'll explain the schematic below, so if I do something wrong, please correct me:

  • The transistors Q2 (charge) and Q3 (discharge) are push-pull transistors, NPN is used to charge the gate of the MOSFET with high voltage (12V), and PNP to discharge it.
  • I decided to use 2 gate resistors (R3 and R2) with nominal of 100 Ohms for 2 reasons: The main reason is to reduce the current passed via the transistors, and the second reason is to split the power dissipation (charge, discharge) between 2 resistors. But probably there is not much power, so one resistor should be enough.
  • The base resistor of the BJT transistors is 2.2k ohms, which in my opinion is enough to open the transistors to charge the gate (12V/2200R*30hFE=0.16A) of the MOSFET, and also is not too low to dissipate too much power (12^2V/2200R=0.065W).
  • The capacitor C1 (100uF) is used to reduce the spikes from the fast PWM switching, and the capacitor C2 is used to smooth the power near BJT transistors (not sure if it is needed).
  • The transistor Q4 is needed to provide the ground for the transistor Q3 (PNP), because the gate of the MOSFET is charged with 12V, and the MCU is only 5V tolerant.
  • The transistor Q5 can be omitted, but I want to achieve non-inverting PWM signal.

I also built another circuit driver, with only two transistors. But in this schematic, the activation of MOSFET is slower (there is no charging transistor). The charging is made via the R8 resistor. The reducing of the resistance of the charging resistor (R8) will reduce the switching time (rising time), but also will increase the power dissipation.

MOSFET gate driver with two NPN transistors

In my opinion the first circuit is much better. The switching time is much faster and the power losses are much smaller.

Any thoughts are welcomed.

  • \$\begingroup\$ Further options for you to explore: Method one, but with only 1 intermediate stage will work as well but have inverting logic. And also: Method one with only 1 common-emitter input stage and 1 complementary common-emitter push-pull output stage: That will have non-inverting logic, but require a bit of thinking to avoid shootthrough in the output leg. \$\endgroup\$
    – tobalt
    Commented Oct 18, 2022 at 12:22
  • \$\begingroup\$ Osoian, three BJTs is the way to go (with so-called speed-ups -- R+C in series.) I'd use a collector-tied output drive, not emitter-tied. And the 3rd BJT wired in common-base with the input pulling on the emitter. It's fairly fast fast and can deliver. \$\endgroup\$
    – jonk
    Commented Oct 18, 2022 at 19:01

1 Answer 1


That's fine. And you can probably get more drive speed by reducing the 100Ω gate resistor(s); the 2.2k input side, divided by hFE (typical 100 let's say), implies a minimum output resistance around 22Ω (which the physical gate resistor(s) is in series with).

You can get even lower with setting R4 to zero, of course then the output is asymmetrical, but that need not be a bad thing. In several types of switching converters, turn-off is more urgent than turn-on.

Also consider whether it's a moot point in this case. Your load sounds like something far from a switching supply; even if L1's lead lengths are fairly long, the loop inductance will be negligible and you only have to switch fast enough to reduce switching loss -- which will be extremely low at 245Hz. (By the way, consider raising that frequency: LED lights are perceptibly flashing under certain conditions (like rapid head movement) until a few kHz.) Which is to say, reducing the first circuit to the second.

There is also the hybrid case. Note that Q4 can pull down the output fairly quickly by itself (especially if R1 is reduced), so that Q3 could be replaced by a diode (consider BAT54H, 1N4148, etc.). Q2 then is only required to amplify R5. This typically gives an asymmetrical output in the opposite direction (weaker turn-off), but again, that seems unlikely to be important in the given conditions.

As for further improvements, replacing the pull-up resistor with a PNP current source is quite attractive. The same pull-up current is maintained through most of the voltage swing, rather than just at the start and dropping off as it rises. This is enough to get into the 10s of ns range, with suitable choice of components and operating levels.

Note that, particularly for faster switching, even mere lead length will turn a load inductive. If you later apply a heavier load (maybe 5 or 10A worth), and decide to switch faster, or apply the same circuit to a more inductive load (like a solenoid, motor, etc.), Q1 will be overvoltaged on turn-off. This is easiest solved by placing a TVS diode from source to drain, across Q1. If C1 is near Q1, a diode from drain to +12V (across the load, but close to Q1 and C1) will do the same thing, with the bonus that the magnetic energy is circulated in the load, allowing efficient PWM of solenoids, motors, etc.

Or if driving a solenoid without PWM (full on/off instead), the higher voltage drop of a TVS allows it to discharge faster, and thus return to zero sooner (the electrical savings, typically a few ~ms, is usually only significant for very small armatures: small solenoid valves, fuel injectors, etc.).

Note: while IRFZ44N is rated for avalanche, the repetitive rating is quite small, and MOSFET avalanche in general is not wise to rely upon, as it causes eventual failure in many types. (I've been told some types may be immune to repetitive avalanche, but not which types, or how to identify them. For now, I assume all are vulnerable to this condition.) Thus, dumping flyback energy into a TVS, RCD clamp snubber, antiparallel diode, etc. is the best practice.

There is also an option for logic-level protected switches, which incorporates the gate driver, and protective circuitry (including repetitive avalanche capability). This is, of course, the non-answer with regards to learning about gate drive circuits; but often, wisdom is also knowing when not to use your knowledge. :)

  • \$\begingroup\$ 1. Should I be fried of frying the gate resistor with nominal of 22 Ω (for ex.: the power rating of 1206 resistors is 1/4W)? 2. By lowering the resistance of R4 (near zero) doesn't this mean that the base of PNP (Q3) will be overpowered, and may damage the transistor? Thank you for such a valuable answer, during building the device, I'll take your recommendations in consideration. \$\endgroup\$ Commented Oct 18, 2022 at 14:58
  • \$\begingroup\$ @OsoianMarcel What is the average power? What is the peak current rating of the PNP base? How much current could it be driven at? \$\endgroup\$ Commented Oct 18, 2022 at 16:11
  • \$\begingroup\$ I tested the circuit in real world with the frequency of 1 kHz. The MOSFET gate resistor can be lowered to 10 Ohms (there is not much current, so only one resistor is enough). The PNP base resistor can also be lowered to 200 Ohms (there is very low current). The result is amazing, the rising and falling time of the gate voltage is just 300 ns! All the components are absolutely cold! Thank you. \$\endgroup\$ Commented Oct 19, 2022 at 16:16
  • \$\begingroup\$ @OsoianMarcel I too am working on the same right now. It would be of much help if you can you please keep a link for the final schematic you have built and obtained the desired results. \$\endgroup\$ Commented Dec 19, 2023 at 7:34

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

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