Index: firmware/App/Services/SystemComm.c =================================================================== diff -u -rda7e8c1b71db9273f83e9d0ba7d20e74e758a8ad -r64807fd74f2b3b2cb7a08f8045a43677b2f2f820 --- firmware/App/Services/SystemComm.c (.../SystemComm.c) (revision da7e8c1b71db9273f83e9d0ba7d20e74e758a8ad) +++ firmware/App/Services/SystemComm.c (.../SystemComm.c) (revision 64807fd74f2b3b2cb7a08f8045a43677b2f2f820) @@ -1704,6 +1704,10 @@ handleAirPumpSetState( message ); break; + case MSD_ID_HD_RTC_STATUS_OVERRIDE: + handleHDRTCstatusOverrideRequest( message ); + break; + // The default cannot be reached in VectorCAST since the cases are run in a for loop default: // Unrecognized message ID received - ignore Index: firmware/App/Services/SystemCommMessages.c =================================================================== diff -u -r660876bca7ae34f862ae9cc6feef9a30ec02fe94 -r64807fd74f2b3b2cb7a08f8045a43677b2f2f820 --- firmware/App/Services/SystemCommMessages.c (.../SystemCommMessages.c) (revision 660876bca7ae34f862ae9cc6feef9a30ec02fe94) +++ firmware/App/Services/SystemCommMessages.c (.../SystemCommMessages.c) (revision 64807fd74f2b3b2cb7a08f8045a43677b2f2f820) @@ -7760,4 +7760,28 @@ sendTestAckResponseMsg( (MSG_ID_T)message->hdr.msgID, result ); } +void handleHDRTCstatusOverrideRequest( 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 = testSetRTCstatus( payload.state.u32 ); + } + else + { + result = testResetRTCstatus(); + } + } + + // Respond to request + sendTestAckResponseMsg( (MSG_ID_T)message->hdr.msgID, result ); +} + + /**@}*/ Index: firmware/App/Services/SystemCommMessages.h =================================================================== diff -u -r660876bca7ae34f862ae9cc6feef9a30ec02fe94 -r64807fd74f2b3b2cb7a08f8045a43677b2f2f820 --- firmware/App/Services/SystemCommMessages.h (.../SystemCommMessages.h) (revision 660876bca7ae34f862ae9cc6feef9a30ec02fe94) +++ firmware/App/Services/SystemCommMessages.h (.../SystemCommMessages.h) (revision 64807fd74f2b3b2cb7a08f8045a43677b2f2f820) @@ -861,6 +861,9 @@ // MSG_ID_HD_AIR_PUMP_SET_STATE void handleAirPumpSetState( MESSAGE_T * message ); +// MSD_ID_HD_RTC_STATUS_OVERRIDE +void handleHDRTCstatusOverrideRequest( MESSAGE_T * message ); + /**@}*/ #endif