Index: firmware/App/Modes/ModeStandby.c =================================================================== diff -u -r80c4b42aae13511c7dcd0dbfa4fe9c742871e246 -r94af475018f529f022d205627ef673bff44bf94f --- firmware/App/Modes/ModeStandby.c (.../ModeStandby.c) (revision 80c4b42aae13511c7dcd0dbfa4fe9c742871e246) +++ firmware/App/Modes/ModeStandby.c (.../ModeStandby.c) (revision 94af475018f529f022d205627ef673bff44bf94f) @@ -71,6 +71,7 @@ static OVERRIDE_U32_T standbyModePublishInterval = { DISINFECTS_DATA_PUB_INTERVAL, DISINFECTS_DATA_PUB_INTERVAL, DISINFECTS_DATA_PUB_INTERVAL, 0 }; static const U32 SERVICE_TIME_INTERVAL_S = (U32)( 365 * 0.5 * SECONDS_IN_A_DAY ); ///< HD/DG 6-month service interval in seconds. +static BOOL homingInitiated; ///< Flag indicates actuator homing has been initiated from standby mode. // ********** private function prototypes ********** @@ -289,8 +290,8 @@ *************************************************************************/ BOOL signalUserInitiateTreatment( void ) { - BOOL result = FALSE; - DG_VERSIONS_T dgVersion = getDGVersion(); + BOOL result = FALSE; + DG_VERSIONS_T dgVersion = getDGVersion(); REQUEST_REJECT_REASON_CODE_T rejReason = REQUEST_REJECT_REASON_NONE; // Verify HD is in standby mode waiting for treatment start request @@ -318,24 +319,25 @@ { rejReason = REQUEST_REJECT_REASON_BATTERY_IS_NOT_CHARGED; } -#ifdef _RELEASE_ - else -#else +#ifndef _RELEASE_ else if ( getSoftwareConfigStatus( SW_CONFIG_DISABLE_SERVICE_AND_DISINFECT_CHECK ) != SW_CONFIG_ENABLE_VALUE ) #endif { - // Verify HD and DG are not over due for service - if ( haveHDDGServicesBeenExpired( &rejReason ) != TRUE ) + if ( getTestConfigStatus( TEST_CONFIG_SKIP_DISINFECT_AND_SERVICE_TX_BLOCKERS ) != TRUE ) { - // Verify DG is disinfected - if ( FALSE == isDGDisinfectValid() ) + // Verify HD and DG are not over due for service + if ( haveHDDGServicesBeenExpired( &rejReason ) != TRUE ) { - rejReason = REQUEST_REJECT_REASON_DG_DISINFECT_HAS_BEEN_EXPIRED; + // Verify DG is disinfected + if ( FALSE == isDGDisinfectValid() ) + { + rejReason = REQUEST_REJECT_REASON_DG_DISINFECT_HAS_BEEN_EXPIRED; + } + else if ( getHeatDisinfectTemperatureSensorValue() > MAX_ALLOWED_RO_FILTER_TEMP_FOR_TX_C ) + { + rejReason = REQUEST_REJECT_REASON_DG_RO_FILTER_TEMPERATURE_OUT_OF_RANGE; + } } - else if ( getHeatDisinfectTemperatureSensorValue() > MAX_ALLOWED_RO_FILTER_TEMP_FOR_TX_C ) - { - rejReason = REQUEST_REJECT_REASON_DG_RO_FILTER_TEMPERATURE_OUT_OF_RANGE; - } } }