Skip to content

Power and SHT41

The PZEM-004T is read over UART and produces six metrics:

Metric Unit
voltage V
current A
power_draw W
energy kWh (cumulative)
frequency Hz
power_factor unitless

pzem defaults to true. If the PZEM is not connected or does not answer, voltage: null appears in status (serial) and the power metrics are not sent; set pzem = false if it is simply not used, so that it is not read, not sent, and its power alarm limits are not evaluated.

{"cfg_ver":10,"volt_min_v":198,"volt_max_v":242,"current_max_a":16,"power_max_w":3500}
Key Alarm Default
volt_min_v alarm_voltage_low when voltage is below this value 0 (disabled)
volt_max_v alarm_voltage_high when above this value 0
current_max_a alarm_current_high 0
power_max_w alarm_power_draw_high 0

A limit of 0 means that alarm is disabled. volt_min_v must be lower than volt_max_v. A power alarm ends when the value returns past the limit by 2% of that limit (not configurable). See Alarms.

Besides the regular interval (telemetry_interval_ms, default 10 seconds), telemetry is sent early when power changes by power_report_delta_w watts (default 10; 0 = disabled) since the last send. Before firmware 0.21.0 this key was power_report_delta_pct (percent); the old value is not carried over, and the new default applies.

The built-in PZEM-004T measures one point. To monitor many points (e.g. one meter per rack), use Modbus RTU meters: Modbus sources. The PZEM-004T keeps running alongside Modbus sources and names do not clash.

An optional I2C sensor at address 0x44. Enable it:

{"cfg_ver":11,"sht41":true}

Changing sht41 makes Sentinel reboot. The metrics sent are temp_ambient (°C) and humidity (%RH). Both can be used in rules, but have no built-in alarm.