Index: firmware/App/Services/AlarmMgmt.c =================================================================== diff -u -r620104f4a9e3148575703981a3063b9605b6e9b8 -r941afbaab7fc86f40fa49f9d110d481f65b44b68 --- firmware/App/Services/AlarmMgmt.c (.../AlarmMgmt.c) (revision 620104f4a9e3148575703981a3063b9605b6e9b8) +++ firmware/App/Services/AlarmMgmt.c (.../AlarmMgmt.c) (revision 941afbaab7fc86f40fa49f9d110d481f65b44b68) @@ -386,44 +386,47 @@ * according to the current state of alarms. * @details * Inputs : none - * Outputs : none + * Outputs : Alarm lamp patter set according to current alarms status. * @param none * @return none *************************************************************************/ static void setAlarmLampAndAudio( void ) { - switch ( alarmStatus.alarmsState ) + if ( getCurrentAlarmLampPattern() != LAMP_PATTERN_MANUAL ) { - case ALARM_PRIORITY_NONE: - requestAlarmLampPattern( LAMP_PATTERN_OK ); - // TODO - no audio - break; + switch ( alarmStatus.alarmsState ) + { + case ALARM_PRIORITY_NONE: + requestAlarmLampPattern( LAMP_PATTERN_OK ); + // TODO - no audio + break; - case ALARM_PRIORITY_LOW: - requestAlarmLampPattern( LAMP_PATTERN_LOW_ALARM ); - // TODO - low priority audio - break; + case ALARM_PRIORITY_LOW: + requestAlarmLampPattern( LAMP_PATTERN_LOW_ALARM ); + // TODO - low priority audio + break; - case ALARM_PRIORITY_MEDIUM: - requestAlarmLampPattern( LAMP_PATTERN_MED_ALARM ); - // TODO - medium priority audio - break; + case ALARM_PRIORITY_MEDIUM: + requestAlarmLampPattern( LAMP_PATTERN_MED_ALARM ); + // TODO - medium priority audio + break; - case ALARM_PRIORITY_HIGH: - if ( TRUE == alarmTable[alarmStatus.alarmTop].alarmIsFault ) - { - requestAlarmLampPattern( LAMP_PATTERN_FAULT ); - } - else - { - requestAlarmLampPattern( LAMP_PATTERN_HIGH_ALARM ); - } - // TODO - high priority audio - break; + case ALARM_PRIORITY_HIGH: + if ( TRUE == alarmTable[alarmStatus.alarmTop].alarmIsFault ) + { + requestAlarmLampPattern( LAMP_PATTERN_FAULT ); + } + else + { + requestAlarmLampPattern( LAMP_PATTERN_HIGH_ALARM ); + } + // TODO - high priority audio + break; - default: - SET_ALARM_WITH_2_U32_DATA( ALARM_ID_SOFTWARE_FAULT, SW_FAULT_ID_ALARM_MGMT_LAMP_INVALID_ALARM_STATE, alarmStatus.alarmsState ) - break; + default: + SET_ALARM_WITH_2_U32_DATA( ALARM_ID_SOFTWARE_FAULT, SW_FAULT_ID_ALARM_MGMT_LAMP_INVALID_ALARM_STATE, alarmStatus.alarmsState ) + break; + } } }