From 9f298acfcc142e464e29dd3de010821aa1787f20 Mon Sep 17 00:00:00 2001 From: LKuemmel Date: Mon, 13 Oct 2025 10:20:14 +0200 Subject: [PATCH] improve error handling internal cp --- .../chargepoints/external_openwb/chargepoint_module.py | 5 ++++- .../modules/internal_chargepoint_handler/clients.py | 10 +++++----- 2 files changed, 9 insertions(+), 6 deletions(-) diff --git a/packages/modules/chargepoints/external_openwb/chargepoint_module.py b/packages/modules/chargepoints/external_openwb/chargepoint_module.py index 7116b8a630..9ece0a86b5 100644 --- a/packages/modules/chargepoints/external_openwb/chargepoint_module.py +++ b/packages/modules/chargepoints/external_openwb/chargepoint_module.py @@ -115,7 +115,10 @@ def on_message(client, userdata, message): elif received_topics[f"{topic_prefix}fault_state"] == 1: self.fault_state.warning(received_topics[f"{topic_prefix}fault_str"]) except KeyError: - raise KeyError("Es wurden nicht alle notwendigen Daten empfangen.") + if received_topics[f"{topic_prefix}fault_state"] == 2: + self.fault_state.error(received_topics[f"{topic_prefix}fault_str"]) + else: + raise KeyError("Es wurden nicht alle notwendigen Daten empfangen.") else: self.fault_state.warning(f"Keine MQTT-Daten für Ladepunkt {self.config.name} empfangen. Noch keine " "Daten nach dem Start oder Ladepunkt nicht erreichbar.") diff --git a/packages/modules/internal_chargepoint_handler/clients.py b/packages/modules/internal_chargepoint_handler/clients.py index db510591f7..5055fb2ac9 100644 --- a/packages/modules/internal_chargepoint_handler/clients.py +++ b/packages/modules/internal_chargepoint_handler/clients.py @@ -45,16 +45,16 @@ def __init__(self, def _evse_factory(self, client: Union[ModbusSerialClient_, ModbusTcpClient_], evse_ids: List[int]) -> evse.Evse: for modbus_id in evse_ids: - evse_client = evse.Evse(modbus_id, client) - with client: - try: + try: + evse_client = evse.Evse(modbus_id, client) + with client: if evse_client.get_firmware_version() > EVSE_MIN_FIRMWARE: log.debug(client) with ModifyLoglevelContext(log, logging.DEBUG): log.debug("Modbus-ID der EVSE an LP"+str(self.local_charge_point_num)+": "+str(modbus_id)) return evse_client - except Exception: - pass + except Exception: + pass else: return None