Index: firmware/App/Services/SystemComm.c =================================================================== diff -u -r4b528a5706b6d1c8661b00dcd45c39cf8db9a0f6 -re0ffb876001e2449bb489ccbebf48cd83f61be3c --- firmware/App/Services/SystemComm.c (.../SystemComm.c) (revision 4b528a5706b6d1c8661b00dcd45c39cf8db9a0f6) +++ firmware/App/Services/SystemComm.c (.../SystemComm.c) (revision e0ffb876001e2449bb489ccbebf48cd83f61be3c) @@ -7,8 +7,8 @@ * * @file SystemComm.c * -* @author (last) Sean Nash -* @date (last) 24-Aug-2023 +* @author (last) Michael Garthwaite +* @date (last) 29-Aug-2023 * * @author (original) Dara Navaei * @date (original) 05-Nov-2019 @@ -1382,6 +1382,14 @@ handleTestDGPendingACKOverrideRequest( message ); break; + case MSG_ID_DG_STATE_TIMER_82C_OVERRIDE: + handleTestDG82CStateTimerOverride( message ); + break; + + case MSG_ID_DG_STATE_TIMER_77C_OVERRIDE: + handleTestDG77CStateTimerOverride( message ); + break; + default: // TODO - unrecognized message ID received - ignore break; Index: firmware/App/Services/SystemCommMessages.c =================================================================== diff -u -r4b528a5706b6d1c8661b00dcd45c39cf8db9a0f6 -re0ffb876001e2449bb489ccbebf48cd83f61be3c --- firmware/App/Services/SystemCommMessages.c (.../SystemCommMessages.c) (revision 4b528a5706b6d1c8661b00dcd45c39cf8db9a0f6) +++ firmware/App/Services/SystemCommMessages.c (.../SystemCommMessages.c) (revision e0ffb876001e2449bb489ccbebf48cd83f61be3c) @@ -7,8 +7,8 @@ * * @file SystemCommMessages.c * -* @author (last) Sean Nash -* @date (last) 24-Aug-2023 +* @author (last) Michael Garthwaite +* @date (last) 29-Aug-2023 * * @author (original) Dara Navaei * @date (original) 05-Nov-2019 @@ -5065,4 +5065,68 @@ sendTestAckResponseMsg( (MSG_ID_T)message->hdr.msgID, result ); } +/*********************************************************************//** + * @brief + * The handleTestDG77CStateTimerOverride function handles a request + * to override the heat disinfection timer at 77 C + * @details Inputs: none + * @details Outputs: message handled + * @param message a pointer to the message to handle + * @return none + *************************************************************************/ +void handleTestDG77CStateTimerOverride( 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 = testSetDG77CStateTimerOverride( payload.state.u32 ); + } + else + { + result = testResetDG77CStateTimerOverride(); + } + } + + // respond to request + sendTestAckResponseMsg( (MSG_ID_T)message->hdr.msgID, result ); +} + +/*********************************************************************//** + * @brief + * The handleTestDG82CStateTimerOverride function handles a request + * to override the heat disinfection timer at 82 C + * @details Inputs: none + * @details Outputs: message handled + * @param message a pointer to the message to handle + * @return none + *************************************************************************/ +void handleTestDG82CStateTimerOverride( 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 = testSetDG82CStateTimerOverride( payload.state.u32 ); + } + else + { + result = testResetDG82CStateTimerOverride(); + } + } + + // respond to request + sendTestAckResponseMsg( (MSG_ID_T)message->hdr.msgID, result ); +} + /**@}*/ Index: firmware/App/Services/SystemCommMessages.h =================================================================== diff -u -r4b528a5706b6d1c8661b00dcd45c39cf8db9a0f6 -re0ffb876001e2449bb489ccbebf48cd83f61be3c --- firmware/App/Services/SystemCommMessages.h (.../SystemCommMessages.h) (revision 4b528a5706b6d1c8661b00dcd45c39cf8db9a0f6) +++ firmware/App/Services/SystemCommMessages.h (.../SystemCommMessages.h) (revision e0ffb876001e2449bb489ccbebf48cd83f61be3c) @@ -8,7 +8,7 @@ * @file SystemCommMessages.h * * @author (last) Michael Garthwaite -* @date (last) 21-Aug-2023 +* @date (last) 29-Aug-2023 * * @author (original) Dara Navaei * @date (original) 05-Nov-2019 @@ -530,8 +530,14 @@ void handleTestDGPendingACKOverrideRequest( MESSAGE_T* message ); // MSG_ID_DG_RESERVOIR_BROADCAST_INTERVAL_OVERRIDE -void handleTestDGReservoirOverrideRequest( MESSAGE_T* message); +void handleTestDGReservoirOverrideRequest( MESSAGE_T* message ); +// MSG_ID_DG_STATE_TIMER_77C_OVERRIDE +void handleTestDG77CStateTimerOverride( MESSAGE_T* message ); + +// MSG_ID_DG_STATE_TIMER_82C_OVERRIDE +void handleTestDG82CStateTimerOverride( MESSAGE_T* message ); + /**@}*/ #endif