Index: firmware/App/Modes/ModePreTreat.c =================================================================== diff -u -rdcd956fa52aef8f27bba867e54f764bebd384c99 -r15f9827c863812cfd1f891d22342103fe9a72abc --- firmware/App/Modes/ModePreTreat.c (.../ModePreTreat.c) (revision dcd956fa52aef8f27bba867e54f764bebd384c99) +++ firmware/App/Modes/ModePreTreat.c (.../ModePreTreat.c) (revision 15f9827c863812cfd1f891d22342103fe9a72abc) @@ -46,19 +46,10 @@ #define DIP_PATIENT_CONNECTION_FLOW_RATE_ML_MIN 100 ///< Patient connection sub-mode dialysate inlet pump flow rate in mL/min. -#ifndef SKIP_PRIMING #define PRE_TREATMENT_FLUSH_RESERVOIR_VOLUME_ML 500 ///< Fill reservoir to this volume (in mL) to flush filter and lines. #define PRE_TREATMENT_FILL_RESERVOIR_ONE_VOLUME_ML 1300 ///< Fill reservoir one to this volume (in mL) during pre-treatment mode. #define PRE_TREATMENT_FILL_RESERVOIR_TWO_VOLUME_ML 700 ///< Fill reservoir two to this volume (in mL) during pre-treatment mode. -#else -#define PRE_TREATMENT_FLUSH_RESERVOIR_VOLUME_ML FILL_RESERVOIR_TO_VOLUME_ML -#define PRE_TREATMENT_FILL_RESERVOIR_ONE_VOLUME_ML FILL_RESERVOIR_TO_VOLUME_ML -#define PRE_TREATMENT_FILL_RESERVOIR_TWO_VOLUME_ML FILL_RESERVOIR_TO_VOLUME_ML -#endif -#define PRIMARY_HEATER_TARGET_TEMP_OFFSET 2.0 //TODO remove ///< Primary heater target temperature offset from trimmer heater temperature. - - /// States of the pre-treatment reservoir management state machine. typedef enum PreTreatmentReservoirMgmt_States { @@ -198,12 +189,10 @@ switch ( currentPreTreatmentState ) { case HD_PRE_TREATMENT_START_STATE: -#ifndef SKIP_SAMPLE_WATER - //if ( getSoftwareConfigStatus( SW_CONFIG_DISABLE_SAMPLE_WATER ) != SW_CONFIG_ENABLE_VALUE ) + if ( getSoftwareConfigStatus( SW_CONFIG_DISABLE_SAMPLE_WATER ) != SW_CONFIG_ENABLE_VALUE ) { transitionToSampleWater(); } -#endif currentPreTreatmentState = HD_PRE_TREATMENT_WATER_SAMPLE_STATE; break; @@ -357,12 +346,10 @@ BOOL accepted = FALSE; REQUEST_REJECT_REASON_CODE_T rejReason = REQUEST_REJECT_REASON_NO_PATIENT_CONNECTION_CONFIRM; -#ifdef SKIP_UI_INTERACTION - //if ( getSoftwareConfigStatus( SW_CONFIG_DISABLE_UI_INTERACTION ) != SW_CONFIG_ENABLE_VALUE ) + if ( SW_CONFIG_ENABLE_VALUE == getSoftwareConfigStatus( SW_CONFIG_DISABLE_UI_INTERACTION ) ) { patientConnectionConfirm = TRUE; } -#endif if ( TRUE == patientConnectionConfirm ) { @@ -548,10 +535,8 @@ execSampleWater(); -#ifndef SKIP_SAMPLE_WATER - if ( ( SAMPLE_WATER_COMPLETE_STATE == getSampleWaterState() ) /*|| - ( getSoftwareConfigStatus( SW_CONFIG_DISABLE_SAMPLE_WATER ) != SW_CONFIG_ENABLE_VALUE )*/ ) -#endif + if ( ( SAMPLE_WATER_COMPLETE_STATE == getSampleWaterState() ) || + ( SW_CONFIG_ENABLE_VALUE == getSoftwareConfigStatus( SW_CONFIG_DISABLE_SAMPLE_WATER ) ) ) { cmdDGSampleWater( SAMPLE_WATER_CMD_END ); @@ -654,12 +639,10 @@ { HD_PRE_TREATMENT_MODE_STATE_T state = HD_PRE_TREATMENT_CART_INSTALL_STATE; -#ifdef SKIP_UI_INTERACTION - //if ( getSoftwareConfigStatus( SW_CONFIG_DISABLE_UI_INTERACTION ) != SW_CONFIG_ENABLE_VALUE ) + if ( SW_CONFIG_ENABLE_VALUE == getSoftwareConfigStatus( SW_CONFIG_DISABLE_UI_INTERACTION ) ) { confirmInstallRequested = TRUE; } -#endif if ( TRUE == confirmInstallRequested ) { @@ -773,12 +756,10 @@ execPreTreatmentRecirc(); -#ifdef SKIP_UI_INTERACTION - //if ( getSoftwareConfigStatus( SW_CONFIG_DISABLE_UI_INTERACTION ) != SW_CONFIG_ENABLE_VALUE ) + if ( SW_CONFIG_ENABLE_VALUE == getSoftwareConfigStatus( SW_CONFIG_DISABLE_UI_INTERACTION ) ) { continueToTreatmentRequested = TRUE; } -#endif if ( TRUE == continueToTreatmentRequested ) { @@ -968,16 +949,37 @@ { if ( DG_RESERVOIR_1 == getDGInactiveReservoir() ) { - cmdStartDGFill( PRE_TREATMENT_FILL_RESERVOIR_ONE_VOLUME_ML, DEFAULT_TARGET_FILL_FLOW_RATE_LPM ); + U32 volume = FILL_RESERVOIR_TO_VOLUME_ML; + + if ( getSoftwareConfigStatus( SW_CONFIG_DISABLE_PRIMING ) != SW_CONFIG_ENABLE_VALUE ) + { + volume = PRE_TREATMENT_FILL_RESERVOIR_ONE_VOLUME_ML; + } + + cmdStartDGFill( volume, DEFAULT_TARGET_FILL_FLOW_RATE_LPM ); } else { - cmdStartDGFill( PRE_TREATMENT_FILL_RESERVOIR_TWO_VOLUME_ML, DEFAULT_TARGET_FILL_FLOW_RATE_LPM ); + U32 volume = FILL_RESERVOIR_TO_VOLUME_ML; + + if ( getSoftwareConfigStatus( SW_CONFIG_DISABLE_PRIMING ) != SW_CONFIG_ENABLE_VALUE ) + { + volume = PRE_TREATMENT_FILL_RESERVOIR_TWO_VOLUME_ML; + } + + cmdStartDGFill( volume, DEFAULT_TARGET_FILL_FLOW_RATE_LPM ); } } else { - cmdStartDGFill( PRE_TREATMENT_FLUSH_RESERVOIR_VOLUME_ML, DEFAULT_TARGET_FILL_FLOW_RATE_LPM ); + U32 volume = FILL_RESERVOIR_TO_VOLUME_ML; + + if ( getSoftwareConfigStatus( SW_CONFIG_DISABLE_PRIMING ) != SW_CONFIG_ENABLE_VALUE ) + { + volume = PRE_TREATMENT_FLUSH_RESERVOIR_VOLUME_ML; + } + + cmdStartDGFill( volume, DEFAULT_TARGET_FILL_FLOW_RATE_LPM ); } } @@ -1048,12 +1050,15 @@ if ( FALSE == reservoirFlushedStatus[ DG_RESERVOIR_1 ] ) { -#ifdef SKIP_PRIMING - reservoirFilledStatus[ DG_RESERVOIR_1 ] = TRUE; -#else - reservoirFlushedStatus[ DG_RESERVOIR_1 ] = TRUE; - cmdSetDGActiveReservoir( DG_RESERVOIR_1 ); -#endif + if ( SW_CONFIG_ENABLE_VALUE == getSoftwareConfigStatus( SW_CONFIG_DISABLE_PRIMING ) ) + { + reservoirFilledStatus[ DG_RESERVOIR_1 ] = TRUE; + } + else + { + reservoirFlushedStatus[ DG_RESERVOIR_1 ] = TRUE; + cmdSetDGActiveReservoir( DG_RESERVOIR_1 ); + } } else if ( ( TRUE == reservoirFlushedStatus[ DG_RESERVOIR_1 ] ) && ( FALSE == reservoirFlushedStatus[ DG_RESERVOIR_2 ] ) ) {