I have been experimenting with soft latch switches. There is one that EEV Blog has developed that only uses 2 NPN transistors and a P-Channel MOSFET. The circuit is seen at 14:44 in this video.

I have connected that to a buck converter and I am observing some strange behaviour. You can find my full schematic below.

The connection is as follows:

USB/12V --> Voltage Selector --> Soft Latch Switch --> Buck Converter

enter image description here

enter image description here

On power up the circuit delivers a 5V to the Vin of the buck converter and it works on regulating it to 3.3V. However when I press the button the voltage at the output of the soft latch drops to ~4.375V and reverts back to 5V when I release the button.

I am monitoring it on the oscilloscope and what I would expect in such a situation is an oscillation when the button is pressed. What I am observing is a fixed DC voltage.

What may be the cause of this? I don't really understand what is going on. Any input would be appreciated.

Improved Edit:

Based on input from user287001 and Dave Tweed:

It works now however, rapid follow up pushes do not work. It starts turned off, on pushbutton turns on, on follow up push button it turns off. If zou push one more time after that it starts oscillating. So you need a couple of seconds between rapid turn on/off events. But nobody needs such an application.

On connection of inductive load the turn on event happens faster than the turn off. Again rapid turn on/off is not possible. One has to wait aproix 1-2 secs between rapid pushes.

Modifications to circuit:

  1. Removed C4, in finalised version I will put it on the Input of the latch circuit.
  2. Added a 33kohm between B and E of Q4
  3. Flipped the D and S of Q7 and Q5.
  • \$\begingroup\$ Does it work if you have a resistor load instead of the buck converter? Is there a way that the circuit behind the buck converter can use to feed a voltage from another source? \$\endgroup\$
    – user287001
    May 26, 2021 at 10:55
  • \$\begingroup\$ @user287001 nope it stays on the whole time, which indicates the Q4 is conductive all the time. \$\endgroup\$
    – Emre Mutlu
    May 26, 2021 at 10:59
  • \$\begingroup\$ You have already fixed one error after my 1st comment. Now I ask another time: Does it work if you have a resistor load instead of the buck converter? \$\endgroup\$
    – user287001
    May 26, 2021 at 11:32
  • \$\begingroup\$ @user287001 I removed the buck converter entirelz now testing on a resistive load. It still has a problem \$\endgroup\$
    – Emre Mutlu
    May 26, 2021 at 11:34
  • \$\begingroup\$ Be careful with large capacitances (220µF) connected to the output of switching supplies. This can alter their behavior and lead to supply oscillation. Check the datasheet for a maximum capacitance. \$\endgroup\$
    – rdtsc
    May 26, 2021 at 11:55

3 Answers 3


You have drain and source swapped on Q5. The body diode is passing current regardless of the state of the gate.

If you want the circuit on at startup, add a small capacitor (0.1 µF) between the gate of Q5 and ground.

You have a similar problem in your "Autovoltage Selection" circuit. If you apply +12 V to it, both V_out and VBUS will be driven to +12 V, again through the body diode of Q7. This would be very bad for the USB source if you ever connected both simultaneously. Swap drain and source here, too.

If you want a circuit that doesn't oscillate, here's one possibility:


The inputs (pins 2 and 6) are biased to half the supply voltage. When the output is low, a press of the button will pull the trigger pin (pin 2) low, driving the output high. When the output is high, a press will pull the threshold pin (pin 6) high, driving the output low.

Note that in either case described above — and unlike other similar circuits — the output will NOT oscillate slowly if the button is held down. The bias resistors R1 and R2 are sized relative to the output feedback resistor R3 such that capacitor C1 cannot charge to the required switching voltage until the button is released.

  • \$\begingroup\$ I have switched it. Now on start up it is off. But once turned on it never turns off. \$\endgroup\$
    – Emre Mutlu
    May 26, 2021 at 11:18
  • \$\begingroup\$ Are you holding the switch long enough for C3 to discharge? Also, any capacitors across Vcc in the load need to discharge as well. A 1M resistor across C3 may help. \$\endgroup\$
    – Dave Tweed
    May 26, 2021 at 11:27
  • \$\begingroup\$ It is interesting when I hold on the Button, I see an obvious capacitor discharge curve on the output of VCC. And the LED slowly dimms out. But when I release the button it turns back on. I think this is becouse when I release the button there is still about 1.3V on VCC. So I think I could solve this by decreasing either the capacitance of C3 or the resistance of R18. What do you think. BUt the thing is that on his video the circuit turned on on start up. Mine doesnt \$\endgroup\$
    – Emre Mutlu
    May 26, 2021 at 11:30
  • \$\begingroup\$ I am removing C4. It is a giant 220uF cap for the buck converter. I think it may be the cause. \$\endgroup\$
    – Emre Mutlu
    May 26, 2021 at 11:37
  • 1
    \$\begingroup\$ Well, all I can say is that the symbol you use in your schematics explicitly shows the body diode, so you just need to learn to pay attention to those kind of details. \$\endgroup\$
    – Dave Tweed
    May 26, 2021 at 12:54

Assuming you have inserted a diode which prevents a high capacitance load to feed current backwards to the latch and reversed the mosfet so that its drain in the right:

I guess your switch and your hand collect enough AC hum and noise to keep the circuit ON. Insert a resistor between the B and E of Q4, say 33kOhm make R16 smaller, say 10kOhm.

ADD1: It's possible that you have far too big C4. I would try say 5uF as maximum C4. The switch should be ON say 0.1s maximum.

ADD2: I guess the whole idea of inserting such circuit is to ease the current peak hogged from +5V when the lower voltage system is switched to +5V. That current peak would tear a mechanical switch. As well you can use a normal switch which pulls down the gate of the mosfet like this:

enter image description here

  • \$\begingroup\$ Done them both. On addition of a 100ohm resistor between B and E of Q6 the oscillation stops and circuit stays on and becomes unresponsive to button pushes. Going to try making R16 smaller now. \$\endgroup\$
    – Emre Mutlu
    May 26, 2021 at 12:13
  • \$\begingroup\$ I wrote "B and E of Q4", that's the transitor pulling down the gate of the fet. Try something bigger, say 33kOhm. \$\endgroup\$
    – user287001
    May 26, 2021 at 12:17
  • \$\begingroup\$ sorry I misread. I think you may be right. I decreased R16 to 10kohm. It didnt solve the main problem. But before the oscillation starts there is a longer pause. adding the 33kohm now \$\endgroup\$
    – Emre Mutlu
    May 26, 2021 at 12:22
  • \$\begingroup\$ added a 33kohm between B and E of Q4. Sth interesting happened. I starts off. On pushbutton, turns on. On third push button turns off then stays on onlz on push button. But I think your direction is right. I am going to make R16 100kohm again to see how that behaves. \$\endgroup\$
    – Emre Mutlu
    May 26, 2021 at 12:25

The circuit can be broken down into two parts: The first is the power switch - seems like it turns on, but does it turn off? If you connect the base of Q4 to gnd, does the circuit turn off?

The second is the startup delay. What is the voltage at the collector of Q6? If this voltage is not close to 0 (~0.7V), then investigate why it is not.

I'm assuming you've designed a pcb for this - if this is the case, what steps have you taken to verify the pcb design is correct?


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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