Index: firmware/App/HDCommon.h =================================================================== diff -u -r78cee9347b3766ac7c14d413ed848be758c7e9cd -r1eac55db00559965a7dc6752fc42a2c54d56f4b9 --- firmware/App/HDCommon.h (.../HDCommon.h) (revision 78cee9347b3766ac7c14d413ed848be758c7e9cd) +++ firmware/App/HDCommon.h (.../HDCommon.h) (revision 1eac55db00559965a7dc6752fc42a2c54d56f4b9) @@ -23,7 +23,7 @@ // ********** version ********** #define HD_VERSION_MAJOR 0 -#define HD_VERSION_MINOR 5 +#define HD_VERSION_MINOR 6 #define HD_VERSION_MICRO 0 #define HD_VERSION_BUILD 9037 Index: firmware/App/Modes/ModeStandby.c =================================================================== diff -u -r78cee9347b3766ac7c14d413ed848be758c7e9cd -r1eac55db00559965a7dc6752fc42a2c54d56f4b9 --- firmware/App/Modes/ModeStandby.c (.../ModeStandby.c) (revision 78cee9347b3766ac7c14d413ed848be758c7e9cd) +++ firmware/App/Modes/ModeStandby.c (.../ModeStandby.c) (revision 1eac55db00559965a7dc6752fc42a2c54d56f4b9) @@ -329,18 +329,22 @@ BOOL result = FALSE; REQUEST_REJECT_REASON_CODE_T rejReason = REQUEST_REJECT_REASON_NOT_ALLOWED_IN_CURRENT_MODE; - if ( ( MODE_STAN == getCurrentOperationMode() ) && ( STANDBY_WAIT_FOR_DISINFECT_STATE == currentStandbyState ) ) + if ( MODE_STAN == getCurrentOperationMode() ) { - if ( TRUE == isDGCommunicating() ) + if ( ( STANDBY_WAIT_FOR_DISINFECT_STATE == currentStandbyState ) || ( STANDBY_WAIT_FOR_TREATMENT_STATE == currentStandbyState ) ) { - flushStartReqReceived = TRUE; - result = TRUE; - rejReason = REQUEST_REJECT_REASON_NONE; + if ( TRUE == isDGCommunicating() ) + { + flushStartReqReceived = TRUE; + result = TRUE; + currentStandbyState = STANDBY_WAIT_FOR_DISINFECT_STATE; + rejReason = REQUEST_REJECT_REASON_NONE; + } + else + { + rejReason = REQUEST_REJECT_REASON_DG_COMM_LOST; + } } - else - { - rejReason = REQUEST_REJECT_REASON_DG_COMM_LOST; - } } sendDisinfectConfirmResponse( result, rejReason ); @@ -361,18 +365,22 @@ BOOL result = FALSE; REQUEST_REJECT_REASON_CODE_T rejReason = REQUEST_REJECT_REASON_NOT_ALLOWED_IN_CURRENT_MODE; - if ( ( MODE_STAN == getCurrentOperationMode() ) && ( STANDBY_WAIT_FOR_DISINFECT_STATE == currentStandbyState ) ) + if ( MODE_STAN == getCurrentOperationMode() ) { - if ( TRUE == isDGCommunicating() ) + if ( ( STANDBY_WAIT_FOR_DISINFECT_STATE == currentStandbyState ) || ( STANDBY_WAIT_FOR_TREATMENT_STATE == currentStandbyState ) ) { - heatDisinfectStartReqReceived = TRUE; - result = TRUE; - rejReason = REQUEST_REJECT_REASON_NONE; + if ( TRUE == isDGCommunicating() ) + { + heatDisinfectStartReqReceived = TRUE; + result = TRUE; + currentStandbyState = STANDBY_WAIT_FOR_DISINFECT_STATE; + rejReason = REQUEST_REJECT_REASON_NONE; + } + else + { + rejReason = REQUEST_REJECT_REASON_DG_COMM_LOST; + } } - else - { - rejReason = REQUEST_REJECT_REASON_DG_COMM_LOST; - } } sendDisinfectConfirmResponse( result, rejReason ); @@ -393,18 +401,22 @@ BOOL result = FALSE; REQUEST_REJECT_REASON_CODE_T rejReason = REQUEST_REJECT_REASON_NOT_ALLOWED_IN_CURRENT_MODE; - if ( ( MODE_STAN == getCurrentOperationMode() ) && ( STANDBY_WAIT_FOR_DISINFECT_STATE == currentStandbyState ) ) + if ( MODE_STAN == getCurrentOperationMode() ) { - if ( TRUE == isDGCommunicating() ) + if ( ( STANDBY_WAIT_FOR_DISINFECT_STATE == currentStandbyState ) || ( STANDBY_WAIT_FOR_TREATMENT_STATE == currentStandbyState ) ) { - chemDisinfectStartReqReceived = TRUE; - result = TRUE; - rejReason = REQUEST_REJECT_REASON_NONE; + if ( TRUE == isDGCommunicating() ) + { + chemDisinfectStartReqReceived = TRUE; + result = TRUE; + currentStandbyState = STANDBY_WAIT_FOR_DISINFECT_STATE; + rejReason = REQUEST_REJECT_REASON_NONE; + } + else + { + rejReason = REQUEST_REJECT_REASON_DG_COMM_LOST; + } } - else - { - rejReason = REQUEST_REJECT_REASON_DG_COMM_LOST; - } } sendDisinfectConfirmResponse( result, rejReason ); Index: firmware/App/Services/SystemCommMessages.c =================================================================== diff -u -rab57180655892575252175a4310d97a1c8c46e74 -r1eac55db00559965a7dc6752fc42a2c54d56f4b9 --- firmware/App/Services/SystemCommMessages.c (.../SystemCommMessages.c) (revision ab57180655892575252175a4310d97a1c8c46e74) +++ firmware/App/Services/SystemCommMessages.c (.../SystemCommMessages.c) (revision 1eac55db00559965a7dc6752fc42a2c54d56f4b9) @@ -2722,7 +2722,7 @@ // Create a message record blankMessage( &msg ); - msg.hdr.msgID = MSG_ID_HD_STANDBY_STATE; + msg.hdr.msgID = MSG_ID_HD_DISINFECT_STANDBY_DATA; msg.hdr.payloadLen = sizeof( DISINFECTS_DATA_T ); memcpy( payloadPtr, disinfectsData, sizeof( DISINFECTS_DATA_T ) );