The H-bridge I put together works but not as expected unfortunately because the output voltage is limited to about 2.6V, regardless of the input voltage or resistors values.

I've already tried with 5V and 7.5V power supplies and nothing changed.

According to 2N2222's datasheet, Base-emitter Saturation Voltage (Vbe) is 2.6V and i have no idea if this is the problem or something with my setup.

Here's the 2N2222 datasheet: http://pdf.datasheetcatalog.com/datasheets/90/490358_DS.pdf

enter image description here

  • "not as expected". What did you expected? What is the right result according to your calculations? – user31481 Feb 3 '18 at 14:22
  • Well, I expected some voltage drop but not to be limited at 2.6V – Meepo Feb 3 '18 at 14:28
  • 3.3 V (ATmega supply) - 0.7 V (Vbe of T1 or T2) = 2.6 V. – Edgar Bonet Feb 3 '18 at 14:34
  • Thanks a lot @Edgar Bonet, now it makes sense. Now the question is how can i trick the transistors to allow a higher voltage to flow from power supply? TIL transistors are some greedy a-holes which ask for more to deliver more and not simple gate-keepers... lol. – Meepo Feb 3 '18 at 14:48
  • I'm voting to close this question as off-topic because it is an Electrical Circuit design question having nothing to do with Arduino. Further, the design is fundamentally erroneous - you can't use NPN or N-channel devices as high side switches unless you have a means of producing base/gate drive above the load voltage. – Chris Stratton Feb 3 '18 at 19:52

You have discovered the standard problem when building an H-bridge. If you want to drive it with a voltage lower than its output voltage, then you cannot directly control the high-side transistors.

There are several solutions to this problem. The simplest and most reliable is to buy an already built H-bridge. If you really want to build it yourself, then you will need extra transistors to drive the high side.

Below is an example using only NPNs. It's a half-bridge which behaves like an inverter. You would use two of those to build a full bridge.


simulate this circuit – Schematic created using CircuitLab

Here, the leftmost transistor is used to drive the high-side one. I didn't label the resistors, as their values will depend on how much current you want.

This is not the only possible schematic, and probably not the best. There are many other options, including NPN/PNP combinations, Darlingtons and MOSFETs.

  • Thank you, Edgar. I also thought of this option because i used transistors as switches before but 6 of them for a LED is a bit too much for the proto-board I use. There is not so much space left near the ATmega328 chip. As for the H-bridge IC, what do you recommend? I read about L293B but being a 4-channel driver isn't it overkill for just one LED? What are your recommendations? – Meepo Feb 3 '18 at 19:15
  • I don't have much experience with H-bridges, so I won't risk doing recommendations. – Edgar Bonet Feb 3 '18 at 19:22
  • Do not use the L293 - this or any bipolar part will have terrible performance. You need something FET based. There have been many previous questions on this here. If your load is actually a small LED you can likely just use a pair of hefty CMOS outputs, but it may be easiest to just source a 3-lead common-anode LED. – Chris Stratton Feb 3 '18 at 19:53
  • Thanks Chris. Good to know that the L293 is not a good performer. Actually the LED is embedded in a vandal proof button tme.eu/en/details/v19-10r-12gb-s/push-button-switches/onpow and I can't do much about it. Being a 12V AC/DC LED which is too bright at full power, my plan is to feed it with 7.5V from the power supply which is already installed. Unfortunately, I don't have experience with CMOS outputs and the more I look for schematics and information, the more vague everything become. – Meepo Feb 4 '18 at 16:51

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