Index: firmware/App/Modes/ModeFault.c =================================================================== diff -u -r3850bef541c43c1fb81663eb7d1ca6c98e933627 -r7d4711edd7b40cd3e29f43e766f79a8a09586fe9 --- firmware/App/Modes/ModeFault.c (.../ModeFault.c) (revision 3850bef541c43c1fb81663eb7d1ca6c98e933627) +++ firmware/App/Modes/ModeFault.c (.../ModeFault.c) (revision 7d4711edd7b40cd3e29f43e766f79a8a09586fe9) @@ -1,14 +1,14 @@ /************************************************************************** * -* Copyright (c) 2019-2023 Diality Inc. - All Rights Reserved. +* Copyright (c) 2019-2024 Diality Inc. - All Rights Reserved. * * THIS CODE MAY NOT BE COPIED OR REPRODUCED IN ANY FORM, IN PART OR IN * WHOLE, WITHOUT THE EXPLICIT PERMISSION OF THE COPYRIGHT OWNER. * * @file ModeFault.c * -* @author (last) Sean Nash -* @date (last) 19-Dec-2022 +* @author (last) Dara Navaei +* @date (last) 29-Aug-2023 * * @author (original) Dara Navaei * @date (original) 05-Nov-2019 @@ -75,7 +75,7 @@ deenergizeActuators( PARK_CONC_PUMPS ); initFaultMode(); - + setCurrentSubState( NO_SUB_STATE ); // Publish POST failure status to UI if fault triggered in Init/POST mode if ( DG_MODE_INIT == getPreviousOperationMode() ) { @@ -121,7 +121,13 @@ break; case DG_FAULT_STATE_COMPLETE: - // Do nothing + // Do nothing unless the test configuration to recover treatment is enabled + if ( ( TRUE == getTestConfigStatus( TEST_CONFIG_RECOVER_TREATMENT ) ) && ( TRUE == hasRecoverFromFaultModeBeenSet() ) ) + { + DG_OP_MODE_T prevMode = getPreviousOperationMode(); + + requestNewOperationMode( prevMode ); + } break; default: