Skip to content
RFrftools.io
Motor ControlMarch 18, 20266 min read

How Much Power Is Your H-Bridge Wasting? Calculating MOSFET Losses in Motor Drivers

Learn to calculate conduction and switching losses in MOSFET H-bridge motor drivers. Worked example with real numbers using our power dissipation calculator.

Contents

Why Motor Driver Losses Matter

You've picked your MOSFETs, laid out your H-bridge, and the motor spins. Job done? Not quite. The difference between a motor driver that works on the bench and one that survives in production often comes down to thermal design — and thermal design starts with knowing exactly how much power each FET is dissipating.

Motor driver losses fall into two clean buckets: conduction losses (resistive heating while the FET is on) and switching losses (energy burned during each on/off transition). Get these numbers wrong and you'll either over-spec your heatsink and waste board space, or under-spec it and watch your FETs go into thermal shutdown at the worst possible time.

Let's break down the math, work through a real example, and show you how to get answers in seconds with our open the Motor Driver Power Dissipation calculator.

Conduction Loss: The Steady-State Tax

Whenever a MOSFET is fully on, it behaves like a small resistor — its RDS(on)R_{DS(on)}. In a PWM-driven H-bridge, the FET isn't on 100% of the time; it's on for a fraction of the period defined by the duty cycle DD. The RMS current through the FET during its on-time determines the conduction loss:

Pcond=IRMS2×RDS(on)×DP_{cond} = I_{RMS}^2 \times R_{DS(on)} \times D

This is per FET. In a typical H-bridge, two FETs conduct simultaneously (one high-side, one low-side), so the total conduction loss across the bridge is 2×Pcond2 \times P_{cond} during active drive — but during freewheeling (recirculation), different FETs carry the current. For a full bridge under continuous PWM, you generally account for all four FETs, with each pair sharing the duty cycle and its complement.

A key gotcha: RDS(on)R_{DS(on)} increases with temperature. The value in the datasheet is typically at 25°C. At a junction temperature of 100°C, expect it to be 1.5× to 2× higher. Always design with the hot value.

Switching Loss: The Speed Tax

Every time a MOSFET transitions from off to on (or vice versa), it briefly passes through its linear region where both voltage and current are simultaneously high. The energy lost per transition is approximately:

Esw=12×Vsupply×Imotor×(trise+tfall)E_{sw} = \frac{1}{2} \times V_{supply} \times I_{motor} \times (t_{rise} + t_{fall})

A practical way to estimate triset_{rise} and tfallt_{fall} when you know the gate charge QgQ_g and gate driver current is to use QgQ_g directly. The calculator uses a simplified but effective model:

Psw=12×Vsupply×Imotor×Qg×fswP_{sw} = \frac{1}{2} \times V_{supply} \times I_{motor} \times Q_g \times f_{sw}

where fswf_{sw} is the PWM switching frequency. This scales linearly with frequency — which is why cranking up fswf_{sw} to push audible noise above 20 kHz comes at a real thermal cost.

Worked Example: 24V, 10A Brushed DC Motor Driver

Let's size the losses for a fairly common scenario:

ParameterValue
Motor Current (RMS)10 A
Supply Voltage24 V
RDS(on)R_{DS(on)} (at 100°C)8 mΩ
PWM Duty Cycle75%
Switching Frequency20 kHz
Gate Charge QgQ_g50 nC
Conduction loss per FET:
Pcond=(10)2×0.008×0.75=0.6 WP_{cond} = (10)^2 \times 0.008 \times 0.75 = 0.6 \text{ W}
Switching loss per FET:
Psw=12×24×10×50×109×20000=0.12 WP_{sw} = \frac{1}{2} \times 24 \times 10 \times 50 \times 10^{-9} \times 20000 = 0.12 \text{ W}
Total loss per FET:
Ptotal=0.6+0.12=0.72 WP_{total} = 0.6 + 0.12 = 0.72 \text{ W}
Total bridge loss (4 FETs):

In a full H-bridge, two FETs are actively switching and two carry freewheeling current. The total bridge dissipation sums all four contributions. For this symmetric case:

Pbridge=4×0.72=2.88 WP_{bridge} = 4 \times 0.72 = 2.88 \text{ W}
Estimated driver efficiency:

The motor receives Vsupply×IRMS×D=24×10×0.75=180V_{supply} \times I_{RMS} \times D = 24 \times 10 \times 0.75 = 180 W of electrical power. The efficiency estimate is:

η=PmotorPmotor+Pbridge=180180+2.8898.4%\eta = \frac{P_{motor}}{P_{motor} + P_{bridge}} = \frac{180}{180 + 2.88} \approx 98.4\%

That's quite good — and it shows why low-RDS(on)R_{DS(on)} FETs at moderate switching frequencies are so popular for motor drive. But notice what happens if you quadruple fswf_{sw} to 80 kHz to eliminate any trace of acoustic noise: switching losses jump to 0.48 W per FET, total bridge loss climbs to 4.32 W, and you've added 50% more heat with no benefit to the motor.

Design Implications

A few practical takeaways from this analysis:

  • Conduction loss dominates at low switching frequencies. If you're running at 10–20 kHz, focus your budget on low RDS(on)R_{DS(on)} FETs.
  • Switching loss dominates at high frequencies. Above 50 kHz, gate charge QgQ_g becomes the critical parameter. Look for FETs optimized for switching figure-of-merit (RDS(on)×QgR_{DS(on)} \times Q_g).
  • Duty cycle matters for conduction, not for switching. Switching losses depend on frequency and load current, not duty cycle.
  • Thermal derating is non-negotiable. Our example gives 0.72 W per FET. In a SOT-23 or PowerPAK package with RθJA=50R_{\theta JA} = 50 °C/W, that's a 36°C rise above ambient — manageable, but it tightens fast if airflow is restricted.

When the Numbers Get Uncomfortable

If the calculator shows bridge losses that push your junction temperature past 125°C (or whatever your FET's rated max), you have four levers:

  1. Lower RDS(on)R_{DS(on)} — bigger FET or parallel FETs
  2. Lower QgQ_g — faster-switching FET (often trades off against RDS(on)R_{DS(on)})
  3. Lower fswf_{sw} — accept more ripple or audible noise
  4. Better thermal path — exposed pad, thicker copper, heatsink, forced air
The calculator lets you iterate on all of these in seconds, which is exactly the point.

Try It

Plug your actual motor current, supply voltage, and FET parameters into the open the Motor Driver Power Dissipation calculator and see exactly where your watts are going. It's the fastest way to sanity-check your FET selection and thermal design before you commit to a PCB layout. Iterate on RDS(on)R_{DS(on)}, QgQ_g, and switching frequency until the numbers make your thermal engineer happy — or at least stop frowning.

Related Articles