The Using MOSFETS Website

A better H bridge

A better H bridge

Just finished (April 2001) competing in the 2001 Western Canada Robotic Games in Calgary, Alberta and ran into some interesting problems with the H-bridges. I am using the single supply P channel and N channel H bridge. I increased the battery voltage on my robot (named Borg) from 10V to 12V and immediately blew the P channel (lower) mosfets on one of the two H bridges that I use. This surprised me as the H bridge worked fine for 7 years at 10V.

On examining the circuit, I realized that using the N channel mosfets to turn on the P channel mosfets was where the problem arises. The inductance of the motor slows the turning on of the P channel mosfets (slow rise time). The result is that the mosfets pass through the linear mode slowly (this is a no-no!) and heat up. I have no heatsinks on the mosfets and poof, they were toast.

The solution is to have a separate transistor to control each of the mosfets. I have drawn a schematic that uses 4 transistors to control the mosfets for one H bridge. The motor can be stopped (not truly stopped, no drive to it), reversed and forwarded.

The ideal situation would be to have four digital inputs to control each mosfet separately. The circuit has jumpers J1 and J2 that can be used to provide separate digital inputs. You can sequence the turn off and turn on time of each mosfet and compensate for the motor's electrical characteristics.

Stopping a motor

In order to stop a DC motor using a H bridge, you could reverse the direction. This can generate lots of destructive back EMF (current and voltage) which could damage your circuit at the worst case or cause lots of noise spikes in the power supply.

In diesel-electric locomotives, they use dynamic braking to slow the trains down. The electric motors (one per axle) have the electrive drive disconnected by relays and the motors treated like generators. The output of the motor/generator is fed to a grid of power resistors which provide an electrical load to the motor/generator. The energy required to slow down the trains is burnt off as heat in the load resistors. The generators act as brakes that are electrically controlled depending on the load resistance. Less resistance - more braking.

Another method is to turn on the lower 2 mosfets and while leaving the upper 2 mosfets turned off. This would route the current generated by the motor through ground, slowing it down.

Here's the OLD H-bridge circuits and theory webpages. I don't recommend using the old H bridge circuits now that I've found a better way using the schematic and explanation listed above. The old site still has good explanations and the MOSFET switches are fine as they are described.


Filipe Tomaz's Darkcut project using a mosfet H bridge to control a pair of 33 volt 15 amp motors.

This site is sponsered by

Cat's Ass Kustoms

Parts, Performance, Passion
News for Motorheads

Disclaimer: The circuits described here are for reference purposes only.
There is no guarantee in any way shape or form that they will work for your specific application. Use them at your own risk.

Please send any corrections, suggestions or errors that you may have caught to me.

Copyright Eugene Blanchard Jan 2007

Return to