Index: firmware/App/Controllers/ROPump.c =================================================================== diff -u -r70f88b1f2610e5d03453f27c94fb2413d995ae40 -re53dfe303b1d166d9ab0a53a6931c7255dde9c4d --- firmware/App/Controllers/ROPump.c (.../ROPump.c) (revision 70f88b1f2610e5d03453f27c94fb2413d995ae40) +++ firmware/App/Controllers/ROPump.c (.../ROPump.c) (revision e53dfe303b1d166d9ab0a53a6931c7255dde9c4d) @@ -221,7 +221,7 @@ BOOL result = FALSE; // First of all, the flow rate must be in range - if ( ( roFlowRate <= MAX_RO_FLOWRATE_LPM ) && ( roFlowRate >= MIN_RO_FLOWRATE_LPM ) ) + if ( ( (roFlowRate <= MAX_RO_FLOWRATE_LPM ) && ( roFlowRate >= MIN_RO_FLOWRATE_LPM )) || 0 <= roFlowRate ) { // Then the max pressure that we are allowed to reach must be in range if ( ( maxPressure >= MIN_ALLOWED_PRESSURE_PSI ) && ( maxPressure <= MAX_ALLOWED_PRESSURE_PSI ) ) @@ -271,7 +271,7 @@ BOOL result = FALSE; // First of all, the flow rate must be in range - if ( ( roFlowRate <= MAX_RO_FLOWRATE_LPM ) && ( roFlowRate >= MIN_RO_FLOWRATE_LPM ) ) + if ( (( roFlowRate <= MAX_RO_FLOWRATE_LPM ) && ( roFlowRate >= MIN_RO_FLOWRATE_LPM )) || 0 <= roFlowRate ) { // Then the max pressure that we are allowed to reach must be in range if ( ( maxPressure >= MIN_ALLOWED_PRESSURE_PSI ) && ( maxPressure <= MAX_ALLOWED_PRESSURE_PSI ) ) @@ -923,7 +923,7 @@ if ( TRUE == isTestingActivated() ) { // The flow rate and pressure must be in range - if ( ( flow <= MAX_RO_FLOWRATE_LPM ) && ( flow >= MIN_RO_FLOWRATE_LPM ) ) + if ( (( flow <= MAX_RO_FLOWRATE_LPM ) && ( flow >= MIN_RO_FLOWRATE_LPM ) ) || 0 <= flow ) { result = setROPumpTargetFlowRateLPM( flow, MAX_ALLOWED_PRESSURE_PSI ); }