Index: firmware/App/Services/SystemComm.c =================================================================== diff -u -rb8f298547eb578000b3ff3cf55732fda7a689ce0 -r5c608ff3680b15c3ffbb6d486194152d6fb06944 --- firmware/App/Services/SystemComm.c (.../SystemComm.c) (revision b8f298547eb578000b3ff3cf55732fda7a689ce0) +++ firmware/App/Services/SystemComm.c (.../SystemComm.c) (revision 5c608ff3680b15c3ffbb6d486194152d6fb06944) @@ -1268,6 +1268,10 @@ handleTestDGHeatersDutyCycleOverrideRequest( message ); break; + case MSD_ID_DG_RTC_STATUS_OVERRIDE: + handleDGRTCstatusOverrideRequest( message ); + break; + default: // TODO - unrecognized message ID received - ignore break; Index: firmware/App/Services/SystemCommMessages.c =================================================================== diff -u -rb8f298547eb578000b3ff3cf55732fda7a689ce0 -r5c608ff3680b15c3ffbb6d486194152d6fb06944 --- firmware/App/Services/SystemCommMessages.c (.../SystemCommMessages.c) (revision b8f298547eb578000b3ff3cf55732fda7a689ce0) +++ firmware/App/Services/SystemCommMessages.c (.../SystemCommMessages.c) (revision 5c608ff3680b15c3ffbb6d486194152d6fb06944) @@ -4312,4 +4312,27 @@ sendTestAckResponseMsg( (MSG_ID_T)message->hdr.msgID, result ); } +void handleDGRTCstatusOverrideRequest( 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 -rb8f298547eb578000b3ff3cf55732fda7a689ce0 -r5c608ff3680b15c3ffbb6d486194152d6fb06944 --- firmware/App/Services/SystemCommMessages.h (.../SystemCommMessages.h) (revision b8f298547eb578000b3ff3cf55732fda7a689ce0) +++ firmware/App/Services/SystemCommMessages.h (.../SystemCommMessages.h) (revision 5c608ff3680b15c3ffbb6d486194152d6fb06944) @@ -451,6 +451,9 @@ // MSG_ID_DG_HEATERS_DUTY_CYCLE_OVERRIDE void handleTestDGHeatersDutyCycleOverrideRequest( MESSAGE_T *message ); +// MSD_ID_DG_RTC_STATUS_OVERRIDE +void handleDGRTCstatusOverrideRequest( MESSAGE_T *message ); + /**@}*/ #endif