@@ -340,6 +340,10 @@ def _is_phase_switch_required(self) -> bool:
340340 STOP_CHARGING = ", dafür wird die Ladung unterbrochen."
341341
342342 def check_phase_switch_completed (self ):
343+ def _set_failed_phase_switches () -> None :
344+ # Umschaltung fehlgeschlagen
345+ if self .data .set .phases_to_use != self .data .get .phases_in_use :
346+ self .data .control_parameter .failed_phase_switches += 1
343347 try :
344348 evu_counter = data .data .counter_all_data .get_evu_counter ()
345349 charging_ev = self .data .set .charging_ev_data
@@ -369,8 +373,10 @@ def check_phase_switch_completed(self):
369373 if phase_switch .phase_switch_thread_alive (self .num ) is False :
370374 self .data .control_parameter .state = ChargepointState .PHASE_SWITCH_AWAITED
371375 if self ._is_phase_switch_required () is False :
376+ _set_failed_phase_switches ()
372377 self .data .control_parameter .state = ChargepointState .CHARGING_ALLOWED
373378 else :
379+ _set_failed_phase_switches ()
374380 self .data .control_parameter .state = ChargepointState .CHARGING_ALLOWED
375381 except Exception :
376382 log .exception ("Fehler in der Ladepunkt-Klasse von " + str (self .num ))
@@ -396,7 +402,6 @@ def _set_failed_phase_switches() -> None:
396402 self .data .set .phases_to_use = self .data .control_parameter .phases
397403 if self .hw_supports_phase_switch ():
398404 if self ._is_phase_switch_required ():
399- _set_failed_phase_switches ()
400405 # Wenn die Umschaltverzögerung aktiv ist, darf nicht umgeschaltet werden.
401406 if (self .data .control_parameter .state != ChargepointState .PERFORMING_PHASE_SWITCH and
402407 (self .data .control_parameter .state != ChargepointState .WAIT_FOR_USING_PHASES or
0 commit comments