I've created a circuit to protect my lead-acid battery from over-discharging. I used the following circuit diagram.

Over-discharge protection circuit for a lead acid battery:

Over-Discharge Protection circuit for Lead Acid Battery

For understandable reasons, the circuit is oscillating if I connect the battery to a load through this protection circuit and the battery voltage reaches the approx. 10.6 V threshold. When oscillating, the relay disconnects and reconnects repeatedly very fast, making a sharp noise, and the load LED flickers.

When I tested the circuit using my bench power supply, I didn't see the circuit oscillate as the voltage goes below threshold. It cuts off the supply to the load, as intended.

When on the battery, I guess this is happening because as soon as the relay disconnects, due to absence of load, the battery voltage rises very slightly above the threshold, the Zener breaks down and the relay connects back. This keeps happening in a loop.

I know that making an over-discharge protection circuit is quite easy with appropriate protection ICs, but I am looking for a simpler solution without using any special-purpose IC.

What change in the circuit can make it work the way I am expecting it to?

Note: my load may consume a very large current, so I do not want the load to run through a transistor or MOSFET if possible but use a relay instead.

I learnt that a Schmitt trigger is the solution, but I'm really a newbie hobbyist. I understand the basics of the Schmitt trigger but can't really configure the circuit with appropriate values so that it cuts off at 10.5 V and doesn't turn on until 12 V. Can you please help me with the circuit?

  • 2
    \$\begingroup\$ check out this Q/A. My answer there uses a latching circuit that doubles as the on/off switch, on the basis that once the battery is low, it should go off and stay off. You can do a similar thing by driving your voltage detect from the load side of the relay, and providing a switch to start it up. My second circuit won't start if the battery is low, which is an advantage. \$\endgroup\$
    – Neil_UK
    Feb 7, 2022 at 23:45
  • 1
    \$\begingroup\$ @Antonio51 Nope that's not what I want. I clearly mentioned that I know ready to use battery protection boards/ICs are there. But my intent is not to find a ready to use circuit. I'm trying to build one. \$\endgroup\$
    – sribasu
    Feb 8, 2022 at 22:12
  • 1
    \$\begingroup\$ I am afraid, probably you didn't get my question right. I am aware of the cons of such an analog protection circuit and not looking for a ready to use or microcontroller based solution which is most perfect in design. I am just wondering how I can get rid of the oscillating behaviour of this specific circuit. I see that you've shared a readymade kit purchase link from Ebay and now talking about creating the circuit using a microcontroller, which are not exactly what I am looking for. Hope I am able to explain you. \$\endgroup\$
    – sribasu
    Feb 11, 2022 at 3:49
  • 1
    \$\begingroup\$ Hi sribasu, please can you address comments for a particular user to that user, in this case @Antonio51. Messages only appear in an Inbox if they're (a) addressed to that user, (b) on their own Question/Answer, (c) on a Followed Question/Answer. Thanks very much. \$\endgroup\$
    – TonyM
    Feb 11, 2022 at 8:56
  • 1
    \$\begingroup\$ @TonyM noted, thanks. \$\endgroup\$
    – sribasu
    Feb 23, 2022 at 14:16

5 Answers 5


Proposed Circuit:

According to your expectations to use existing components (relay, zener, etc), the following circuit is proposed.
The real circuit is marked inside the orange thick-dotted box.
There, I included a diode in anti-parallel to the relay coil, protecting the transistor.
There is a V_Fine_Bypass switch, that represents additional diode(s) in series to the main 10V Zener, to adjust the Turn-ON voltage. Simulations ahead will show its behavior whether enabled or not.

Battery simulation:
I did simple modeling of the Lead Acid Battery - inside the blue dotted box - to be used in DC SWEEP and DC DOMAIN simulations, depending on which position the "Simulate" DPDT switch is used (inside the blue dotted box), for the same schematic.

Time-Controlled switches:
Five time-controlled switches are used to simulate different states of operation, for the DC Domain simulation.


simulate this circuit – Schematic created using CircuitLab

Features of the Model:

  1. Use of Relay - same as original.
  2. Separate Voltages to Enable and Disable the Relay.
  3. Visual indications (LED) also help to define ON/OFF voltages.
  4. Battery is simulated to enable DC SWEEP from 16V down to 8V.
  5. Time Transient is simulated from 0-1000s.

Simulation Results - DC Sweep:

Results for DC Sweep simulation are shown ahead - observe the DPDT switch to "UP" position, marked in BLUE (inside battery block): enter image description here

With the following results: enter image description here

Simulation Results - DC Transient response:

Time Domain simulation is used to verify circuit features, as follows:

  • Battery is simulated by Capacitors and resistors, starting with fast charge and overcharging state at +/- 16V. [0 < Time < 50s].
  • Verification of circuit initially with Load disconnected. [50 < Time < 100s].
  • Verif. of Discharging behavior. [100s < Time < ~150s] (~ = approximate).
  • Verif. of Load Disconnection. [Time: ~150s; ~280s; 380s].
  • Verif. of Cyclic Discharge-Recharge. [~150s < Time < 500s].
  • Verif. of Final Charge Voltage and LED Currents. [Time > 500s].

Time Transient simulation used the DPDT battery switch in the RED position, as follows: enter image description here

Results are commented on with text and arrows, as follows: enter image description here

Using Simulation to investigate Component values:

The following graphs show variation studies of Green and Red LED resistors trying to balance the brightness.
It is important to control the overall Base Current to be less than 50 mA, with some safety margin. I used here to be less than 25~30 mA, even when the battery is overcharged at 16V. Running DC Sweep for alternate R3 and R4 values are illustrated as follows: enter image description here

Resulting in: enter image description here

I hope this effort fits your needs. I'm curious to see which solution you decided to use.


Connect the cathode of the Z diode to the load side. It cannot turn on again. To restart the circuit, use a button switch between emitter and collector of the transistor. A catch diode across the relay coil will make the 2N2222 happy


This circuit will turn on if the battery is over 12.5 V, the relay closes, and the output is available. If the battery voltage drops below approx. 11.9 V (40%) the relay opens and the output is cut off. Once the battery recharges enough (over 70% charged) the relay will re-enable the output.

enter image description here

  • \$\begingroup\$ Check the schematic, battery is connected to output through a diode when the relay is off. \$\endgroup\$
    – Oskar Skog
    Sep 13, 2022 at 14:22

Ill start by saying that I think the original circuit is a poor design, and the below modifications only make it marginally more suitable for this application. That said, I recognise that this is fun and educational to explore. If you don't want to use specialised ICs, I also strongly recommend that you take a look at solutions employing comparators, which are just magical and awesome.

Here's a modification to your circuit to provide a little hysteresis:


simulate this circuit – Schematic created using CircuitLab

The main additions are Q2, R2 and R4. Their purpose is to short-circuit R2 as Q1 switches on, which raises the potential at X, further switching on Q1 in a positive feedback loop.

Another addition is C1, whose role is to keep loop gain low at frequency, to prevent oscillation during the transition (not that it could be any worse than the oscillation you already have).

The last addition is D2, to protect your transistor. Without it, when coil current is cut off, the coil develops a huge potential difference which will eventually kill the transistor.

The relationship between IN and OUT is:

enter image description here

As you can see, there are two switching thresholds 12V and 10.7V. To switch on, battery voltage must increase to 12V, but the relay will open when it falls to 10.7V.

The exact thresholds are mostly dependent on D1 and R2. Increase R2 to increase hysteresis (and vice versa), the "gap" between the switching thresholds.

I can't say whether this will work in practice, because I didn't build it. You'll just have to try it, and see!


So, here it is... Any analogue circuit, that everyone depends on here, is always prone to oscillating, and the problem can definitely be fixed by adding more analog components. Instead, a microcontroller (the simplest one that I know may be ATTiny85) should be used to measure the battery level and "decide" whether the main switch (relay or power-transistor) should be On or Off. The uController needs to have an ADC input to measure the battery voltage through a simple voltage divider (more dividers may be installed for different critical voltages rather than hard-coding the voltage-value). It is the time that every electronic hobbyist knows how to use a microcontroller...even Arduino platform is simple enough and more than enough to solve problems like this.


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.