Index: firmware/App/Controllers/ROPump.c =================================================================== diff -u -r5738118966dd400f3d985329cf5a521dfe41c703 -rb7c391c953dad63a6704e292f7b82a00dac64a73 --- firmware/App/Controllers/ROPump.c (.../ROPump.c) (revision 5738118966dd400f3d985329cf5a521dfe41c703) +++ firmware/App/Controllers/ROPump.c (.../ROPump.c) (revision b7c391c953dad63a6704e292f7b82a00dac64a73) @@ -76,7 +76,7 @@ /// Initial conversion factor from target flow rate to PWM duty cycle estimate. #define ROP_FLOW_TO_PWM_DC(flow) ( ROP_FLOW_TO_PWM_SLOPE * flow + ROP_FLOW_TO_PWM_INTERCEPT ) #define MAX_ALLOWED_FLOW_DEVIATION 0.1F ///< Max allowed deviation from target flow. -#define FLOW_OUT_OF_RANGE_TIME_OUT_MS ( 30 * MS_PER_SECOND ) ///< Flow out of range time out in counts. +#define FLOW_OUT_OF_RANGE_TIME_OUT_MS ( 30 * MS_PER_SECOND ) ///< Flow out of range time out in counts. // TODO - changed to prevent alarms (initial value 12) #define MAX_PRESSURE_TARGET_TOLERANCE 5 ///< Pressure tolerance from maximum set pressure by user in psi. #define MAX_ALLOWED_PRESSURE_PSI 130 ///< Maximum allowed pressure that the RO pump can go to. #define MIN_ALLOWED_PRESSURE_PSI 10 ///< Minimum allowed pressure that the RO pump can go to. Index: firmware/App/Controllers/TemperatureSensors.c =================================================================== diff -u -r5738118966dd400f3d985329cf5a521dfe41c703 -rb7c391c953dad63a6704e292f7b82a00dac64a73 --- firmware/App/Controllers/TemperatureSensors.c (.../TemperatureSensors.c) (revision 5738118966dd400f3d985329cf5a521dfe41c703) +++ firmware/App/Controllers/TemperatureSensors.c (.../TemperatureSensors.c) (revision b7c391c953dad63a6704e292f7b82a00dac64a73) @@ -40,6 +40,7 @@ #define PRIMARY_HEATER_EXT_TEMP_SENSORS_REF_RESISTANCE 20000 ///< Primary heater external temperature sensors reference resistance. #define PRIMARY_HEATER_EXT_TEMP_SENSORS_0_DEGREE_RESISTANCE 1000U ///< Primary heater external temperature sensors zero degree resistance. #define PRIMARY_HEATER_EXT_TEMP_SENSORS_V3_REF_RESISTANCE 19600 ///< Primary heater external temperature sensors V3 reference resistance. +#define V3_INTERNAL_THD_RTD 40.0F ///< Internal THD RTD not supported on V3. Specify nominal value #define COND_SENSORS_TEMP_SENSOR_GAIN 8U ///< Temperature sensor for conductivity gain. #define COND_SENSORS_TEMP_SENSOR_REF_RESISTANCE 20000 ///< Temperature sensor for conductivity reference resistance. @@ -480,7 +481,7 @@ if ( TEMPSENSORS_INTERNAL_THD_RTD == sensorIndex ) { - temperature = 40.0F; + temperature = V3_INTERNAL_THD_RTD; } if ( TEMPSENSORS_OUTLET_REDUNDANT == sensorIndex ) Index: firmware/App/Modes/ModeChemicalDisinfect.c =================================================================== diff -u -r0c296cef29037819be204c45a23d4d38a52b2718 -rb7c391c953dad63a6704e292f7b82a00dac64a73 --- firmware/App/Modes/ModeChemicalDisinfect.c (.../ModeChemicalDisinfect.c) (revision 0c296cef29037819be204c45a23d4d38a52b2718) +++ firmware/App/Modes/ModeChemicalDisinfect.c (.../ModeChemicalDisinfect.c) (revision b7c391c953dad63a6704e292f7b82a00dac64a73) @@ -17,6 +17,7 @@ #include "ConcentratePumps.h" #include "ConductivitySensors.h" +#include "CPLD.h" #include "DrainPump.h" #include "FlowSensors.h" #include "Heaters.h" Index: firmware/App/Modes/ModeFlush.c =================================================================== diff -u -r0c296cef29037819be204c45a23d4d38a52b2718 -rb7c391c953dad63a6704e292f7b82a00dac64a73 --- firmware/App/Modes/ModeFlush.c (.../ModeFlush.c) (revision 0c296cef29037819be204c45a23d4d38a52b2718) +++ firmware/App/Modes/ModeFlush.c (.../ModeFlush.c) (revision b7c391c953dad63a6704e292f7b82a00dac64a73) @@ -16,6 +16,7 @@ ***************************************************************************/ #include "ConcentratePumps.h" +#include "CPLD.h" #include "DrainPump.h" #include "FlowSensors.h" #include "Heaters.h" @@ -32,7 +33,6 @@ #include "Timers.h" #include "UVReactors.h" #include "Valves.h" -#include "CPLD.h" /** * @addtogroup DGFlushMode Index: firmware/App/Modes/ModeHeatDisinfect.c =================================================================== diff -u -r5738118966dd400f3d985329cf5a521dfe41c703 -rb7c391c953dad63a6704e292f7b82a00dac64a73 --- firmware/App/Modes/ModeHeatDisinfect.c (.../ModeHeatDisinfect.c) (revision 5738118966dd400f3d985329cf5a521dfe41c703) +++ firmware/App/Modes/ModeHeatDisinfect.c (.../ModeHeatDisinfect.c) (revision b7c391c953dad63a6704e292f7b82a00dac64a73) @@ -19,6 +19,7 @@ #include "ConcentratePumps.h" #include "ConductivitySensors.h" +#include "CPLD.h" #include "DrainPump.h" #include "Heaters.h" #include "LoadCell.h" @@ -38,7 +39,6 @@ #include "Timers.h" #include "UVReactors.h" #include "Valves.h" -#include "CPLD.h" /** * @addtogroup DGHeatDisinfectMode @@ -1149,9 +1149,8 @@ // Reset the timer for the next disinfect state tempGradOutOfRangeTimer = 0; state = DG_HEAT_DISINFECT_STATE_FILL_R2_WITH_HOT_WATER; + break; - break; - case HEAT_DISINFECT_HEAT_UP_IN_PROGRESS: default: heatDisinfectUIState = HEAT_DISINFECT_UI_STATE_HEAT_UP_WATER; @@ -1307,7 +1306,6 @@ ROFCoolingTimer = 0; stateTimer = getMSTimerCount(); state = DG_HEAT_DISINFECT_STATE_COOL_DOWN_RO_FILTER; - } return state; @@ -1369,53 +1367,6 @@ } return state; - -#if 0 - // Check if the coldest spot temperature is less than 45 C so the RO filter can safely run - if ( ( FALSE == isROPumpRunning() ) && ( THdTemp < TARGET_THD_SENSOR_FOR_RINSING_C ) ) - { - U32 time = calcTimeSince( ROFCoolingTimer ); - - if ( time <= THD_REACH_BELOW_45_AFTER_CIRC_TIME_MS ) - { - setValveState( VPI, VALVE_STATE_OPEN ); - setValveState( VBF, VALVE_STATE_CLOSED ); - setValveState( VPO, VALVE_STATE_FILL_C_TO_NC ); - setValveState( VRC, VALVE_STATE_RECIRC_C_TO_NC ); - setValveState( VDR, VALVE_STATE_DRAIN_C_TO_NO ); - setValveState( VRO, VALVE_STATE_R1_C_TO_NO ); - setValveState( VRI, VALVE_STATE_R1_C_TO_NO ); - setValveState( VRF, VALVE_STATE_R2_C_TO_NO ); - - rsrvr1Status = DG_RESERVOIR_ABOVE_TARGET; - stateTimer = getMSTimerCount(); - state = DG_HEAT_DISINFECT_STATE_MIX_DRAIN_R1; - } - else - { - // Set the valves to circulation. VBf is opened because the fluid in the RO filter might still be hot - setValveState( VBF, VALVE_STATE_OPEN ); - setValveState( VDR, VALVE_STATE_RECIRC_C_TO_NC ); - setValveState( VRC, VALVE_STATE_RECIRC_C_TO_NC ); - setValveState( VPO, VALVE_STATE_NOFILL_C_TO_NO ); - - // Set the RO flow to maximum pressure of 30psi since it is the maximum pressure on the RO filter - // at inlet temperature > 45 C - setROPumpTargetFlowRateLPM( ROF_COOL_DOWN_TARGET_FLOW_LPM, HEAT_DISINFECT_MAX_RO_PRESSURE_PSI ); - - hasROFCirculationBeenStarted = TRUE; - ROFCirculationTimer = getMSTimerCount(); - } - } - // If the RO filter water circulation is in progress and the time for it has elapsed, stop the pump - else if ( ( TRUE == hasROFCirculationBeenStarted ) && ( TRUE == didTimeout( ROFCirculationTimer, ROF_COOL_DOWN_CIRCULATION_TIME_MS ) ) ) - { - hasROFCirculationBeenStarted = FALSE; - ROFCoolingTimer = getMSTimerCount(); - signalROPumpHardStop(); - } - return state; -#endif } /*********************************************************************//** @@ -2026,8 +1977,9 @@ // Check if the temperature gradient in between the coldest and the hottest spot is more than the specified temperature and // the timer has not started yet, start it - bool gradientOutOfRange = ( fabs( TPoTemp - ThdTemp ) > HEAT_DISINFECT_MAX_TEMP_GRADIENT_C ) ? TRUE : FALSE; - if ( !gradientOutOfRange ) + BOOL gradientOutOfRange = ( fabs( TPoTemp - ThdTemp ) > HEAT_DISINFECT_MAX_TEMP_GRADIENT_C ) ? TRUE : FALSE; + + if ( TRUE != gradientOutOfRange ) { tempGradOutOfRangeTimer = 0; }