FAQ
TL;DR: Tasmota still works with PZEM‑004. Example: 3 modules on one ESP run on 12.3.1 [Elektroda, Erbit, post #20887342] “For each phase separately — then it works” [Elektroda, Erbit, post #20887342] Use EnergyTotal1/2/3 0 or EnergyReset3 0, then power‑cycle if needed [Elektroda, sznickers, #21432837; “Tasmota Commands”].
Why it matters: If you can’t reset kWh counters on NodeMCU/ESP, the right command and power‑cycle sequence fixes it fast—single or multi‑phase.
Quick Facts
- Versions seen working: 10.1.0 (legacy), 12.3.1 (multi‑PZEM), 13.1.0 (other device); users confirm resets on 12.3.1 [Elektroda, Daro1003, #20887207; Elektroda, Erbit, #20887342].
- Reset map: EnergyReset1=Today, EnergyReset2=Yesterday, EnergyReset3=Total; you can also set Total in 0.001 kWh steps (e.g., 33557123=33557.123 kWh) [“Tasmota Commands”; GitHub Discussions #10567].
- Multi‑meter indexing: use EnergyTotal1/2/3 0 or EnergyTotal 1/2/3 0 per phase/PZEM [Elektroda, Erbit, #20887342; Elektroda, Daro1003, #20887405].
- Edge case: some resets apply only after removing 230 V from PZEM and rebooting ESP [Elektroda, sznickers, #21432805; Elektroda, sznickers, #21432837].
- Advanced: raw serial command example SerialSend5 0600030002F80B for PZEM per vendor docs [Elektroda, xury, #21439438; “PZEM‑004T v3.0 Datasheet”].
Does Tasmota 13.3.0 still support PZEM‑004/004T on NodeMCU?
Yes. Users run PZEM‑004 with Tasmota 12.3.1 on one ESP across 3 modules. No removal is evidenced in 13.x discussions. Use a sensors-enabled build [Elektroda, Erbit, #20887342; “Tasmota Firmware Variants”; “Tasmota Sensors”].
How do I reset total energy on single‑phase PZEM‑004?
Use EnergyReset3 0 or EnergyTotal 0. If it doesn’t change immediately, remove 230 V from the PZEM, reboot the ESP, then re‑power [GitHub Discussions #10567; Elektroda, sznickers, #21432805]. “Reset applies after a power cycle in some setups” [Elektroda, sznickers, post #21432805]
How do I reset totals on a three‑phase setup (multiple PZEMs)?
Reset each phase separately: EnergyTotal1 0, EnergyTotal2 0, EnergyTotal3 0. Alternative syntax: EnergyTotal 1 0, EnergyTotal 2 0, EnergyTotal 3 0. Power‑cycle if values persist [Elektroda, Erbit, #20887342; Elektroda, Daro1003, #20887405; Elektroda, sznickers, #21432837].
What if the reset commands don’t work right away?
Edge case: sending the command works, but values update only after removing 230 V from the PZEM and rebooting the ESP. Users confirmed success after this sequence [Elektroda, sznickers, #21432805; Elektroda, sznickers, #21432837].
Can I set a custom starting kWh total?
Yes. Example: EnergyTotal1 1000 and EnergyTotal2 2000 to start from 3000 kWh combined. Or set with EnergyReset3 33557123 (33557.123 kWh) [Elektroda, sznickers, #21432837; GitHub Discussions #10567].
Which command syntax should I use: EnergyTotal1 0 or EnergyTotal 1 0?
Both syntaxes appear in use. They target the indexed PZEM/phase. Consistently resetting per index solves multi‑phase resets [Elektroda, Erbit, #20887342; Elektroda, Daro1003, #20887405].
Why did my single‑phase meter not reset when I used three‑phase commands?
Using multi‑index commands on a single‑phase setup does nothing. Use the single‑phase form from the first post (e.g., EnergyTotal 0 or EnergyReset3 0) [Elektroda, Erbit, #21432737; Elektroda, Daro1003, #20887207; GitHub Discussions #10567].
How many PZEM‑004 modules can I run on one ESP?
Real‑world reports show 3 modules on one ESP with Tasmota 12.3.1, while another user capped at 2 per ESP and used 3 boards (6 total) [Elektroda, Erbit, #20887342; Elektroda, sznickers, #21432837]. Bus wiring, power, and UART limits can constrain this [“Tasmota Sensors”].
What’s a quick 3‑step to reliably reset multi‑phase totals?
- Send EnergyTotal1 0, EnergyTotal2 0, EnergyTotal3 0 (or EnergyReset3 0 per channel). 2. Remove 230 V from PZEM(s) and power down the ESP. 3. Re‑apply 230 V, then power the ESP [Elektroda, Erbit, #20887342; Elektroda, sznickers, #21432837; GitHub Discussions #10567].
Can I integrate these readings with Home Assistant, Domoticz, or HomeMatic?
Yes. Users report using HomeMatic. Tasmota exposes MQTT/HTTP telemetry compatible with HA/Domoticz/HomeMatic [Elektroda, Erbit, #20887473; “Tasmota Sensors”].
Why did EnergyTotal 0 not reset on my device, while it worked on SP111?
SP111 uses a different energy chip that responds to the simple reset. PZEM‑004 often needs per‑phase indexing or EnergyReset3 and a power cycle [Elektroda, Daro1003, #20887207; Elektroda, Erbit, #20887342; GitHub Discussions #10567].
Is there a low‑level way to reset/read via serial?
Yes. You can send raw frame(s), e.g., SerialSend5 0600030002F80B, per PZEM documentation. Use only if you understand the protocol [Elektroda, xury, #21439438; “PZEM‑004T v3.0 Datasheet”].
Do I need to reboot both the ESP and cut mains to PZEM to commit a reset?
Some users saw resets only after removing 230 V from PZEM and then cycling ESP 5 V. Cutting both ensured the new totals persisted [Elektroda, sznickers, #21432805; Elektroda, sznickers, #21432837].
Any known failure mode I should avoid?
Using three‑phase commands on a single‑phase setup will not reset anything. Also, not power‑cycling after a reset command may leave totals unchanged in the UI [Elektroda, Erbit, #21432737; Elektroda, sznickers, #21432805].
What versions are confirmed by users in this thread?
PZEM‑004 works on 12.3.1 with 3 modules. SP111 on 13.1.0 reset fine (different chip). Legacy 10.1.0 also in use [Elektroda, Erbit, #20887342; Elektroda, Daro1003, #20887207].