Index: firmware/App/Services/AlarmMgmt.c =================================================================== diff -u -r8c6a692af6ef8136e84e8a4fb189b014bd1711e7 -r49182b162048845906ddf1274a88d4a74998baf1 --- firmware/App/Services/AlarmMgmt.c (.../AlarmMgmt.c) (revision 8c6a692af6ef8136e84e8a4fb189b014bd1711e7) +++ firmware/App/Services/AlarmMgmt.c (.../AlarmMgmt.c) (revision 49182b162048845906ddf1274a88d4a74998baf1) @@ -7,8 +7,8 @@ * * @file AlarmMgmt.c * -* @author (last) Sean Nash -* @date (last) 31-Mar-2023 +* @author (last) Michael Garthwaite +* @date (last) 07-Apr-2023 * * @author (original) Sean Nash * @date (original) 07-Nov-2019 @@ -1196,9 +1196,11 @@ *************************************************************************/ static void clearAllRecoverableAlarms( void ) { - ALARM_ID_T a = alarmStatus.alarmTop; + ALARM_ID_T a; - for ( a = ALARM_ID_HD_SOFTWARE_FAULT; a < NUM_OF_ALARM_IDS; a++ ) + // assigning to 1 in order to prevent ALARM_ID_NO_ALARM being cleared + // which will cause a fault + for ( a = ( ( ALARM_ID_T ) 1 ) ; a < NUM_OF_ALARM_IDS; a++ ) { // Is alarm recoverable? if ( FALSE == ALARM_TABLE[ a ].alarmNoClear )