Index: firmware/App/Modes/ModePreTreat.c =================================================================== diff -u -r34e8d77ff4891ad697f1017af3b7e9bfaadbd753 -rb53c3ab97a715ef9dc823a7148d0c0a52c413865 --- firmware/App/Modes/ModePreTreat.c (.../ModePreTreat.c) (revision 34e8d77ff4891ad697f1017af3b7e9bfaadbd753) +++ firmware/App/Modes/ModePreTreat.c (.../ModePreTreat.c) (revision b53c3ab97a715ef9dc823a7148d0c0a52c413865) @@ -672,8 +672,6 @@ { HD_PRE_TREATMENT_MODE_STATE_T state = HD_PRE_TREATMENT_SELF_TEST_NO_CART_STATE; - verifySwitchStatus(); - if ( TRUE == alarmActionResumeReceived ) { alarmActionResumeReceived = FALSE; @@ -691,6 +689,14 @@ transitionToCartridgeInstallation(); } } + else + { + if ( ( NO_CART_SELF_TESTS_WAIT_FOR_DOOR_CLOSE_STATE <= getNoCartSelfTestsState() ) && + ( NO_CART_SELF_TESTS_STOPPED_STATE != getNoCartSelfTestsState() ) ) + { + verifySwitchStatus(); + } + } return state; } @@ -732,8 +738,6 @@ { HD_PRE_TREATMENT_MODE_STATE_T state = HD_PRE_TREATMENT_SELF_TEST_DRY_STATE; - verifySwitchStatus(); - if ( TRUE == alarmActionResumeReceived ) { alarmActionResumeReceived = FALSE; @@ -751,6 +755,14 @@ transitionToPrime(); } } + else + { + if ( ( DRY_SELF_TESTS_WAIT_FOR_DOOR_CLOSE_STATE <= getDrySelfTestsState() ) && + ( DRY_SELF_TESTS_STOPPED_STATE != getDrySelfTestsState() ) ) + { + verifySwitchStatus(); + } + } return state; } @@ -767,8 +779,6 @@ { HD_PRE_TREATMENT_MODE_STATE_T state = HD_PRE_TREATMENT_PRIME_STATE; - verifySwitchStatus(); - if ( TRUE == alarmActionResumeReceived ) { alarmActionResumeReceived = FALSE; @@ -787,6 +797,13 @@ transitionToPreTreatmentRecirc(); } } + else + { + if ( ( HD_PRIME_PAUSE != getPrimeState() ) ) + { + verifySwitchStatus(); + } + } return state; } @@ -803,8 +820,6 @@ { HD_PRE_TREATMENT_MODE_STATE_T state = HD_PRE_TREATMENT_RECIRCULATE_STATE; - verifySwitchStatus(); - if ( TRUE == alarmActionResumeReceived ) { alarmActionResumeReceived = FALSE; @@ -813,6 +828,11 @@ execPreTreatmentRecirc(); + if ( PRE_TREATMENT_RECIRC_STOPPED_STATE != getPreTreatmentRecircState() ) + { + verifySwitchStatus(); + } + #ifdef SKIP_UI_INTERACTION continueToTreatmentRequested = TRUE; #endif