Index: firmware/App/Services/SystemCommMessages.c =================================================================== diff -u -rd48e02f028dbd430bedda41be0173fbfc45116d7 -r5d3e28c19ae10a99a5ce1fc5c010ac944975a6a1 --- firmware/App/Services/SystemCommMessages.c (.../SystemCommMessages.c) (revision d48e02f028dbd430bedda41be0173fbfc45116d7) +++ firmware/App/Services/SystemCommMessages.c (.../SystemCommMessages.c) (revision 5d3e28c19ae10a99a5ce1fc5c010ac944975a6a1) @@ -27,9 +27,12 @@ #include "FlowSensors.h" #include "FPGA.h" #include "Heaters.h" +#include "ModeChemicalDisinfect.h" #include "ModeFill.h" #include "ModeFlush.h" #include "ModeGenIdle.h" +#include "ModeHeatDisinfect.h" +#include "ModeHeatDisinfectActiveCool.h" #include "ModeInitPOST.h" #include "ModeStandby.h" #include "MsgQueues.h" @@ -1557,7 +1560,39 @@ sendAckResponseMsg( (MSG_ID_T)message->hdr.msgID, COMM_BUFFER_OUT_CAN_DG_2_UI, result ); } +/************************************************************************* + * @brief + * The handleStartStopDGHeatDisinfectActiveCool function handles a request + * start or stop DG heat disinfect active cool mode. + * @details Inputs: none + * @details Outputs: message handled + * @param message: a pointer to the message to handle + * @return result + *************************************************************************/ +void handleStartStopDGHeatDisinfectActiveCool( MESSAGE_T* message ) +{ + BOOL status = FALSE; + if ( message->hdr.payloadLen == sizeof(U32) ) + { + BOOL startingDGHeatDisinfectActiveCool; + + memcpy( &startingDGHeatDisinfectActiveCool, message->payload, sizeof(U32) ); + + if ( TRUE == startingDGHeatDisinfectActiveCool ) + { + status = startDGHeatDisinfectActiveCool(); + } + else + { + status = stopDGHeatDisinfectActiveCool(); + } + } + + sendAckResponseMsg( (MSG_ID_T)message->hdr.msgID, COMM_BUFFER_OUT_CAN_DG_2_HD, status ); +} + + // *********************************************************************** // **************** Message Handling Helper Functions ******************** // ***********************************************************************