I'm building a circuit to switch between a USB 5V source and a battery source that ranges from 2V - 3.3V. The rest of the circuit runs on 2V - 3.3V so the USB 5V source is passed through an LDO before supplying power to the rest of the circuit. So,

  • If the USB source is connected, it should draw power from the USB source and not from the battery
  • If the USB source is disconnected, it should draw power from the battery

I understand that there are similar questions here (USB/Battery switch) but I am wondering why this simplified design doesn't work:

Power supply switch

When the battery Vcc drops to 2V and both USB and battery are connected, a lot of current (500mA) flows into the drain of the FET (the source of the FET is connected to battery Vcc). Why does this happen? Shouldn't the FET be off when Vg (3.3V) > Vs (2V)?

Also, I understand that my circuit is rather strange; Vd > Vs and Vg > Vs and I don't really see what happens in these scenarios in the transistor data sheet (ZVP3306A). I guess this design is not covered by the transistor data sheet? And feel free to suggest more designs.

  • \$\begingroup\$ Look into mosfet body diode aspect as well. It helps sometimes. \$\endgroup\$
    – AKR
    Commented Apr 17, 2015 at 5:19

1 Answer 1


@AKR: Your suspicion about the body diode is right. Since the drain was higher than the source, the transistor was acting as a diode rather than an open transistor. So, fix #1 was to invert the transistor. In the battery only case, the transistor would initially act as a diode, so Vs = Vd - 0.7, then Vgs < Vth and the transistor turns on, hence preventing the voltage drop. The other fix was to add a Schottky diode to prevent current from flowing back to the gate of the FET.

For folks who are interested, here is the final design:

Power Supply Fixed

Thanks for the tip! Moving on to other problems...


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.