I am making a Li-Ion battery powered which controls a tiny 3V pager motor. Thanks to septillion, I have almost everything figured out.
I need to both control the motor’s speed(PWM) and direction(H-bridge). L293D although a bit overkill was my choice. But since the motor was going to be stationary 90% of the time, the quiescent current is waaay too high(16-28mA according to datasheet) even when enable pins are low.
So like hundred others, I decided to make my own H-bridge from PN2222 and PN2907 in LTSpice and joined the PNP and NPN inputs on each side, so they will never cause a short:
I can now use only 2 pins(in1 and in2) to control the motor direction and also PWM either of them to control speed. The downside is that when both are 0 or both are 1, they enter braking mode, which means the the motor unnecessarily brake during PWM’s off cycle. Also, 2 transistors will always have base-emitter forward biased and so a constant ~40mA quiescent current.
Another option I came up with is:
Since both in1 and in2 in previous circuit will be complementary(else it is in braking mode), I used a NPN transistor(Q6) as a NOT gate to invert in1 and fed that into in2. So, if 0 on in moves it CW, 1 will move it CCW. To control speed and put motor into coasting(or off) state, there is another NPN transistor(Q5) that controls the path to ground, controlled by en pin. Sending PWM on it will control speed without braking. Setting en and in to 0 shuts it all off with quiescent of a few nA.
So I can control a motor’s speed and direction with 2 pins, perfect PWM motor efficiency and almost no quiescent current! I only lose the braking option(which I don’t need) and require 2 NPNs and 3 resistors extra.
This seems too good to be true, except the resistor R7 which creates load/voltage drop for Q6 has a magic Goldilocks value of 100ohms, which causes around 30mA to be wasted through it. If I put 1K to reduce current, I somehow get transistors Q2 and Q4 in ON state which causes a short circuit. Can anyone help me understand why this is happening?