I realized that I neglected to explain how my H bridge circuit worked, as I was reminded by an off-list message. Instead of attaching another copy of the schematic, I have put it at http://www.embedinc.com/temp/hbridge.gif. The inputs are the bases of Q3 and Q4. At most one of these may be high at a time. Raising one input applies power to the load in one direction, and raising the other input applies power in the other direction. Assume both inputs have been low for a while. In that case no current is flowing anywhere and the load is completely off. The quiescient current is zero. Let's analyze what happens when the left input is raised. This circuit requires a fixed input high level. That input level minus the B-E drop of Q3 ends up accross R5. This causes Q3 to act as a current sink, with the current level adjusted by the input high voltage and R5. The bigger the drop on R5, the better the current regulation, but also the more heat dissipated. Since current limiting was specified but doesn't need to be that accurate, lets say the input high voltage is 1V. If the B-E drop of Q3 is 700mV, then the current limit is 300mV / R5. R5 = 1ohm therefore results in about 300mA current limit. If the Q3 saturated C-E droop is 200mV, then 500mV headroom is used up by the lower legs of the H bridge when on. Assuming the load is drawing less than the current limit, the collector of Q3 will be driven down to about 500mV. This cause current to be drawn thru the base of Q2 via R4. R2 is a relatively large resistor that is only there to make sure the base of Q2 doesn't float when Q2 is supposed to be off. Let's say it's 10Kohms. That's big enough to be ignored for the rest of the analysis. The Q2 base current will be Vsupp minus the Q2 B-E drop (assume 700mV) minus the collector voltage of Q3 (previously determined to be 500mV). R4 should be sized so that it draws enough Q2 base current at the lowest specified supply voltage so that Q2 remains saturated at the current limit. let's say the lowest supply is 3V, then the 3V - 700mV - 500mV = 1.8V will be accross R4. If the current limit is 300mA and Q2 has a minimum gain of 50, then the R4 current must be 300mA / 50 = 6mA. This comes out to R4 = 1.8V / 6mA = 300ohms. You want to make sure Q2 stays saturated at the current limit, so 270ohms sounds like a nice value for R4. Therefore, raising the base of Q3 to 1V causes opposite corners of the H bridge (Q3, Q2) to turn on, applying power to the load. Q2 is always saturated, so let's assume its C-E drop is 200mV. This means the supply voltage minus about 700mV will be applied to the load, and the load current will be limited to 300mA. Raising the base of Q4 to 1V instead works the same way by symmetry, except that the voltage is applied to the load in the opposite polarity. If the load is a motor, it has two properties that must be taken into account: inductance and back EMF. These matter when the load is turned off. If the left input has been high for a while and then switched off (to ground), load current will continue to flow right to left in the schematic due to load inductance. The bases of both Q3 and Q4 are being held low, so both these remain off. The only remaining path for the load current will be thru D4 and D1. These are here specifically to provide the inductance kickback current, else the voltages could go very high and destroy parts. An interesting side effect of the cross connection of the transistors is that the on/off state of the top side drivers are flipped. The right side of the load will go low, turning on Q1. The left side will go high, actively turning off Q2 more quickly than it would have by itself. This means one limitation of this circuit is that the same input must not be turned on again before the inductive kickback current has ceased, else both legs on the same side of the H will turn on. However this time is predictable since the maximum load current and minimum reverse voltage during kickback are known. Back EMF causes the motor to behave like a voltage source proportional to its speed. This voltage has the same polarity as the voltage applied to the motor to get it to that speed. Assuming the motor is not driven externally, the back EMF can vary from 0 (motor stalled) to the applied voltage (100% efficient motor under no load). In the latter case when the left input has been high for a while then turned off, the voltage accross the load will remain the same. Since both Q3 and Q4 are held off by the two external inputs, the motor voltage is accross the lower ends of R3 and R4. This will cause Q2 to remain on somewhat, which has no real effect on the circuit since there is essentially no current for Q2 to conduct. Since no current is flowing, this circuit does not perform active breaking of the motor. The motor will coast to a stop based only on the inertia and friction in the mechanical system. ***************************************************************** Embed Inc, embedded system specialists in Littleton Massachusetts (978) 742-9014, http://www.embedinc.com -- http://www.piclist.com PIC/SX FAQ & list archive View/change your membership options at http://mailman.mit.edu/mailman/listinfo/piclist