Index: firmware/App/Services/SystemCommMessages.c =================================================================== diff -u -r239f565516c73aae797288effcfdf1fca0a361a0 -rec4a8156ebdaf7396a0242addacfa01439d8a38e --- firmware/App/Services/SystemCommMessages.c (.../SystemCommMessages.c) (revision 239f565516c73aae797288effcfdf1fca0a361a0) +++ firmware/App/Services/SystemCommMessages.c (.../SystemCommMessages.c) (revision ec4a8156ebdaf7396a0242addacfa01439d8a38e) @@ -3373,4 +3373,35 @@ sendTestAckResponseMsg( (MSG_ID_T)message->hdr.msgID, status ); } +/*********************************************************************//** + * @brief + * The handleTestHDCommunicationStatusOverrideRequest function handles a request + * request to override the HD Communication Status. + * @details Inputs: none + * @details Outputs: message handled + * @param message a pointer to the message to handle + * @return none + *************************************************************************/ +void handleTestHDCommunicationStatusOverrideRequest(MESSAGE_T *message) +{ + TEST_OVERRIDE_PAYLOAD_T payload; + BOOL result = FALSE; + + // verify payload length + if ( sizeof( TEST_OVERRIDE_PAYLOAD_T ) == message->hdr.payloadLen ) + { + memcpy( &payload, message->payload, sizeof( TEST_OVERRIDE_PAYLOAD_T ) ); + if ( FALSE == payload.reset ) + { + result = testSetHDCommunicationStatus(); + } + else + { + result = testResetHDCommuncationStatus(); + } + } + + // respond to request + sendTestAckResponseMsg( (MSG_ID_T)message->hdr.msgID, result ); +} /**@}*/