How to Make an H-bridge




Introduction: How to Make an H-bridge

About: My name is Randy and I am a Community Manager in these here parts. In a previous life I had founded and run the Instructables Design Studio (RIP) @ Autodesk's Pier 9 Technology Center. I'm also the author of…

An H-bridge is a type of circuit that you can use to get a reversible DC motor to spin both clockwise and counterclockwise.

In other words, this circuit allows you to quickly reverse the direction a motor is spinning by using a switch or controller chip to change its direction.

I'm going to show you how to make the simplest and most reliable form of H-bridge that I know how to make. I must warn you that this is by no means the best H-bridge design and, in fact, it has a couple shortcoming which I will explain later.

Although, should you never have made an H-bridge before or simply need a circuit that can reverse the direction of a motor's spin, then this circuit is a quick and easy solution.

Please Note:

This H-Bridge is not good. You can make much better simple H-bridges and I am keeping this up for archival purposes. Check out this Skitter Bot Instructable to learn how to make an easier one.

Step 1: Go Get Stuff.

Here's what you need to get:

4 - SPST 5VDC Reed Relays
1 - SPDT 5VDC Reed Relay
1 - package of 9V battery clips
1 - 9V battery
1 - Toggle or slide switch (SPST)
1 - 7805 Voltage Regulator
1 - PC Board
1 - DC motor

Please note that some of the links on this page contain Amazon affiliate links. This does not change the price of any of the items for sale. However, I earn a small commission if you click on any of those links and buy anything. I reinvest this money into materials and tools for future projects. If you would like an alternate suggestion for a supplier of any of the parts, please let me know.

Step 2: The Truth About H-bridges.

An H-bridge is a series of four controllable switches in which there are two sets of two switches.

One set of switches when closed allows electricity to flow one way. The other set of switches allows electricity to flow in the opposite direction.

Another important characteristic of an H-bridge is that it typically can use a smaller voltage (5VDC from a micro controller, for instance) to control a much larger voltage (12VDC used to power a motor). These two separate voltage sources are kept isolated from one another.

H-bridges can be made with either 4 relays or 4 transistors.

The best type of H-bridge is made with transistors since these can easily be used to control a motor's speed (by using the smaller voltage to modulate the much larger motor voltage). An H-bridge made using relays (like the one we are making) cannot easily be used to change a motor's speed (unless, of course, the motor voltage is being supplied from a power source capable of being modulated... i.e. the H-bridge itself cannot modulate the power source to down the motor. The power must be decreased to slow down the motor before it goes through the H-bridge).

Step 3: How It Works.

The H-bridge we are making uses relays.

What this means for you is that the motor will spin as fast as it can in one direction and then when reversed, spin as fast as it can in the other direction. The only thing that will slow down the spin of the motor is if you have a controller that can modulate the 9VDC the power signal BEFORE it enters the H-bridge.

When the coils on "Relay 1" and "Relay 4" are pulled high (electricity is flowing through them), then the motor will spin forwards (see "Image 1").

When the coils on "Relay 2" and "Relay 3" are pulled high (electricity is flowing through them), then the motor will spin backwards (see "Image 2").

When the coils on "Relay 1" and "Relay 2" are pulled high (electricity is flowing through them), then the motor will stop spinning (see "Image 3").

When the coils on "Relay 3" and "Relay 4" are pulled high (electricity is flowing through them), then the motor will stop spinning (see "Image 4").


You want AVOID:
"Relay 1" and "Relay 3" being pulled high. This is a short circuit since there is no load for the electricity to pass through. Bad things will happen! (see "Image 5")

"Relay 2" and "Relay 4" being pulled high. This is a short circuit since there is no load for the electricity to pass through. Bad things will happen! (imagine "Image 6")

More than 2 relays being pulled high at one time. Bad things will happen.

Step 4: About Our Circuit.

Our circuit includes an H-bridge made out of 4 SPST relays (single-pole single-throw) and 1 additional SPDT (single-pole double-throw) relay which will be used to switch between the 2-sets of 2 relays.

Okay.... so this is how it works...

Power from the battery is going to the 7805 voltage regulator where is converted to 5V. Power from the battery is also going to "Relay 1" and "Relay 2" where it goes to the motor (but we're getting ahead of ourselves).

The 5V power is both going to the coil of the SPDT relay and it is also passing through the the SPDT relay. So, when the switch is closed, 5V flows through the coil of the SPDT relay and 5V also is routed through the SPDT relay to the coils of "Relay 1" and "Relay 4" forcing them to close. This allows 9V to flow through "Relay 1" and "Relay 4" in a way in which the motor can spin in a clockwise direction.

In other words, when we close the switch connected to the coil on the SPDT relay, we are triggering the H-bridge to allow the motor to spin clockwise.

Therefore, if we want the motor to spin counter-clockwise all we would need to do is flick the switch in the opposite direction. This will change the path through which the electricity passes through the SPDT relay and in turn close "Relay 2" and "Relay 3" (and by extension open "Relay 1" and "Relay 4").

Step 5: Start Your Soldering!

Solder your 4 SPST relays to the PCB as close together as possible (see secondary image).

If you don't know how to solder, learn how to solder.

Next, solder the SPDT relay (the box-like thing) to the board as close to the SPST relays as you can get it (see secondary image)

Lastly, in the registers on either the far left or right side of the board, solder your 7805 5V regulator (see secondary image).

You should now have all of your major components connected to the board (see main image).

Step 6: Solder Some Wires.

You are going to want to now connect wires to your components so that they are actually wired together and can do things.

To begin with, solder a black wire to one side of the coil on each SPST relay. Pick a spot on the PCB where there is at least 8 empty slots and they are not connected to any of the components and then solder all 4 wires together on the underside of the board.

Step 7: Solder Some More Wires.

You then need to connect two wires to each of the output pins on the SPDT relay. Consider each of these two wires belonging to the same set of wires. Connect one set of wires to the coils on the two closest relays. Connect the other set of wires to the coils on the two farthest relays (for clarification see image notes).

Step 8: Solder Even More Wires.

Connect the middle pin of the first relay to the 9V input on the voltage regulator. Connect the middle pin of the second relay to ground (the place with all the black wires connected together). Connect the middle pin of the third relay to the 9V input on the voltage regulator. Connect the middle pin of the fourth relay to ground (the place with all the black wires connected together).

For clarification see images below.

Step 9: Who Would Have Though There Would Be This Many Wires?

Connect the other end of one of these wires to the input pin on SPDT Relay. Connect the other wire to the coil on the SPDT relay.

And then there is the matter of the switch. One wire on the switch goes to the coil on the SPDT relay and the other wire on the switch goes to ground.

Now would also be a good time to attach a black wire between the ground and the middle pin on the voltage regulator.

Step 10: Attach a Plug You Sexy Beast!

You're going to want to be able to turn your H-bridge on, right? And no matter how sexy you may think you are, the only way to turn it on is with electricity.

So, attach the red wire of the 9V plug to the 9V input on the voltage regulator. And then attach the black wire to all of the other ground wires on the board.

Step 11: For a Few Wires More.

Attach 5" of wire to the pins on the side of the SPST relay tubes that currently have no wires attached to it.

If there is a red +9V wire on the middle pin on the one side of the tube that currently has wires on it, then also attach a red wire on the side your currently attaching wires to. If there is a black wire on the side with all the wires, then attach a black wire on this side.

Step 12: Clean Up.

Chop off all of the extra wire on the under side of the board.

Trim as close to the board as possible without breaking any connections.

This will keep wires from crossing later on.

Step 13: Testing... Testing... 1... 2... 3...

Now is time to see if it works.

Think of the red and black wire closest to one edge of the board as one set. Think of the farther red and black wire as another set. In the image below, I twisted the two wires of each set together.

When the H-bridge is triggered by the SPDT relay, either one set or the other set, at any given time, will have power flowing through it.

So, if we were to attach an LED in series with a 220 ohm resistor to each set, when we plug in a battery and flick the switch, either one LED will light up or the other will light up (see images below).


If your H-bridge doesn't work this way, make sure:
1. You are using the right "set" of wires
2. All of your wires are routed correctly (See diagram below)
3. You made all appropriate soldered connections and are not missing any wires
4. You have no crossed wires (The voltage regulator will most likely be excruciatingly hot if you do. You should also be able to see where it is crossed... usually.)
5. Your relays work (You can check by bridging the positive end of the coil directly to the 5V power source. When you do this, you should hear a little click)
6. Your battery isn't dead (Quickly touch an LED to it and see if it lights up)
7. Your LED isn't dead (try another LED)
8. Your LED isn't backwards and preventing the flow of electricity (Try turning it around).
9. The gods of electronics aren't angry at you.

Step 14: Connecting the Motor.

This is where it gets a little tricky.

Since we want electricity to flow through the motor both forwards an backwards, we are going to want to attach one set of wires to the motor with the correct polarity and the other set of wires to the motor with a reversed polarity.

In other words, the black from one set gets paired with red from another set and then attached to the red wire on the motor. And the red from one set gets paired with the black from the other set and attached to the black wire on the motor.

Or to just see what is going on, just look carefully at the picture. It should make sense.

Step 15: Improve Your Artbot.

Aside from using it for a whole bunch of practical applications, you can now also use your H-bridge to get your fancy-shmancy drawing-bot to move in two directions.

Watch your back Jackson Pollack! We will draw on your grave!

Did you find this useful, fun, or entertaining?
Follow @madeineuphoria to see my latest projects.

Be the First to Share


    • Barbecue Speed Challenge

      Barbecue Speed Challenge
    • Colors of the Rainbow Contest

      Colors of the Rainbow Contest
    • Arduino Contest

      Arduino Contest



    4 years ago

    Why dont you just use 2 spdt relays. Connect each lead of the motor to the common pin. Connect the 2 nc pins to ground, and connect the 2 no pins to Vcc. That way you just energize one for clockwise and the other for counter-clockwise.

    Benifits are it's simpler, uses less parts and is impossible to short circuit.


    Reply 4 years ago

    Here i just mad an instructable about it


    4 years ago

    Hey man, I need to control a pump but it V and A ranges doesn`t match with any available H-Bridges for arduino, can you recommend any material that will help me build a custom one suitable for my needs?


    5 years ago

    i were hoping that I could find the answer to how to build a h bridge to change a electric door locking system from "fail-safe" to "fail -secure".

    can someone help me please


    6 years ago on Introduction

    Sir, I have question. I got 5 spst relays can you tell me how make hbridge with them


    12 years ago on Step 4

    Of course you can make the project with a double-pole double-throw switch and not use any relays at all. The only problem is the motor is constantly turning in one direction or the other. The alternative is to use two double-pole push switches or 4 switches as shown in the following diagram. You need to push both of the forward switches at the same time. By pushing the reverse switches very briefly you will get braking when travelling in the forward direction.


    Reply 7 years ago on Step 4

    You can find DPDT switches with a center-off position. I got one from radioshack.


    12 years ago on Step 4

    There is a much-simpler way to reverse the motor using just one relay. Connect a double-pole double-throw relay as shown in the enclosed diagram. No other components are required! Just a switch to energise the relay for forward or de-energise the relay for reverse. Colin - TALKINGELECTRONICS.COM


    Reply 12 years ago on Step 4

    colin55: then you would not be able to brake


    Reply 7 years ago on Step 4

    Small motors like that don't need a brake. But if you insist on using one, I would recommend a friction brake. The motor here slows down too fast on it's own for an electric brake.


    Reply 12 years ago on Introduction

    just add another switch from one of the wires that goes to the motor, and then no matter which way you turn the first switch, the motor will only spin if you have the second switch on.


    Reply 12 years ago on Introduction

    if you really need braking you can tie in a relay somewhere else to cut power.


    8 years ago on Step 15

    looks nice man,but i think is more effective with 2 pais of npn and pnp,some diodes ans is the one i made


    8 years ago on Introduction

    So.. How would I go about this controlling it with arduino... I know I could drop the whole spdt relay and switch! Seeing is I want it to be person less.. (I'll be using force sensor to trigger it.) But I don't know for sure.. I need some help! Maybe a schematic, but I need simpler type terms since I'm only 13.. Help please!!!!

    Robot Lover
    Robot Lover

    9 years ago on Introduction

    If you have a DPDT relay, the other relays are non-essential for making a motor reverser circuit.


    10 years ago on Step 7

    do you really need a 7805 in there?


    11 years ago on Introduction

    I was just at Radio Shack and the relays alone for this project are going to set you back over 20 dollars.