From 1749ab76e6d7e05bf7f42387d55d4d0d72718116 Mon Sep 17 00:00:00 2001 From: ndrsnhs Date: Thu, 21 May 2026 14:07:39 +0200 Subject: [PATCH 1/5] check for NoneType --- packages/modules/common/store/_inverter.py | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/packages/modules/common/store/_inverter.py b/packages/modules/common/store/_inverter.py index 7acb3dcf9c..065a00d76c 100644 --- a/packages/modules/common/store/_inverter.py +++ b/packages/modules/common/store/_inverter.py @@ -69,8 +69,11 @@ def fix_hybrid_values(self, state: InverterState) -> InverterState: for bat in hybrid: bat_get = data.data.bat_data[bat].data.get power -= bat_get.power - - exported += bat_get.imported - bat_get.exported - imported + if (bat_get.imported is not None and bat_get.exported is not None and + imported is not None and exported is not None): + exported += bat_get.imported - bat_get.exported - imported + else: + exported = None if state.dc_power is not None: # Manche Systeme werden auch aus dem Netz geladen, um einen Mindest-SoC zu halten. From d2ccbac0805ab39046c1b2932a39ec3ae5b9d89e Mon Sep 17 00:00:00 2001 From: ndrsnhs Date: Thu, 21 May 2026 15:26:26 +0200 Subject: [PATCH 2/5] remove warning --- packages/modules/common/store/_inverter.py | 5 ++++- packages/modules/common/utils/peak_filter.py | 3 --- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/packages/modules/common/store/_inverter.py b/packages/modules/common/store/_inverter.py index 065a00d76c..9d3392192a 100644 --- a/packages/modules/common/store/_inverter.py +++ b/packages/modules/common/store/_inverter.py @@ -18,7 +18,10 @@ def __init__(self, component_num: int) -> None: def set(self, inverter_state: InverterState): self.__pv.power.write(int(inverter_state.power)) self.__pv.energy.write(inverter_state.exported) - self.__pv.energy_k.write(inverter_state.exported / 1000) + self.__pv.energy_k.write( + inverter_state.exported if inverter_state.exported is None + else inverter_state.exported / 1000 + ) if inverter_state.currents: self.__pv.currents.write(inverter_state.currents) diff --git a/packages/modules/common/utils/peak_filter.py b/packages/modules/common/utils/peak_filter.py index 9ba10bf159..70957af5da 100644 --- a/packages/modules/common/utils/peak_filter.py +++ b/packages/modules/common/utils/peak_filter.py @@ -82,9 +82,6 @@ def check_total_energy( log.debug(f"PeakFilter: Unplausibler Zählerwert: {total_energy / 1000}kWh. " f"Differenz zum vorherigen Wert: {total_energy - previous_total_energy}Wh. " f"erlaubte Differenz: {round(allowed_deviation, 2)}Wh.") - self.fault_state.warning(f"Peakfilter: {total_energy / 1000}kWh. " - "Die Energie erscheint höher, als laut Anlagenkonfiguration plausibel " - "ist. Erneute Prüfung im nächsten Regelintervall.") else: log.debug(f"PeakFilter: Zählerwert: {total_energy}Wh innerhalb der zulässigen Grenzen. " f"Differenz zum vorherigen Wert: {total_energy - previous_total_energy}Wh.") From da82de2fc4c482f9d920334e18a0ca2fe6572311 Mon Sep 17 00:00:00 2001 From: ndrsnhs Date: Thu, 21 May 2026 15:28:32 +0200 Subject: [PATCH 3/5] remove whitespace --- packages/modules/common/store/_inverter.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/modules/common/store/_inverter.py b/packages/modules/common/store/_inverter.py index 9d3392192a..9790107a2f 100644 --- a/packages/modules/common/store/_inverter.py +++ b/packages/modules/common/store/_inverter.py @@ -19,7 +19,7 @@ def set(self, inverter_state: InverterState): self.__pv.power.write(int(inverter_state.power)) self.__pv.energy.write(inverter_state.exported) self.__pv.energy_k.write( - inverter_state.exported if inverter_state.exported is None + inverter_state.exported if inverter_state.exported is None else inverter_state.exported / 1000 ) if inverter_state.currents: From 042b634b9584663528f3e37b6331d64e67992ffb Mon Sep 17 00:00:00 2001 From: ndrsnhs Date: Thu, 21 May 2026 15:39:33 +0200 Subject: [PATCH 4/5] check exported value --- packages/modules/common/store/_inverter.py | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/packages/modules/common/store/_inverter.py b/packages/modules/common/store/_inverter.py index 9790107a2f..14f82af6d9 100644 --- a/packages/modules/common/store/_inverter.py +++ b/packages/modules/common/store/_inverter.py @@ -17,11 +17,9 @@ def __init__(self, component_num: int) -> None: def set(self, inverter_state: InverterState): self.__pv.power.write(int(inverter_state.power)) - self.__pv.energy.write(inverter_state.exported) - self.__pv.energy_k.write( - inverter_state.exported if inverter_state.exported is None - else inverter_state.exported / 1000 - ) + if inverter_state.exported is not None: + self.__pv.energy.write(inverter_state.exported) + self.__pv.energy_k.write(inverter_state.exported / 1000) if inverter_state.currents: self.__pv.currents.write(inverter_state.currents) From 1eb5287acde8fae7d88071dd747dab3b5a2ee91b Mon Sep 17 00:00:00 2001 From: ndrsnhs Date: Fri, 22 May 2026 10:36:26 +0200 Subject: [PATCH 5/5] add log output --- packages/modules/common/store/_inverter.py | 2 ++ 1 file changed, 2 insertions(+) diff --git a/packages/modules/common/store/_inverter.py b/packages/modules/common/store/_inverter.py index 14f82af6d9..72e9d13197 100644 --- a/packages/modules/common/store/_inverter.py +++ b/packages/modules/common/store/_inverter.py @@ -20,6 +20,8 @@ def set(self, inverter_state: InverterState): if inverter_state.exported is not None: self.__pv.energy.write(inverter_state.exported) self.__pv.energy_k.write(inverter_state.exported / 1000) + else: + log.debug("Kein gültiger Zählerstand. Wert wird nicht aktualisiert.") if inverter_state.currents: self.__pv.currents.write(inverter_state.currents)