From 9f34fbd393b6b7f9048ac7093b5a82fe0ab0037e Mon Sep 17 00:00:00 2001 From: Lutz Finsterle Date: Mon, 6 Apr 2026 14:39:04 +0200 Subject: [PATCH] Fix compressor idle detection: use sensors_power_value, lower threshold to 20W MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit heating_compressors_0_power_value is a Viessmann load level (stuck at 10), not actual watts. The real power sensor is sensors_power_value (0W idle, 27-80W when running). With the wrong metric SG-Ready was always released early after ~6 min regardless of min_runtime_sg_ready. Threshold lowered 50→20W to cleanly separate idle (0W) from low-modulation running states. Co-Authored-By: Claude Sonnet 4.6 --- configs/ems-config.yaml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/configs/ems-config.yaml b/configs/ems-config.yaml index f592b09..662a4e3 100644 --- a/configs/ems-config.yaml +++ b/configs/ems-config.yaml @@ -10,7 +10,7 @@ prometheus: battery_soc: "ess_stateOfCharge_value" # 0-100% pv_production: "photovoltaic_production_current_value" # watts battery_power: "ess_power_value" # watts - compressor_power: "heating_compressors_0_power_value" # watts + compressor_power: "heating_compressors_0_sensors_power_value" # watts (actual power sensor; _power_value is a load level, not watts) ambient_temp: "heating_sensors_temperature_outside_value" # °C phase_l1_power: "pcc_ac_active_power_phaseOne" # per-phase grid power L1 (W) phase_l2_power: "pcc_ac_active_power_phaseTwo" # per-phase grid power L2 (W) @@ -78,7 +78,7 @@ strategic: # Consumer behavior — idle detection thresholds consumers: - compressor_idle_w: 50 # heat pump compressor below this = idle (W) + compressor_idle_w: 20 # heat pump compressor below this = idle (W); sensors_power_value runs 27-80W when active, 0W when idle wallbox_min_charge_w: 50 # wallbox below this = car not charging (W) idle_cycles: 3 # consecutive idle cycles before early release (~6 min at 2-min poll)