Electrical – H-bridge PNP transistor overheats

h-bridgenpnpnptransistors

Good day,

I have built a H-bridge as in the image below. The NPN transistors are TIP102 and the PNP transistors TIP107. The bottom NPN transistor is connected to the PWM pulse of the MCU. When I close one of the switches (MCU pin HIGH), the corresponding PNP transistor overheats and the motor is turning very slow. I measured a voltage at that transistor at about 1.8V and strangely at the opposite PNP only about 5V. So it seems to me the transistors don't saturate properly. I also tried smaller base resitors, but it didn't work. With further testing however, when I connected the switch to the 12V rail, the the PNP doesn't overheat and everything is working correctly. Is there a flaw in my design?
enter image description here

Best Answer

You need 12v on V2 and V4, otherwise you cannot turn off your PNPs, they will be on all the time.

When those switches deliver 0v, the PNP is on and the NPN is off.

When the switch delivers 3.3v, the NPN turns on, but the voltage is not high enough to turn off the PNP. There's still 8v across R1 or R3, which keeps the PNP on, fighting the NPN. You'll measure any voltage between 1v and 11v under those circumstances, depending on which one 'wins'.