Index: firmware/App/Modes/ModeFill.c =================================================================== diff -u -rd51921b4d923754ab63db79923d28c09c27af5aa -rff676a9640e5dfe162de78d2b24f356f63bad5bb --- firmware/App/Modes/ModeFill.c (.../ModeFill.c) (revision d51921b4d923754ab63db79923d28c09c27af5aa) +++ firmware/App/Modes/ModeFill.c (.../ModeFill.c) (revision ff676a9640e5dfe162de78d2b24f356f63bad5bb) @@ -718,8 +718,9 @@ if ( TRUE == didTimeout( concentrateTestStartTime, CONCENTRATE_TEST_TIME_OUT_MS ) ) { DG_CHEMICALS_FILL_COND_CAL_RECORD_T chemicalsCond; - F32 acidCondUSPerCM = 0.0F; - BOOL haveTestsPassed = FALSE; + F32 acidCondUSPerCM = 0.0F; + BOOL hasAcidTestPassed = FALSE; + BOOL hasCD1CD2TestPassed = FALSE; getFillChemicalCondRecord( &chemicalsCond ); @@ -729,20 +730,37 @@ pctDiffInConductivity = fabs( 2.0F * ( averageAcidConductivity - averageBicarbConductivity ) / ( averageAcidConductivity + averageBicarbConductivity ) ); - if ( ( TRUE == isValueWithinPercentRange( averageAcidConductivity, acidCondUSPerCM, FIVE_PERCENT_FACTOR ) ) && - ( pctDiffInConductivity < FIVE_PERCENT_FACTOR ) ) +#ifndef _RELEASE_ + if ( getSoftwareConfigStatus( SW_CONFIG_DISABLE_ACID_CONDUCTIVITY_TEST ) != SW_CONFIG_ENABLE_VALUE ) +#endif { - haveTestsPassed = TRUE; - } + if ( TRUE == isValueWithinPercentRange( averageAcidConductivity, acidCondUSPerCM, FIVE_PERCENT_FACTOR ) ) + { + hasAcidTestPassed = TRUE; + } + else + { + SET_ALARM_WITH_1_F32_DATA( ALARM_ID_ACID_CONDUCTIVITY_OUT_OF_RANGE, averageAcidConductivity ) + } + if ( pctDiffInConductivity < FIVE_PERCENT_FACTOR ) + { + hasCD1CD2TestPassed = TRUE; + } + else + { + SET_ALARM_WITH_1_F32_DATA( ALARM_ID_DG_CD1_CD2_CHECK_FAULT, pctDiffInConductivity ) + } + } #ifndef _RELEASE_ - if ( SW_CONFIG_ENABLE_VALUE == getSoftwareConfigStatus( SW_CONFIG_DISABLE_ACID_CONDUCTIVITY_TEST ) ) + else { - haveTestsPassed = TRUE; + hasAcidTestPassed = TRUE; + hasCD1CD2TestPassed = TRUE; } #endif - if ( TRUE == haveTestsPassed ) + if ( ( TRUE == hasAcidTestPassed ) && ( TRUE == hasCD1CD2TestPassed ) ) { DG_ACID_CONCENTRATES_RECORD_T acid; F32 acidMix; @@ -763,11 +781,6 @@ fillStatus.isThisFirstFill = FALSE; result = DG_FILL_MODE_STATE_PRODUCE_DIALYSATE; } - else - { - // Acid conductivity did not pass, fault - SET_ALARM_WITH_1_F32_DATA( ALARM_ID_ACID_CONDUCTIVITY_OUT_OF_RANGE, averageAcidConductivity ); - } } return result; @@ -1022,7 +1035,7 @@ *************************************************************************/ static BOOL areInletWaterConditionsAlarmsActive( void ) { - // Check inlet water conductivity, temperature, pressure, and RO rejection ratio + // Check inlet water conductivity, temperature, pressure BOOL status = FALSE; checkInletWaterConductivity(); checkInletWaterTemperature();