Index: firmware/App/Services/SystemCommMessages.c =================================================================== diff -u -ra6e4cc6ba7ff390ae2f91568763b332c6d4c7d8f -r20e375e07b6da8a92fbaf7bb46d3a38121d91e36 --- firmware/App/Services/SystemCommMessages.c (.../SystemCommMessages.c) (revision a6e4cc6ba7ff390ae2f91568763b332c6d4c7d8f) +++ firmware/App/Services/SystemCommMessages.c (.../SystemCommMessages.c) (revision 20e375e07b6da8a92fbaf7bb46d3a38121d91e36) @@ -8960,4 +8960,36 @@ sendTestAckResponseMsg( (MSG_ID_T)message->hdr.msgID, result ); } +/*********************************************************************//** + * @brief + * The handleBloodLeakZeroingIntervalInMinutesOverride function handles a + * request to override the blood leak zeroing interval in minutes. + * @details Inputs: none + * @details Outputs: message handled + * @param message : a pointer to the message to handle + * @return none + *************************************************************************/ +void handleBloodLeakZeroingIntervalInMinutesOverride( 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 = testSetBloodLeakZeroingIntervalInMinsOverride( payload.state.u32 ); + } + else + { + result = testResetBloodLeakZeroingIntervalInMinsOverride(); + } + } + + // Respond to request + sendTestAckResponseMsg( (MSG_ID_T)message->hdr.msgID, result ); +} + /**@}*/