Index: firmware/App/Controllers/ConcentratePumps.c =================================================================== diff -u -r7d24ef2e6a4130b3a049e6106a0371fc6503271f -ree40156fe9be170a677d5a4a944145dd0c23b9f1 --- firmware/App/Controllers/ConcentratePumps.c (.../ConcentratePumps.c) (revision 7d24ef2e6a4130b3a049e6106a0371fc6503271f) +++ firmware/App/Controllers/ConcentratePumps.c (.../ConcentratePumps.c) (revision ee40156fe9be170a677d5a4a944145dd0c23b9f1) @@ -57,7 +57,7 @@ ( CONCENTRATE_PUMP_STEP_PER_REV * \ CONCENTRATE_PUMP_MICRO_STEPS_PER_STEP ) ) ///< Convert volume in to number of revolutions needed. #define CONCENTRATE_PUMP_VOLUME_TO_REVOLUTION ( ( 1.0F / CONCENTRATE_PUMP_VOLUME_PER_REV ) * \ - ( CONCENTRATE_PUMP_VOLUME_PER_REV * \ + ( CONCENTRATE_PUMP_STEP_PER_REV * \ CONCENTRATE_PUMP_MICRO_STEPS_PER_STEP ) ) ///< Convert volume in to number of revolutions needed. #define CONCENTRATE_PUMP_STEP_PERIOD_RESOLUTION ( 0.50F / ( US_PER_SECOND * SEC_PER_MIN ) ) ///< Convert step period resolution (0.50 us) to minute. @@ -561,12 +561,14 @@ } else { - if ( TRUE == getTestConfigStatus( TEST_CONFIG_DIENER_CONC_PUMP ) ) + if ( TRUE != getTestConfigStatus( TEST_CONFIG_DISABLE_DIENER_CONC_PUMP ) ) { pumpTargetRevCnt[ pumpId ].data = (U32)( targetVolume_ml * CONCENTRATE_PUMP_VOLUME_TO_REVOLUTION_DIENER ); } else { + //Restrict FMI pump speed to 48.0 ml/min. + targetSpeed_ml_min = ( targetSpeed_ml_min > CONCENTRATE_PUMP_MAX_SPEED_FMI ) ? CONCENTRATE_PUMP_MAX_SPEED_FMI : targetSpeed_ml_min; pumpTargetRevCnt[ pumpId ].data = (U32)( targetVolume_ml * CONCENTRATE_PUMP_VOLUME_TO_REVOLUTION ); } } @@ -1067,7 +1069,7 @@ F32 timePerStep; F32 stepPeriodCounts; - if ( TRUE == getTestConfigStatus( TEST_CONFIG_DIENER_CONC_PUMP ) ) + if ( TRUE != getTestConfigStatus( TEST_CONFIG_DISABLE_DIENER_CONC_PUMP ) ) { timePerStep = CONCENTRATE_PUMP_VOLUME_PER_REV_DIENER / ( concentratePumps[ pumpId ].currentPumpSpeed * CONCENTRATE_PUMP_STEP_PER_REV ); } @@ -1149,7 +1151,7 @@ } else if ( FALSE == isPumpPulseWidthOut ) { - if ( TRUE == getTestConfigStatus( TEST_CONFIG_DIENER_CONC_PUMP ) ) + if ( TRUE != getTestConfigStatus( TEST_CONFIG_DISABLE_DIENER_CONC_PUMP ) ) { measuredPumpSpeed[ pumpId ].data = ( US_PER_SECOND / pulseWidthInMicroSeconds ) * CONCENTRATE_PUMP_VOLUME_PER_PULSE_DIENER * SEC_PER_MIN; }