Index: firmware/App/Services/SystemComm.c =================================================================== diff -u -r01875def462c74a2ec96a13e9eeca87addad852d -r33bcd0fcd7a3bba5f85a7e35ac63aadbe4e91671 --- firmware/App/Services/SystemComm.c (.../SystemComm.c) (revision 01875def462c74a2ec96a13e9eeca87addad852d) +++ firmware/App/Services/SystemComm.c (.../SystemComm.c) (revision 33bcd0fcd7a3bba5f85a7e35ac63aadbe4e91671) @@ -8,7 +8,7 @@ * @file SystemComm.c * * @author (last) Dara Navaei -* @date (last) 21-Dec-2021 +* @date (last) 22-Feb-2022 * * @author (original) Dara Navaei * @date (original) 05-Nov-2019 @@ -620,7 +620,7 @@ if ( message.crc == crc8( (U08*)(&message), sizeof(MESSAGE_HEADER_T) + message.msg.hdr.payloadLen ) ) { // if ACK, mark pending message ACK'd - if ( MSG_ID_ACK == message.msg.hdr.msgID ) + if ( MSG_ID_ACK_MESSAGE_THAT_REQUIRES_ACK == message.msg.hdr.msgID ) { matchACKtoPendingACKList( message.msg.hdr.seqNo ); } @@ -877,6 +877,10 @@ handleDGSendConcentrateMixingRatios( message ); break; + case MSG_ID_DG_SCHEDULED_RUNS_INFO: + handleDGScheduledRunsRequest( message ); + break; + // NOTE: This case must be last case MSG_ID_DG_TESTER_LOGIN_REQUEST: handleTesterLogInRequest( message ); @@ -888,7 +892,8 @@ } // handle any test messages if tester has logged in successfully - if ( ( msgID > MSG_ID_FIRST_DG_TESTER_MESSAGE ) && ( msgID <= END_OF_MSG_IDS ) && ( TRUE == isTestingActivated() ) ) + // NOTE: END_OF_MSG_IDS = 65536 which is out of the range of a U16 so it is subtracted by 1. This is unreachable in development testing + if ( ( msgID > MSG_ID_FIRST_DG_TESTER_MESSAGE ) && ( msgID <= END_OF_MSG_IDS - 1 ) && ( TRUE == isTestingActivated() ) ) { switch ( msgID ) { @@ -1148,6 +1153,18 @@ handleTestFansRPMAlarmStartTimeOffsetOverrideRequest( message ); break; + case MSG_ID_DG_GET_SW_CONFIG_RECORD: + handleGetDGSoftwareConfigRecord( message ); + break; + + case MSG_ID_DG_SET_SW_CONFIG_RECORD: + handleSetDGSoftwareConfigRecord( message ); + break; + + case MSG_ID_DG_FANS_DUTY_CYCLE_OVERRIDE: + handleSetFansDutyCycleOverrideRequest( message ); + break; + case MSG_ID_DG_HD_COMMUNICATION_STATUS_OVERRIDE: handleTestHDCommunicationStatusOverrideRequest( message ); break;