Index: firmware/App/Modes/ModePreTreat.c =================================================================== diff -u -rdd092a45d77867fe3470ac100739993fff5337f3 -r36eda8f2799310ff842cf035a3eaa96c7c2bccdb --- firmware/App/Modes/ModePreTreat.c (.../ModePreTreat.c) (revision dd092a45d77867fe3470ac100739993fff5337f3) +++ firmware/App/Modes/ModePreTreat.c (.../ModePreTreat.c) (revision 36eda8f2799310ff842cf035a3eaa96c7c2bccdb) @@ -702,7 +702,7 @@ patientConnectionConfirm = FALSE; treatmentStartRequested = FALSE; - doorClosedRequired( TRUE, TRUE ); + doorClosedRequired( FALSE, TRUE ); for ( valve = VDI; valve < NUM_OF_VALVES; ++valve ) { @@ -1041,11 +1041,13 @@ { HD_PRE_TREATMENT_PAT_CONN_STATE_T nextState = PRE_TREATMENT_PAT_CONN_WAIT_FOR_UF_VOL_STATE; + // Look for cartridge door to open and then close (indicating user inverted dialyzer) + handlePatientConnectionDoorOpened(); + // If UF volume set by user, move on to next state if ( TRUE == setUFVolStatus ) { setUFVolStatus = FALSE; - doorClosedRequired( FALSE, TRUE ); nextState = PRE_TREATMENT_PAT_CONN_WAIT_FOR_DLZR_INVERT_STATE; } @@ -1070,6 +1072,8 @@ if ( ( TRUE == doorOpened ) && ( STATE_CLOSED == getSwitchStatus( FRONT_DOOR ) ) ) { + doorClosedRequired( TRUE, TRUE ); + doorOpened = FALSE; nextState = PRE_TREATMENT_PAT_CONN_WAIT_FOR_USER_CONFIRM_STATE; } @@ -1089,16 +1093,10 @@ { HD_PRE_TREATMENT_PAT_CONN_STATE_T nextState = PRE_TREATMENT_PAT_CONN_WAIT_FOR_USER_CONFIRM_STATE; - // Look for cartridge door to open and then close (indicating user inverted dialyzer) - handlePatientConnectionDoorOpened(); - if ( TRUE == patientConnectionConfirm ) { - doorClosedRequired( TRUE, TRUE ); - if ( STATE_CLOSED == getSwitchStatus( FRONT_DOOR ) ) - { - nextState = PRE_TREATMENT_PAT_CONN_WAIT_FOR_TREATMENT_START_STATE; - } + patientConnectionConfirm = FALSE; + nextState = PRE_TREATMENT_PAT_CONN_WAIT_FOR_TREATMENT_START_STATE; } return nextState;