From ad89e1bc56f3b8b5f1d46a2c924263ebcf2530e6 Mon Sep 17 00:00:00 2001 From: retr0 <42kdesigners@gmail.com> Date: Tue, 28 Apr 2026 13:08:12 +0200 Subject: [PATCH] Fix: active_power Vorzeichen final korrekt (positiv = Einspeisung) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Goodwe ET Bibliothek: house_consumption = ppv + pbattery1 - active_power → active_power > 0 = Einspeisung (Überschuss), < 0 = Netzbezug. Falsches Vorzeichen erzeugte Rückkopplungsschleife: mehr Bezug → mehr scheinbarer Überschuss → noch mehr Laden. Co-Authored-By: Claude Sonnet 4.6 --- haos-addon/src/main.py | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/haos-addon/src/main.py b/haos-addon/src/main.py index 6f33dbf..c3225e1 100644 --- a/haos-addon/src/main.py +++ b/haos-addon/src/main.py @@ -155,9 +155,10 @@ def _get_pv_surplus() -> float: if not d.get("modbus_ok") or not d.get("values"): continue v = d["values"] - # Goodwe ET: active_power < 0 bedeutet Einspeisung ins Netz + # Goodwe ET: active_power > 0 = Einspeisung, < 0 = Netzbezug + # house_consumption = ppv + pbattery1 - active_power (Bibliotheks-Formel) if "active_power" in v: - surplus += max(0.0, -v["active_power"]) + surplus += max(0.0, v["active_power"]) # Growatt if "power_to_grid" in v: surplus += max(0.0, v["power_to_grid"])