Index: firmware/App/Services/AlarmMgmtDD.c =================================================================== diff -u -ra89da634ef6fe29cc08692b0821fa4e35372cecb -r095866efd8f10bdead490578e7584051d79292f0 --- firmware/App/Services/AlarmMgmtDD.c (.../AlarmMgmtDD.c) (revision a89da634ef6fe29cc08692b0821fa4e35372cecb) +++ firmware/App/Services/AlarmMgmtDD.c (.../AlarmMgmtDD.c) (revision 095866efd8f10bdead490578e7584051d79292f0) @@ -197,7 +197,7 @@ ( ( props.alarmBlockEndTx != TRUE ) || ( tdModes.tdMode != MODE_POST ) ) ) { // broadcast alarm and data if alarm not already active - if ( ( FALSE == isAlarmActive( alarm ) ) ) + if ( ( FALSE == isAlarmActive( alarm ) ) && ( TRUE == isTDCommunicating() ) ) { broadcastAlarmTriggered( alarm, alarmData1, alarmData2, props.alarmSource ); } @@ -228,8 +228,10 @@ // clear alarm and broadcast alarm clear if not already cleared (and not a DD fault which should not be cleared) if ( ( TRUE == isAlarmActive( alarm ) ) && ( props.alarmIsDDFault != TRUE ) ) { - - broadcastAlarmCleared( alarm, props.alarmSource ); + if ( TRUE == isTDCommunicating() ) + { + broadcastAlarmCleared( alarm, props.alarmSource ); + } setAlarmActive( alarm, FALSE ); clearAlarmConditionDD( alarm ); } @@ -263,7 +265,10 @@ // clear alarm and broadcast alarm clear if not already cleared if ( TRUE == isAlarmConditionDetected( alarm ) ) { - broadcastAlarmConditionCleared( alarm, props.alarmSource ); + if ( TRUE == isTDCommunicating() ) + { + broadcastAlarmConditionCleared( alarm, props.alarmSource ); + } setAlarmConditionDetected( alarm, FALSE ); } }