Index: firmware/App/Modes/ModePostTreat.c =================================================================== diff -u -r567af4b8469495fc3ae913126b7af24b7d630617 -r5e6a92677f46658b7a47a0281a84307ad8edae90 --- firmware/App/Modes/ModePostTreat.c (.../ModePostTreat.c) (revision 567af4b8469495fc3ae913126b7af24b7d630617) +++ firmware/App/Modes/ModePostTreat.c (.../ModePostTreat.c) (revision 5e6a92677f46658b7a47a0281a84307ad8edae90) @@ -51,8 +51,7 @@ /// Post-Treatment drain reservoirs state machine. typedef enum Drain_States { - DRAIN_DG_DEPRIME_STATE = 0, ///< Drain DG De-prime dialysate lines of excess fluid state. - DRAIN_RESERVOIR_SWITCH_STATE, ///< Switch reservoir state. + DRAIN_RESERVOIR_SWITCH_STATE = 0, ///< Switch reservoir state. DRAIN_RESERVOIR_START_DRAIN_STATE, ///< Drain reservoir start drain state. DRAIN_RESERVOIR_DRAIN_STATE, ///< Drain first reservoir state. DRAIN_RESERVOIR_COMPLETE_STATE, ///< Drain complete state. @@ -84,7 +83,6 @@ static HD_POST_TREATMENT_STATE_T handlePostTreatmentVerifyState( void ); static void execDrainReservoirs( void ); -static DRAIN_STATE_T handleDrainDePrimeDGDialysateLinesState( void ); static DRAIN_STATE_T handleDrainReservoirSwitchState( void ); static DRAIN_STATE_T handleDrainReservoirStartDrainState( void ); static DRAIN_STATE_T handleDrainReservoirDrainState( void ); @@ -108,7 +106,7 @@ isThisFirstDrain = TRUE; dgCommandSent = FALSE; currentPostTreatmentState = HD_POST_TREATMENT_DRAIN_RESERVOIRS_STATE; - currentDrainReservoirState = DRAIN_DG_DEPRIME_STATE; + currentDrainReservoirState = DRAIN_RESERVOIR_SWITCH_STATE; postTreatmentPublishTimerCounter = 0; // Reset treatment log data @@ -536,10 +534,6 @@ switch ( currentDrainReservoirState ) { - case DRAIN_DG_DEPRIME_STATE: - currentDrainReservoirState = handleDrainDePrimeDGDialysateLinesState(); - break; - case DRAIN_RESERVOIR_SWITCH_STATE: currentDrainReservoirState = handleDrainReservoirSwitchState(); break; @@ -571,34 +565,6 @@ /*********************************************************************//** * @brief - * The handleDrainDePrimeDGDialysateLinesState function de-primes the return - * dialysate line so that it will not leak when user disconnects the line - * from the DG. - * @details Inputs: none - * @details Outputs: none - * @return next state - *************************************************************************/ -static DRAIN_STATE_T handleDrainDePrimeDGDialysateLinesState( void ) -{ - DRAIN_STATE_T state = DRAIN_DG_DEPRIME_STATE; - - if ( ( ( DG_MODE_GENE == getDGOpMode() ) && ( DG_GEN_IDLE_MODE_STATE_FLUSH_WATER == getDGSubMode() ) ) || ( DG_MODE_FAUL == getDGOpMode() ) ) - { - if ( getDGOpMode() != DG_MODE_FAUL ) - { - state = DRAIN_RESERVOIR_SWITCH_STATE; - } - else - { - state = DRAIN_RESERVOIR_COMPLETE_STATE; - } - } - - return state; -} - -/*********************************************************************//** - * @brief * The handleDrainReservoirSwitchState function waits for DG to complete * reservoir switch. * @details Inputs: isThisFirstDrain, dgCommandSent @@ -643,6 +609,10 @@ } } } + else if ( DG_MODE_FAUL == getDGOpMode() ) + { + state = DRAIN_RESERVOIR_COMPLETE_STATE; + } return state; }