Index: firmware/App/Controllers/Heaters.c =================================================================== diff -u -r5e595c58d494cfd452a8a9e89aec3bb8def793e2 -rbbd5ac2589c8093f681f2284367975ddd220b553 --- firmware/App/Controllers/Heaters.c (.../Heaters.c) (revision 5e595c58d494cfd452a8a9e89aec3bb8def793e2) +++ firmware/App/Controllers/Heaters.c (.../Heaters.c) (revision bbd5ac2589c8093f681f2284367975ddd220b553) @@ -20,6 +20,7 @@ #include "etpwm.h" #include "AlarmMgmt.h" +#include "DGDefs.h" #include "Heaters.h" #include "ROPump.h" #include "PIControllers.h" @@ -284,6 +285,47 @@ /*********************************************************************//** * @brief + * The handleTrimmerHeaterCmd handles a start trimmer heater command from the HD. + * It resets the trimmer heater's state and sets the duty cycle of the trimmer heater. + * @details Inputs: none + * @details Outputs: process command and send back response + * @param heaterCmdPtr pointer to heater command data record + * @return status + *************************************************************************/ +void handleTrimmerHeaterCmd( TRIMMER_HEATER_CMD_T *heaterCmdPtr ) +{ + DG_CMD_RESPONSE_T cmdResponse; + + cmdResponse.commandID = DG_CMD_START_TRIMMER_HEATER; + cmdResponse.rejected = TRUE; + cmdResponse.rejectCode = DG_CMD_REQUEST_REJECT_REASON_NONE; + + if ( TRUE == heaterCmdPtr->startHeater ) + { + if ( ( MINIMUM_TARGET_TEMPERATURE <= heaterCmdPtr->targetTemp ) && ( heaterCmdPtr->targetTemp <= MAXIMUM_TARGET_TEMPERATURE ) ) + { + cmdResponse.rejected = FALSE; + #ifndef DISABLE_HEATERS_AND_TEMPS + trimmerHeaterTargetTemperature = heaterCmdPtr->targetTemp; + hasStartTrimmerHeaterRequested = TRUE; + #endif + } + else + { + cmdResponse.rejectCode = DG_CMD_REQUEST_REJECT_REASON_INVALID_PARAMETER; + } + } + else + { + cmdResponse.rejected = FALSE; + stopTrimmerHeater(); + } + + sendCommandResponseMsg( &cmdResponse ); +} + +/*********************************************************************//** + * @brief * The execHeatersMonitor function turns off the heaters when RO pump is not on. * @details Inputs: none * @details Outputs: Turns off the heaters when RO pump is not on