# H-Bride Implementation with minimum voltage drop using Raspberry Pi

I am using the Raspberry Pi's GPIO pins to switch transistors in an H-Bridge. This circuit is designed to allow a path to ground that will reverse the polarity of the motor without the wires being physically switched. The circuit operates as intended, however there is quite a significant voltage drop with nearly half the voltage being dropped across the load. I have used LEDS in this schematic to demonstrate the reverse polarity property of the circuit, however the load will be a dc linear actuator. If the LED is replaced with the actuator it adds .7V to the circuit, however this isn't enough. This circuit is sufficient to run the actuator at full battery, however I would like to have it be faster. Another issue, is that when the battery voltage begins to drop this circuit will no longer work due to the voltage drops across the transistors. Is there a way to turn these transistors on without diminishing the batteries voltage? The raspberry pi gpio pins supply 3.3v at the base to turn the transistor on, however it seems that there is a total 1.4 voltage drop from the battery. Is there a way to have this voltage drop come from the raspberry pi, or another way to design this circuit? Any help is appreciated.

I tried using this circuit which was an improvement, however when battery voltage drops below 2V it no longer works. Is there any way to amplify the voltage from the gpio pin so that this circuit would work with a battery voltage of around 1 Volt using the circuit below?

• Don't use bipolar transistors for this. Even darlingtons will have substantial drop under load. Instead, use low threshold low on resistance MOSFETs. More likely what you want (especially for something within the capability of a 2n2222) is an FET-based H-bridge IC. – Chris Stratton Mar 20 '18 at 3:41
• Additionally your bridge is upside down - you mistakenly put the NPN devices on the high side and the PNP's on the low, which is exactly backwards. – Chris Stratton Mar 20 '18 at 3:43

The problem with your first circuit is that the bridge transistors are wired in 'Common Emitter' mode. When a transistor is turned on its Base-Emitter junction drops ~0.6V. But the Base voltage cannot go beyond the supply rail so the Emitter cannot get closer to the supply rail than ~0.6V.

Another issue is you don't have a resistor in series with the LEDs to limit current, which will cause excessive current flow and even more voltage drop across the transistors.

Your second circuit is a poor attempt at configuring the bridge transistors in 'Common Emitter' mode. Both upper transistors are permanently turned on, so when a lower transistor is turned on a large current will 'shoot through' both transistors on that side.

For the bridge to work correctly you need to turn on the upper transistor on the opposite side only. The simplest way to do this is connect the lower end of R7 to the Collector of Q2, and the lower end of R10 to the Collector of Q1. However this will only work properly if the upper transistor stays in saturation and doesn't drop more than 0.6V - otherwise the other upper transistor would start to turn on.

To make the circuit work better when driving high current loads you can add driver transistors which invert the upper drive signals rather than using the bridge outputs to do it. Here's one way:-

simulate this circuit – Schematic created using CircuitLab

When In 1 is set high Q2 turns on and connects R1 from the Base of Q1 to the Base of Q4, turning on both both Q1 and Q4. Q5 does the same for the other side.

Diodes D1-4 provide a path for current to flow while the magnetic field is collapsing when an inductive load (eg. motor or solenoid) is turned off. Without these diodes the transistors could get damaged by reverse voltage spikes.

For low Voltage FETs driving motors, you need to select Ro according to the DCR coil resistance and heatsink cooling of the FETs using Ohm's Law.

Generally it turns out that for low voltage motors, you need a FET current rating that is at least 10x the rated motor current with a low Vgs drive. If you had 12V drive, it would operate cooler with lower resistance.

https://www.digikey.ca/product-detail/en/stmicroelectronics/STD16NF06LT4/497-4329-2-ND/725195 Nch Vt=1V 24A max rated SMD only.

simulate this circuit – Schematic created using CircuitLab

• fortunately datasheets for these parts show they have reverse diodes.. – quetzalcoatl Apr 10 at 14:03