Index: firmware/App/Modes/ModeRecirculate.c =================================================================== diff -u -ra7bf3ca23ea37a61000379facae628a31b3ecc59 -rf308cc4c35eab630ebbbde405cfe47d049afeafb --- firmware/App/Modes/ModeRecirculate.c (.../ModeRecirculate.c) (revision a7bf3ca23ea37a61000379facae628a31b3ecc59) +++ firmware/App/Modes/ModeRecirculate.c (.../ModeRecirculate.c) (revision f308cc4c35eab630ebbbde405cfe47d049afeafb) @@ -1,3 +1,4 @@ + /************************************************************************** * * Copyright (c) 2019-2020 Diality Inc. - All Rights Reserved. @@ -7,8 +8,8 @@ * * @file ModeRecirculate.c * -* @author (last) Sean Nash -* @date (last) 06-Jul-2020 +* @author (last) Quang Nguyen +* @date (last) 13-Aug-2020 * * @author (original) Sean * @date (original) 04-Apr-2020 @@ -17,15 +18,18 @@ #include "etpwm.h" +#include "ConductivitySensors.h" #include "DrainPump.h" #include "FPGA.h" #include "Heaters.h" +#include "ModeRecirculate.h" #include "OperationModes.h" +#include "Pressures.h" #include "ROPump.h" #include "TaskGeneral.h" #include "Timers.h" #include "Valves.h" -#include "ModeRecirculate.h" +#include "TemperatureSensors.h" /** * @addtogroup DGRecirculateMode @@ -39,8 +43,8 @@ // ********** private data ********** -static DG_RECIRCULATE_MODE_STATE_T recircState; ///< Currently active re-circulation state. -static F32 flushLinesVolumeL = 0.0; ///< Volume of water pumped by RO pump during flush lines state. +static DG_RECIRCULATE_MODE_STATE_T recircState; ///< Currently active re-circulation state. +static F32 flushLinesVolumeL = 0.0; ///< Volume of water pumped by RO pump during flush lines state. // ********** private function prototypes ********** @@ -77,6 +81,7 @@ initRecirculateMode(); // set initial actuator states + setValveState( VSP, VALVE_STATE_CLOSED ); setValveState( VPI, VALVE_STATE_OPEN ); setValveState( VRC, VALVE_STATE_DRAIN_C_TO_NO ); setValveState( VDR, VALVE_STATE_DRAIN_C_TO_NO ); @@ -105,6 +110,11 @@ *************************************************************************/ U32 execRecirculateMode( void ) { + // check inlet water conductivity, temperature, and pressure + checkInletWaterConductivity( recircState ); + checkInletWaterTemperature(); + checkInletPressure(); + // execute current re-circulate state switch ( recircState ) { @@ -125,7 +135,7 @@ break; default: - SET_ALARM_WITH_2_U32_DATA( ALARM_ID_SOFTWARE_FAULT, 0, recircState ) // TODO - add s/w fault enum to 1st data param + SET_ALARM_WITH_2_U32_DATA( ALARM_ID_DG_SOFTWARE_FAULT, 0, recircState ) // TODO - add s/w fault enum to 1st data param recircState = DG_RECIRCULATE_MODE_STATE_START; break; }