Reports voltage, current, real power, power factor, and frequency through a custom analog front end that scales sensor outputs to the ESP32’s input range.
Replaced polling with an LTspice-designed precision rectifier and RC hold stage that triggers a GPIO interrupt within 100 ms of an outage, so the ESP32 idles to save battery.
Logs readings store-and-forward to an SD card and syncs them to a server database when Wi-Fi returns.
Gallery
Select any image or video to view it full size.
Fig. 1 Demo of the breadboard prototype.
Fig. 2 System block diagram: an ACS758 current sensor in series with the load and a ZMPT101B voltage sensor across the line, both read by the ESP32.
Fig. 3 Live readings on the prototype: 116.4 V, 4.45 A, 375.8 W real power, and 518.4 VA apparent power.
Fig. 4 When power drops, the LCD shows “Power Outage – Check SD” and the event is logged to the SD card.
Fig. 5 LTspice schematic of the outage detector: an AD8505 precision rectifier feeding an RC hold stage (20 µF, 100 kΩ).
Fig. 6 Simulation: the AC input (top) cuts out at about 17 ms and the detector output (bottom) decays along its RC curve, which trips the ESP32’s interrupt.