This LED tells you how dead your battery is
A light for a 12V lead acid battery: green when it's healthy, yellow when it's getting low, red when it's nearly flat.

Free build sheet
The parts, every wire with its length and bend points, a bend guide, both sides of the board and checkboxes to track your progress. Print it or keep it open at the bench.
Open the build sheetWhat you need
13 parts on a perfboard 15 × 29 holes, plus hookup wire.
| Qty | Part | Where to buy |
|---|---|---|
| 1 | Ceramic Cap100nF C1 | Buy Ceramic Cap on Amazon |
| 1 | Diode (axial)1N4733A D1 | |
| 1 | Screw Terminal 2P (5.08mm) J1 | |
| 1 | RGB LED (common anode) Q1 | Buy RGB LED (common anode) on Amazon |
| 1 | Resistor (axial)1.5k R1 | Buy Resistor (axial) on Amazon |
| 1 | Resistor (axial)30k R2 | Buy Resistor (axial) on Amazon |
| 1 | Resistor (axial)11k R3 | Buy Resistor (axial) on Amazon |
| 1 | Resistor (axial)24k R4 | Buy Resistor (axial) on Amazon |
| 2 | Resistor (axial)2.2k R5, R7 | Buy Resistor (axial) on Amazon |
| 1 | Resistor (axial)43k R6 | Buy Resistor (axial) on Amazon |
| 1 | Resistor (axial)1.8k R8 | Buy Resistor (axial) on Amazon |
| 1 | DIP-8 U1 |
Check every pin against the datasheet of the exact part in your hands before wiring.
As an Amazon Associate I earn from qualifying purchases.
Cut list
17 wires, 461 mm (18.1 in) in total, in the order the build sheet cuts them. Wire numbers match the build sheet. Each length includes 5 mm per end to go through the hole.
| Wire | Colour and net | Length | ||
|---|---|---|---|---|
| 12 | BlackVBAT K18 → E22 | K18 → E22 | 34mm | 18mm (45°), 21mm (45°) |
| 6 | BlackTH_LOW H13 → J22 | H13 → J22 | 38mm | 10mm (90°) |
| 5 | BlueTH_HIGH E18 → G19 | E18 → G19 | 18mm | 10mm (90°) |
| 17 | BlueGND G16 → I19 | G16 → I19 | 23mm | 10mm (90°) |
| 11 | BlueVBAT L7 → L19 | L7 → L19 | 40mm | Straight |
| 4 | GreenRED_DRV D22 → E20 | D22 → E20 | 18mm | 10mm (90°) |
| 10 | GreenVBAT F7 → J7 | F7 → J7 | 20mm | Straight |
| 16 | GreenGND D7 → H17 | D7 → H17 | 40mm | 20mm (45°) |
| 13 | RedVBAT F23 → G26 | F23 → G26 | 19mm | 10mm (45°) |
| 1 | RedGRN_DRV L22 → G23 | L22 → G23 | 25mm | 8mm (90°) |
| 7 | RedVSENSE J11 → H19 | J11 → H19 | 35mm | 25mm (90°) |
| 9 | WhiteVBAT E6 → E4 | E6 → E4 | 15mm | Straight |
| 3 | WhiteGRN_A L26 → H26 | L26 → H26 | 20mm | Straight |
| 15 | WhiteGND I4 → M6 | I4 → M6 | 25mm | 15mm (90°) |
| 2 | YellowRED_A D26 → F26 | D26 → F26 | 15mm | Straight |
| 14 | YellowGND C6 → H3 | C6 → H3 | 30mm | 13mm (90°) |
| 8 | YellowVSENSE K12 → H23 | K12 → H23 | 46mm | 8mm (90°), 35mm (90°) |
About this build
This light tells you how much is left in a 12V lead acid pack. Green above about 12.4V, yellow between 11.8V and 12.4V, red below 11.8V.
One LM393 dual comparator does the work. A resistor divider scales the battery down to a sense voltage, and a 1N4733A 5.1V zener sets a stable reference. A second divider off that reference makes two thresholds, one per comparator, and each comparator decides whether its colour is on. Yellow is just red and green lit together.
The LM393 outputs are open collector, so they can only pull down. That's exactly what a common anode RGB LED wants: each output sinks current out of one colour, and no pull ups are needed. Eight resistors, a 100nF ceramic and a 2 pin screw terminal for the battery leads round it out.
More builds
See all builds
VideoIs that pin high or low? Two transistors tell you
Touch the probe to a 5V logic signal: red means high, green means low, nothing means it's floating. Two transistors, no chip.
10 parts · 6 wires
Tools and test
VideoHow your ESP32 reads a 12V battery: the voltage divider
Two resistors scale a 12V battery down to a voltage an ESP32's 3.3V input can read safely, with a zener as a backstop.
6 parts · 9 wires
PowerSensors
VideoThis lights an LED from a dead battery
One transistor and a hand wound coil that light a white LED from a nearly dead 1V cell. Six parts.
6 parts · 9 wires
LightsPower