Index: firmware/App/Services/SystemCommMessages.c =================================================================== diff -u -r3f4105248e6c49ab487ec065f9a4843d72a16a2a -rd106a0eefd1e2ffe5873cd862ebbd53c1002de27 --- firmware/App/Services/SystemCommMessages.c (.../SystemCommMessages.c) (revision 3f4105248e6c49ab487ec065f9a4843d72a16a2a) +++ firmware/App/Services/SystemCommMessages.c (.../SystemCommMessages.c) (revision d106a0eefd1e2ffe5873cd862ebbd53c1002de27) @@ -31,6 +31,7 @@ #include "ModeStandby.h" #include "ModeInitPOST.h" #include "OperationModes.h" +#include "Reservoirs.h" #include "RTC.h" #include "SampleWater.h" #include "SafetyShutdown.h" @@ -8479,4 +8480,36 @@ sendTestAckResponseMsg( (MSG_ID_T)message->hdr.msgID, result ); } +/*********************************************************************//** + * @brief + * The handleTestHDRecirulationPctOverrideRequest function handles a + * request to override pending ACKs. + * @details Inputs: none + * @details Outputs: message handled + * @param message : a pointer to the message to handle + * @return none + *************************************************************************/ +void handleTestHDRecirulationPctOverrideRequest( 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 = testSetRecirculationLevelPctOverride( payload.state.f32 ); + } + else + { + result = testResetRecirculationLevelPctOverride(); + } + } + + // Respond to request + sendTestAckResponseMsg( (MSG_ID_T)message->hdr.msgID, result ); +} + /**@}*/