I'm pretty new in electronic stuffs and I'm still not sure what I'm doing, so my questions might seems retarded. I recently got an Arduino and I'm trying to build a mini-car with it, but I would like to connect 2-way motor. I read a lot information and figured out that I need H-Bridge and my schema must look something like this:


I'm not sure exactly about the usage of transistors. I thought all of these transistor could be PN2222. Am I right? The output of Arduino pins is 5V, would I need some kind of resistor between transistors and Arduino, also since this is gonna be 2-way motor, do I need a 1-direction diode, parallel to the motor? Is this schema gonna work?

  • \$\begingroup\$ 2N2222 are transistors usually used in small to medium signal applications. You need beefier transistors that can handle the current of the motors. \$\endgroup\$ Sep 30, 2013 at 22:47
  • \$\begingroup\$ There are a million "how do I drive a motor from an arduino" questions and answers on this site and all over the internet, plus working circuits with explanations, plus H-bridge IC's with data sheets... you could do a LOT more research. \$\endgroup\$
    – John U
    Oct 1, 2013 at 7:56
  • \$\begingroup\$ Just considering the topology of the circuit. The upper NPN transistors will be acting as emitter followers. If your Arduino outputs are 5V there will only be 4.3V on the emitters so your motor will only see about 4V (assuming a Vsat loss of about 0.3V in the lower transistor)- most of the power will be dissipated in the upper transistors. \$\endgroup\$ Oct 1, 2013 at 10:04

1 Answer 1


There is a lot of work that goes into H-bridge design. For a low power design, there's a fair number of ICs to get you started. The one I started with was the L239D. It implements the four transistor design you show and it also includes the very critical flyback diodes that are missing from your design. It also handles the separate 9 volt motor power and the 5 voltage logic.



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.