Index: firmware/App/Services/DDInterface.c =================================================================== diff -u -rd5574e12aa9638c933d11b9bee8d5cf024864440 -r9cbb00a9eba347697bdf5cee63962061ffa36c92 --- firmware/App/Services/DDInterface.c (.../DDInterface.c) (revision d5574e12aa9638c933d11b9bee8d5cf024864440) +++ firmware/App/Services/DDInterface.c (.../DDInterface.c) (revision 9cbb00a9eba347697bdf5cee63962061ffa36c92) @@ -15,16 +15,19 @@ * ***************************************************************************/ +#include "BoostPump.h" #include "DDInterface.h" +#include "FPModeStandby.h" +#include "FPOperationModes.h" #include "Messaging.h" #include "MessagePayloads.h" -#include "ModeStandby.h" -#include "ModeWaterGen.h" -#include "ModeWaterPreGen.h" -#include "OperationModes.h" +#include "ModeGenPermeate.h" +#include "ModeGenPermeateDefeatured.h" +#include "ModePreGenPermeate.h" +#include "ModePreGenPermeateDefeatured.h" #include "PersistentAlarm.h" #include "ROPump.h" -#include "SystemCommRO.h" +#include "SystemCommFP.h" #include "TaskGeneral.h" #include "Timers.h" @@ -140,10 +143,10 @@ { BOOL result = FALSE; - if ( message->hdr.payloadLen == sizeof( RO_WATER_REQ_PAYLOAD_T ) ) + if ( message->hdr.payloadLen == sizeof( FP_WATER_REQ_PAYLOAD_T ) ) { - RO_WATER_REQ_PAYLOAD_T cmd; - memcpy( &cmd, message->payload, sizeof( RO_WATER_REQ_PAYLOAD_T ) ); + FP_WATER_REQ_PAYLOAD_T cmd; + memcpy( &cmd, message->payload, sizeof( FP_WATER_REQ_PAYLOAD_T ) ); switch ( cmd.cmdID ) { @@ -154,7 +157,7 @@ result = handleGenWaterCmd( cmd.start, cmd.roRate ); break; default: - SET_ALARM_WITH_2_U32_DATA( ALARM_ID_FP_SOFTWARE_FAULT, SW_FAULT_ID_RO_INVALID_RO_CMD, cmd.cmdID ) + SET_ALARM_WITH_2_U32_DATA( ALARM_ID_FP_SOFTWARE_FAULT, SW_FAULT_ID_FP_INVALID_FP_CMD, cmd.cmdID ) break; } } @@ -175,19 +178,24 @@ static BOOL handlePreGenCmd( BOOL start, F32 roRate ) { BOOL result = FALSE; - RO_OP_MODE_T roMode = getCurrentOperationMode(); + FP_OP_MODE_T roMode = getCurrentOperationMode(); - if ( ( RO_MODE_STAN == roMode ) && ( TRUE == start ) ) + if ( ( FP_MODE_STAN == roMode ) && ( TRUE == start ) ) { setDDPermeateFlowRate( roRate ); - setFluidPumpPWMDutyCycle( P12_PUMP, roRate ); - result = requestPreGenStart(); + if ( TRUE == isFPDefeatured() ) + { + result = requestPreGenDefStart(); + } + else + { + result = requestPreGenStart(); + } } - else if ( RO_MODE_PGEN == roMode ) + else if ( FP_MODE_PGEN == roMode ) { if ( FALSE == start ) { - signalROPumpHardStop(); result = requestPreGenStop(); } else @@ -197,6 +205,10 @@ result = TRUE; } } + else if ( FP_MODE_DPGW == roMode ) + { + result = requestPreGenDefStop(); + } return result; } @@ -214,28 +226,26 @@ static BOOL handleGenWaterCmd( BOOL start, F32 roRate ) { BOOL result = FALSE; - RO_OP_MODE_T roMode = getCurrentOperationMode(); + FP_OP_MODE_T roMode = getCurrentOperationMode(); - if ( ( RO_MODE_PGEN == roMode ) && ( TRUE == start ) ) + if ( TRUE == start ) { setDDPermeateFlowRate( roRate ); - setFluidPumpPWMDutyCycle( P12_PUMP,roRate ); - result = requestGenWaterStart(); - } - else if ( RO_MODE_GENW == roMode ) - { - if ( FALSE == start ) + if ( TRUE == isFPDefeatured() ) { - signalROPumpHardStop(); - result = requestGenWaterStop(); + result = requestGenWaterDefStart(); } else { - // Set flow rate and delivery. - setDDPermeateFlowRate( roRate ); - result = TRUE; + result = requestGenWaterStart(); } } + else + { + // Set flow rate and delivery. + result = requestGenWaterStop(); + result = TRUE; + } return result; }