Index: firmware/App/Modes/FPModes/StateFlushFilterDefeatured.c =================================================================== diff -u -r336f6c49e05f515ca1250e0fd9ea97e5f5b5f11c -r64e076ffa5110ab19e71dc3d3e126ce13e3fe2b8 --- firmware/App/Modes/FPModes/StateFlushFilterDefeatured.c (.../StateFlushFilterDefeatured.c) (revision 336f6c49e05f515ca1250e0fd9ea97e5f5b5f11c) +++ firmware/App/Modes/FPModes/StateFlushFilterDefeatured.c (.../StateFlushFilterDefeatured.c) (revision 64e076ffa5110ab19e71dc3d3e126ce13e3fe2b8) @@ -36,7 +36,7 @@ #define FILTER_FLUSH_DYNAMIC_PRESSURE_MAX_TIMEOUT ( 10 * SEC_PER_MIN * MS_PER_SECOND ) ///< Max override timeout for 10 minutes #define FILTER_FLUSH_DATA_PUBLISH_INTERVAL ( MS_PER_SECOND / TASK_GENERAL_INTERVAL ) ///< Interval (ms/task time) at which the gen water mode data published. -#define FILTER_FLUSH_TIMEOUT ( 5 * MS_PER_SECOND ) ///< Filter flush timeout for 5 seconds (in ms) +#define FILTER_FLUSH_TIMEOUT ( 15 * MS_PER_SECOND ) ///< Filter flush timeout for 5 seconds (in ms) #define FILTER_FLUSH_STATIC_PRESSURE_CHECK_TIMEOUT ( 1 * MS_PER_SECOND ) ///< Filter flush timeout for 5 second (in ms) #define MAX_INLET_WATER_PRESSURE_DEFEATURED_FAULT_HIGH_PSIG 40 ///< maximum dynamic M3 pressure is within range < 40 #define MIN_FILTER_FLUSH_PRESSURE_DEFEATURED_LOW_PSIG 5.0F ///< Minimum allowed Input warning low pressure value in psig for RO Defeatured. Index: firmware/App/Monitors/WaterQualityMonitor.c =================================================================== diff -u -radb60c30593c91525c17896f54056d3c7aeab2fd -r64e076ffa5110ab19e71dc3d3e126ce13e3fe2b8 --- firmware/App/Monitors/WaterQualityMonitor.c (.../WaterQualityMonitor.c) (revision adb60c30593c91525c17896f54056d3c7aeab2fd) +++ firmware/App/Monitors/WaterQualityMonitor.c (.../WaterQualityMonitor.c) (revision 64e076ffa5110ab19e71dc3d3e126ce13e3fe2b8) @@ -41,8 +41,8 @@ #define INLET_TEMPERATURE_PERSISTENCE_TIMER_MS ( 5 * MS_PER_SECOND ) ///< Persistence timer for P10/D1 inlet temperature to trigger alarm in milliseconds. #define INLET_TEMPERATURE_PERSISTENCE_CLEAR_MS ( 5 * MS_PER_SECOND ) ///< Persistence timer for P10/D1 inlet temperature to clear alarm in milliseconds. -#define MAX_INLET_RO_PUMP_PRESSURE_WARNING_HIGH_PSIG 120.0F ///< Maximum allowed Input warning pressure to the RO membrane. -#define MAX_INLET_RO_PUMP_PRESSURE_WARNING_LOW_PSIG 58.0F ///< Minimum Input warning pressure to the RO membrane. +#define MAX_INLET_RO_PUMP_PRESSURE_WARNING_HIGH_PSIG 140.0F ///< Maximum allowed Input warning pressure to the RO membrane. +#define MAX_INLET_RO_PUMP_PRESSURE_WARNING_LOW_PSIG 88.0F ///< Minimum Input warning pressure to the RO membrane. #define MIN_INLET_WATER_PRESSURE_WARNING_LOW_PSIG 25.0F ///< Minimum allowed M3 Input warning low pressure value in psig for RO featured. #define MAX_INLET_WATER_PRESSURE_WARNING_HIGH_PSIG 40.0F ///< Maximum allowed M3 Input warning high pressure value in psig for RO featured. #define MAX_INLET_WATER_PRESSURE_FAULT_HIGH_PSIG 75.0F ///< Maximum allowed M3 Input fault high pressure value in psig for RO featured. @@ -72,11 +72,11 @@ #define RO_PUMP_DUTY_CYCLE_WARNING_TIMEOUT_MS ( 1 * MS_PER_SECOND ) ///< Persistence period for duty cycle in warning range in milliseconds. #define RO_PUMP_DUTY_CYCLE_WARNING_CLEAR_MS ( 1 * MS_PER_SECOND ) ///< Persistence period for duty cycle warning range clear in milliseconds. -// pump manufacturer's data for pump current draw based on pump speed and outlet pressure If 58 PSI ≤ P13 < 120 PSI, -// the currently set P12 duty cycle (% PWM) must be < 0.0065(x^2) - 1.9859(x) + 193.23, where x = measured P13 pressure in PSI -#define QUADRATIC_COEFFICIENT 0.0065F ///< X2 quadratic coefficient -#define LINEAR_COEFFICIENT 1.9895F ///< X linear coefficient -#define CONSTANT_TERM 193.23F ///< Constant term +// pump manufacturer's data for pump current draw based on pump speed and outlet pressure If 88 PSI ≤ P13 < 140 PSI, +// the currently set P12 duty cycle (% PWM) must be < 0.0041(x^2) - 1.8357(x) + 230.48, where x = measured P13 pressure in PSI +#define QUADRATIC_COEFFICIENT 0.0041F ///< X2 quadratic coefficient +#define LINEAR_COEFFICIENT 1.8357F ///< X linear coefficient +#define CONSTANT_TERM 230.48F ///< Constant term // ********** private data ********** @@ -254,7 +254,7 @@ { F32 pressureP13 = getPressure( P13_PRES ); // TODO verify the calculated dutycycle unit - // If 58 PSI ≤ P13 < 120 PSI, the currently set P12 duty cycle (% PWM) must be < 0.0065(x^2) - 1.9859(x) + 193.23, where x = measured P13 pressure in PSI + // If 88 PSI ≤ P13 < 120 PSI, the currently set P12 duty cycle (% PWM) must be < 0.0041(x^2) - 1.8357(x) + 230.48, where x = measured P13 pressure in PSI F32 dutyCyclePct = ( ( QUADRATIC_COEFFICIENT * ( pressureP13 * pressureP13 ) ) - ( LINEAR_COEFFICIENT * ( pressureP13 ) ) ) + CONSTANT_TERM; return dutyCyclePct;