Index: firmware/App/Drivers/FluidPump.c =================================================================== diff -u -r17a448770daa138ebeb6ce79974966e650828f25 -rd5574e12aa9638c933d11b9bee8d5cf024864440 --- firmware/App/Drivers/FluidPump.c (.../FluidPump.c) (revision 17a448770daa138ebeb6ce79974966e650828f25) +++ firmware/App/Drivers/FluidPump.c (.../FluidPump.c) (revision d5574e12aa9638c933d11b9bee8d5cf024864440) @@ -90,21 +90,30 @@ { U32 tach; - // get latest RO pump duty cycle read back from FPGA - fluidPumpReadDutyCycle[ P12_PUMP ].data = getFPGAP12PumpPWM(); - - // get latest RO pump tachometer count from FPGA and convert to RPM - tach = (U32)getFPGAP12PumpTachCount(); - if ( ( tach != 0 ) && ( tach < FLUID_PUMP_COUNTS_FOR_STOPPED_PUMP ) ) + for ( pump = 0; pump < NUM_OF_PUMPS; pump++ ) { - fluidPumpMeasRPM[ P12_PUMP ].data = FLUID_PUMP_COUNTS_2_RPM_NUMERATOR / (F32)tach; - } - else - { - fluidPumpMeasRPM[ P12_PUMP ].data = 0.0F; - } + // get latest fluid pump duty cycle read back from FPGA + // and get latest fluid pump tachometer count from FPGA and convert to RPM + if ( P12_PUMP == pump ) + { + fluidPumpReadDutyCycle[ pump ].data = getFPGAP12PumpPWM(); + tach = (U32)getFPGAP12PumpTachCount(); + } + else + { + fluidPumpReadDutyCycle[ pump ].data = getFPGAP40PumpPWM(); + tach = (U32)getFPGAP40PumpTachCount(); + } - // TODO - get latest for fluider pump PWM and tach + if ( ( tach != 0 ) && ( tach < FLUID_PUMP_COUNTS_FOR_STOPPED_PUMP ) ) + { + fluidPumpMeasRPM[ pump ].data = FLUID_PUMP_COUNTS_2_RPM_NUMERATOR / (F32)tach; + } + else + { + fluidPumpMeasRPM[ pump ].data = 0.0F; + } + } } /*********************************************************************//** @@ -122,6 +131,7 @@ { BOOL result = FALSE; U16 pwmCnt = 0; + if ( pumpID < NUM_OF_PUMPS ) { pwmCnt = convertDutyCyclePctToCnt( dutyCyclePct );