Index: firmware/App/Modes/ModeHeatDisinfectActiveCool.c =================================================================== diff -u -rd325999b7b3ea03b7e294cb8a0b97df93812fbe9 -rf62fc45da6d59fe48fafbb49387f225fe9efd384 --- firmware/App/Modes/ModeHeatDisinfectActiveCool.c (.../ModeHeatDisinfectActiveCool.c) (revision d325999b7b3ea03b7e294cb8a0b97df93812fbe9) +++ firmware/App/Modes/ModeHeatDisinfectActiveCool.c (.../ModeHeatDisinfectActiveCool.c) (revision f62fc45da6d59fe48fafbb49387f225fe9efd384) @@ -789,6 +789,7 @@ // If there is any fault alarm and we are not already in the cancel water path state, set it to cancel water path state heatDisinfectActiceCoolPrevState = heatDisinfectActiveCoolState; heatDisinfectActiveCoolState = DG_HEAT_DISINFECT_ACTIVE_COOL_CANCEL_WATER_PATH_STATE; + setHeatDisinfectActiveCoolActuators( heatDisinfectActiveCoolState ); } } } @@ -1032,8 +1033,13 @@ case DG_HEAT_DISINFECT_ACTIVE_COOL_CANCEL_WATER_PATH_STATE: case DG_HEAT_DISINFECT_ACTIVE_COOL_CANCEL_BASIC_PATH_STATE: case DG_HEAT_DISINFECT_ACTIVE_COOL_STATE_COMPLETE: - // Do nothing the actuators in the above states are handled in a different part of code + // De-energize the actuators in the state upon transitioning to these states + deenergizeActuators( NO_PARK_CONC_PUMPS ); break; + + default: + SET_ALARM_WITH_2_U32_DATA( ALARM_ID_DG_SOFTWARE_FAULT, SW_FAULT_ID_HEAT_DISINFECT_ACTIVE_COOL_INVALID_EXEC_STATE, state ) + break; } } @@ -1092,6 +1098,7 @@ heatDisinfectActiceCoolPrevState = state; state = DG_HEAT_DISINFECT_ACTIVE_COOL_CANCEL_WATER_PATH_STATE; + setHeatDisinfectActiveCoolActuators( state ); } return state;