Index: firmware/App/Services/SystemCommMessages.c =================================================================== diff -u -r7e4b720b0f1067fb1d0714626ef6c058e7c68fef -r849d55bf09a76e59424878b1ae4dac4b51ead3a9 --- firmware/App/Services/SystemCommMessages.c (.../SystemCommMessages.c) (revision 7e4b720b0f1067fb1d0714626ef6c058e7c68fef) +++ firmware/App/Services/SystemCommMessages.c (.../SystemCommMessages.c) (revision 849d55bf09a76e59424878b1ae4dac4b51ead3a9) @@ -8,7 +8,7 @@ * @file SystemCommMessages.c * * @author (last) Dara Navaei -* @date (last) 25-May-2022 +* @date (last) 21-Jun-2022 * * @author (original) Dara Navaei * @date (original) 05-Nov-2019 @@ -1093,10 +1093,39 @@ if ( message->hdr.payloadLen == sizeof( TRIMMER_HEATER_CMD_T ) ) { TRIMMER_HEATER_CMD_T heaterCmd; + DG_CMD_RESPONSE_T cmdResponse; + cmdResponse.commandID = DG_CMD_START_TRIMMER_HEATER; + cmdResponse.rejected = FALSE; + cmdResponse.rejectCode = DG_CMD_REQUEST_REJECT_REASON_NONE; + result = TRUE; - result = TRUE; memcpy( &heaterCmd, message->payload, sizeof( TRIMMER_HEATER_CMD_T ) ); - handleTrimmerHeaterCmd( &heaterCmd ); + + if ( TRUE == heaterCmd.startHeater ) + { + BOOL isSet = setHeaterTargetTemperature( DG_TRIMMER_HEATER, heaterCmd.targetTemp ); + + if ( TRUE == isSet ) + { +#ifndef _RELEASE_ + if ( getSoftwareConfigStatus( SW_CONFIG_DISABLE_TRIMMER_HEATER ) != SW_CONFIG_ENABLE_VALUE ) +#endif + { + startHeater( DG_TRIMMER_HEATER ); + } + } + else + { + cmdResponse.rejected = TRUE; + cmdResponse.rejectCode = DG_CMD_REQUEST_REJECT_REASON_INVALID_PARAMETER; + } + } + else + { + stopHeater( DG_TRIMMER_HEATER ); + } + + sendCommandResponseMsg( &cmdResponse ); } sendAckResponseMsg( (MSG_ID_T)message->hdr.msgID, COMM_BUFFER_OUT_CAN_DG_2_HD, result );