Index: firmware/App/Controllers/ConcentratePumps.c =================================================================== diff -u -r62ee40b55ed96eb0de1c0f05455eb986f76c1842 -r273f797e1b0f70a9d5720d1ffff29d26ff5144af --- firmware/App/Controllers/ConcentratePumps.c (.../ConcentratePumps.c) (revision 62ee40b55ed96eb0de1c0f05455eb986f76c1842) +++ firmware/App/Controllers/ConcentratePumps.c (.../ConcentratePumps.c) (revision 273f797e1b0f70a9d5720d1ffff29d26ff5144af) @@ -41,7 +41,7 @@ #define CONCENTRATE_PUMP_HALL_SENSE_PERIOD_RESOLUTION 100.0 ///< Hall sense period resolution in microseconds. #define CONCENTRATE_PUMP_MICRO_STEPS_PER_STEP 8.0 ///< Number of micro-steps ( fractions of step) per step. -#define CONCENTRATE_PUMP_STEP_PERIOD_RESOLUTION ( 0.5 / ( US_PER_SECOND * SEC_PER_MIN ) ) ///< Convert one step period (0.5 us) to minute. +#define CONCENTRATE_PUMP_STEP_PERIOD_RESOLUTION ( 0.5 / ( US_PER_SECOND * SEC_PER_MIN ) ) ///< Convert step period resolution (0.5 us) to minute. /// Volume output per pulse. #define CONCENTRATE_PUMP_VOLUME_PER_PULSE ( CONCENTRATE_PUMP_VOLUME_PER_REV / CONCENTRATE_PUMP_PULSE_PER_REV ) @@ -70,7 +70,7 @@ static F32 pumpTargetSpeed[ NUM_OF_CONCENTRATE_PUMPS ]; ///< Target concentrate pumps' speed (mL/min). static F32 currentPumpSpeed[ NUM_OF_CONCENTRATE_PUMPS ]; ///< Current controlled concentrate pumps' speed (mL/min). -static U16 convertedStepSpeedPeriod[ NUM_OF_CONCENTRATE_PUMPS ]; ///< Converted pump speed (mL/min) to step speed period. +static U16 togglePeriodCount[ NUM_OF_CONCENTRATE_PUMPS ]; ///< Converted pump speed (mL/min) to toggle period counts (0.5 uS increment counts per step). // ********** private function prototypes ********** @@ -294,8 +294,8 @@ } F32 const timePerStep = CONCENTRATE_PUMP_VOLUME_PER_REV / ( currentPumpSpeed[ pumpId ] * CONCENTRATE_PUMP_STEP_PER_REV ) ; - F32 const stepPeriod = timePerStep / ( CONCENTRATE_PUMP_STEP_PERIOD_RESOLUTION * CONCENTRATE_PUMP_MICRO_STEPS_PER_STEP ); - convertedStepSpeedPeriod[ pumpId ] = (U16)( stepPeriod + 0.5 ); + F32 const stepPeriodCounts = timePerStep / ( CONCENTRATE_PUMP_STEP_PERIOD_RESOLUTION * CONCENTRATE_PUMP_MICRO_STEPS_PER_STEP ); + togglePeriodCount[ pumpId ] = (U16)( stepPeriodCounts + 0.5 ); } /*********************************************************************//** @@ -318,8 +318,8 @@ stepConcentratePumpToTargetSpeed( CONCENTRATEPUMPS_CP1 ); stepConcentratePumpToTargetSpeed( CONCENTRATEPUMPS_CP2 ); - setFPGACP1SetStepSpeed( convertedStepSpeedPeriod[ CONCENTRATEPUMPS_CP1 ] ); - setFPGACP2SetStepSpeed( convertedStepSpeedPeriod[ CONCENTRATEPUMPS_CP2 ] ); + setFPGACP1SetStepSpeed( togglePeriodCount[ CONCENTRATEPUMPS_CP1 ] ); + setFPGACP2SetStepSpeed( togglePeriodCount[ CONCENTRATEPUMPS_CP2 ] ); } if ( isPumpOffRequested ) @@ -335,38 +335,6 @@ /*********************************************************************//** * @brief - * The getConcentratePumpTargetSpeed function gets the concentrate pump - * target speed for a given pump id. - * @details Inputs: pumpTargetSpeed - * @details Outputs: none - * @param pumpId concentrate pump id to increase current step speed - * @return the current concentrate pump target speed. - *************************************************************************/ -//static F32 getConcentratePumpTargetSpeed( CONCENTRATE_PUMPS_T pumpId ) -//{ -// F32 result = 0.0; -// -// if ( pumpId < NUM_OF_CONCENTRATE_PUMPS ) -// { -// if ( OVERRIDE_KEY == pumpTargetSpeed[ pumpId ].override ) -// { -// result = pumpTargetSpeed[ pumpId ].ovData; -// } -// else -// { -// result = pumpTargetSpeed[ pumpId ].data; -// } -// } -// else -// { -// activateAlarmNoData( ALARM_ID_DG_SOFTWARE_FAULT ); -// } -// -// return result; -//} - -/*********************************************************************//** - * @brief * The getPublishConcentratePumpDataInterval function gets the concentrate pump * data publication interval. * @details Inputs: concentratePumpDataPublishInterval Index: firmware/App/Controllers/ConductivitySensors.c =================================================================== diff -u -r62ee40b55ed96eb0de1c0f05455eb986f76c1842 -r273f797e1b0f70a9d5720d1ffff29d26ff5144af --- firmware/App/Controllers/ConductivitySensors.c (.../ConductivitySensors.c) (revision 62ee40b55ed96eb0de1c0f05455eb986f76c1842) +++ firmware/App/Controllers/ConductivitySensors.c (.../ConductivitySensors.c) (revision 273f797e1b0f70a9d5720d1ffff29d26ff5144af) @@ -440,6 +440,7 @@ if ( ( fpgaReadCount > 0 ) && ( ( fpgaReadCount & EMSTAT_PICO_FIFO_EMPTY_MASK ) == 0 ) ) { U08 const emstatByte = getFPGAEmstatOutByte(); + switch ( emstatByte ) { case 'P':