I am trying to make a motor driver, similar to a H-bridge using four tip 121 (the label in the schematic below is wring because I could not find a tip 121 at my B2 simulator) the schematic is this: B2 and the switches represents my arduino's pins. enter image description here

The problem is that I only get 5V at the motor... even when the power supply is 12V! It does happen in the simulator, but I have no clue about why it happens...

Googling I found that the schematic of the L298 (the IC used in many arduino shileds/motor drivers) is quite similar to mine... But I do not understand why I only get 5V at my motor... As far as I understand the voltage drop at the collector-emitter of a transistor is constant...

What (and why) is wrong with my design?


2 Answers 2


For an NPN transistor to conduct current from collector to emitter you must have current flowing into the base. To get current flowing into the base, you must raise the voltage at the base about 0.6V above the voltage of the emitter. When your Arduino drives the base of Q1 (or Q3) to 5V that transistor will conduct current until the voltage at the emitter rises to almost 5V. At that point the base-emitter junction is no longer forward biased, current flow into the base stops, and current flow from collector to emitter also stops. Thus, the voltage at the emitter can never approach 12V if the voltage at the base is only 5V. You need a level shifting circuit so that you can bring the base of Q1/Q3 all the way to 12V, then the motor will see about 11.5V.

You could also replace Q1 and Q3 with PNP transistors, with a resistor from their base to 12V. The Arduino would control the bases on smaller NPN transistors whose collectors would be connected to the bases of the PNP transistors. When the small NPN is conducting it pulls the base of the PNP below 12V and the PNP conducts.


The top two transistors are configured as emitter followers and this means with 5V on the base, the emitter cannot be greater than 5V - 0.6V = 4.3V if the transistor is conducting.

Maybe replace the top two transistors with PNP types with the emitters on the 12V rail BUT you'll need to add extra transistors to drive these from your MCU.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.