Index: firmware/App/Modes/TreatmentEnd.c =================================================================== diff -u -r5b61b06231cc0d8266f59c3c1f891d650bc1ac12 -rfb5af9238e0470945ee6d07f67a7e12f1be51f1f --- firmware/App/Modes/TreatmentEnd.c (.../TreatmentEnd.c) (revision 5b61b06231cc0d8266f59c3c1f891d650bc1ac12) +++ firmware/App/Modes/TreatmentEnd.c (.../TreatmentEnd.c) (revision fb5af9238e0470945ee6d07f67a7e12f1be51f1f) @@ -193,7 +193,11 @@ { TREATMENT_END_STATE_T priorSubState = treatmentEndState; - txEndTimerCtr++; + // Has max time waiting for user to initiate final rinseback been exceeded? + if ( ++txEndTimerCtr > TX_END_TIMEOUT_MS ) + { + activateAlarmNoData( ALARM_ID_HD_END_TREATMENT_TIMEOUT_ALARM ); + } switch ( treatmentEndState ) { @@ -272,11 +276,6 @@ { signalGoToRinseback(); } - // Has max time waiting for user to initiate final rinseback been exceeded? - else if ( txEndTimerCtr > TX_END_TIMEOUT_MS ) - { - activateAlarmNoData( ALARM_ID_HD_END_TREATMENT_TIMEOUT_ALARM ); - } return result; }