An H-bridge is a circuit configuration of four electronic switches—typically MOSFETs or BJTs—arranged in an 'H' shape that allows a voltage to be applied across a load in either direction, enabling bidirectional control of a DC motor. In a real circuit, it changes everything: it bridges the gap between low-power, unidirectional microcontroller logic (like a 3.3V ESP32 GPIO pin outputting 5mA) and high-power, reversible motor loads, allowing that fragile logic pin to safely command a 10A motor to spin forward, backward, brake, or coast.
Without an H-bridge, your microcontroller would instantly fry if connected directly to a motor, and you would have no way to reverse the motor's polarity without physically swapping the wires. By understanding the underlying topology and the specific silicon implementations available today, you can select the right driver for your robotics, automation, or DIY actuator projects.
The Core Switching Matrix and Shoot-Through
Visualize the letter 'H'. The vertical legs represent the power rails: the left leg is connected to your positive supply (VCC), and the right leg is connected to ground (GND). The horizontal crossbar is your load (the DC motor). The four switches (Q1, Q2, Q3, Q4) sit at the four intersections of the 'H'.
- Forward Motion: Close Q1 (top-left) and Q4 (bottom-right). Current flows from VCC, through Q1, across the motor from left to right, through Q4, and to GND.
- Reverse Motion: Close Q2 (bottom-left) and Q3 (top-right). Current flows from VCC, through Q3, across the motor from right to left, through Q2, and to GND.
- Braking: Close both bottom switches (Q2 and Q4) or both top switches (Q1 and Q3). This shorts the motor's terminals together, causing the back-EMF to rapidly decelerate the rotor.
- Coasting: Open all four switches. The motor spins freely until friction stops it.
If you accidentally close Q1 and Q2 at the same time (or Q3 and Q4), you create a direct, zero-resistance path from VCC straight to GND. This is called 'shoot-through.' In a 12V system, this will instantly vaporize your silicon, pop your battery protection, or start a fire. Modern H-bridge ICs include built-in 'dead-time' logic and shoot-through protection to prevent this, but if you are building a discrete H-bridge from raw MOSFETs, you must design hardware dead-time or rely on a dedicated gate driver IC.
Real-World H-Bridge IC Specs and Topologies
While you can build an H-bridge using four discrete transistors, 99% of modern projects use integrated motor driver ICs. These pack the switches, protection diodes, and logic-level translation into a single package. The biggest differentiator in 2026 is the switch topology: older Bipolar Junction Transistor (BJT) designs versus modern Metal-Oxide-Semiconductor Field-Effect Transistor (MOSFET) designs.
| IC Model | Topology | Max Voltage (VM) | Cont. Current | Voltage Drop / Rds(on) | Typical Price |
|---|---|---|---|---|---|
| L298N | BJT (Darlington) | 46V | 2.0A | ~2.5V drop at 2A | $3.50 |
| DRV8833 | NMOS | 10.8V | 1.5A | ~0.6Ω total Rds(on) | $1.80 |
| TB6612FNG | MOSFET | 15.0V | 1.2A | ~0.5Ω total Rds(on) | $4.00 (breakout) |
| BTS7960 | Half-Bridge MOSFET | 27.0V | 43.0A | ~5mΩ total Rds(on) | $12.00 |
Sources: Texas Instruments DRV8833 Datasheet, Pololu TB6612FNG Carrier Board Specs.
The L298N is a legacy part. It is cheap and handles high voltages, but its BJT Darlington pairs waste massive amounts of energy as heat. The DRV8833 and TB6612FNG use MOSFETs, which act more like variable resistors with very low 'on' resistance (Rds(on)), making them vastly more efficient for battery-powered robots. The BTS7960 is a heavy-duty industrial part used in high-current applications like electric wheelchair motors or large winches.
Worked Numeric Example: Sizing and Heat Dissipation
Let's look at why topology matters when sizing an H-bridge for a specific load. Suppose you are building a rover with a 12V DC gearmotor that pulls 2A continuous under typical terrain loads. You need to choose between the classic L298N and the modern TB6612FNG.
Scenario A: Using the L298N (BJT)
BJT switches have a fixed forward voltage drop, regardless of current (within their operating range). At 2A, the L298N drops approximately 2.5V across its internal transistors.
- Voltage reaching the motor: 12V - 2.5V = 9.5V. (Your 12V motor is running at 79% capacity).
- Power dissipated as heat: P = V × I = 2.5V × 2A = 5.0 Watts.
Five watts of heat concentrated in a small TO-220 package without a massive heatsink will trigger the IC's thermal shutdown in roughly 15 seconds. You are wasting 41% of your battery energy just heating up the silicon.
Scenario B: Using the TB6612FNG (MOSFET)
MOSFETs don't have a fixed voltage drop; they have an 'on' resistance (Rds(on)). The TB6612FNG has a combined high-side and low-side Rds(on) of about 0.5Ω per channel.
- Voltage drop: V = I × R = 2A × 0.5Ω = 1.0V.
- Voltage reaching the motor: 12V - 1.0V = 11.0V. (Much closer to nominal speed).
- Power dissipated as heat: P = I² × R = (2A)² × 0.5Ω = 2.0 Watts.
While 2W still requires adequate copper pour on your PCB for cooling, it is less than half the heat of the L298N, and your motor gets significantly more torque. If you stepped up to the BTS7960 (0.005Ω Rds(on)), the heat dissipation would drop to a negligible 0.02W.
Where You Meet This in Practice (and Common Confusions)
Practical Applications
You will find H-bridges anywhere a DC load needs to be reversed or actively braked. Common bench and jobsite applications include:
- Linear Actuators: Extending and retracting 12V/24V actuator arms for solar panel tracking or automated hatches.
- Differential Drive Rovers: Controlling the left and right tracks of a robotics platform independently.
- Peltier Modules (TECs): Reversing the polarity of a thermoelectric cooler to switch it from heating mode to cooling mode.
- Electromagnetic Locks: Applying a reverse voltage spike to quickly collapse the magnetic field and release a fail-safe lock.
What People Commonly Confuse It With
Makers frequently try to use an H-bridge to drive a brushless drone motor (BLDC) and wonder why it stalls or burns up. An H-bridge has 4 switches and outputs a single-phase reversible DC signal. A BLDC motor requires a 3-phase alternating signal. An ESC is actually a '3-phase bridge' containing 6 switches (3 half-bridges) and a microcontroller that constantly reads the rotor's back-EMF to commutate the phases in a rotating sequence. Never connect a 3-phase BLDC motor to a standard 4-switch H-bridge.
Another common confusion is the H-Bridge vs. Low-Side Switch. If you only need to turn a motor on and off in one direction (like a cooling fan), you do not need an H-bridge. A single logic-level MOSFET on the low side (between the motor and ground) is cheaper, simpler, and wastes less board space.
Frequently Asked Questions
Do I need flyback diodes with an integrated H-bridge IC?
No. Almost all modern integrated H-bridges (including the L298N, DRV8833, and TB6612FNG) have internal clamp diodes to safely route the inductive kickback (back-EMF) generated when the motor stops. If you build a discrete H-bridge from raw MOSFETs, you must add external Schottky diodes across each switch.
Can I use an H-bridge to control motor speed?
Yes, but not by varying the DC voltage directly. You control speed by applying a PWM (Pulse Width Modulation) signal to the enable or input pins of the H-bridge. The switches turn on and off thousands of times per second (typically 1kHz to 20kHz), and the motor's internal inductance averages this out into a lower effective voltage.
Why does my motor whine when using an H-bridge?
That high-pitched whine is the PWM frequency. If your microcontroller is outputting a PWM signal at 500Hz, it falls squarely in the human hearing range. Increase your PWM frequency to at least 18kHz or 20kHz to push it above human hearing, provided your H-bridge IC supports the higher switching speeds without excessive heat.






