Index: firmware/App/Drivers/PressureSensor.c =================================================================== diff -u -r51d83f99e63d9cb52951097996641cc5b3ddffd7 -re491c38c7c2e7850b5a7ff906c04d81eabf0efb8 --- firmware/App/Drivers/PressureSensor.c (.../PressureSensor.c) (revision 51d83f99e63d9cb52951097996641cc5b3ddffd7) +++ firmware/App/Drivers/PressureSensor.c (.../PressureSensor.c) (revision e491c38c7c2e7850b5a7ff906c04d81eabf0efb8) @@ -108,26 +108,30 @@ currentPressureReadings[ PRESSURE_SENSOR_WATER_INLET_PRE_COND ].data = convertPressureReading( getFPGAPC2oRawPressure(), PRES_MIN_PSI, PRES_MAX_PSI ); currentPressureReadings[ PRESSURE_SENSOR_PRE_RO_FILTER ].data = convertPressureReading( getFPGAPPoRawPressure(), PRES_MIN_PSI, PRES_MAX_PSI ); currentPressureReadings[ PRESSURE_SENSOR_POST_RO_FILTER ].data = convertPressureReading( getFPGAPMpRawPressure(), PRES_MIN_PSI, PRES_MAX_PSI ); + currentPressureReadings[ PRESSURE_SENSOR_PRE_RO_PUMP ].data = convertPressureReading( getFPGAPPiRawPressure(), PRES_MIN_PSI, PRES_MAX_PSI ); // Update and convert raw pressure sensor temperatures to deg C currentPresTempReadings[ PRESSURE_SENSOR_WATER_INLET_PRE_REG ].data = convertPressureTempReading2DegC( getFPGAPRiRawTemperature() ); currentPresTempReadings[ PRESSURE_SENSOR_WATER_INLET_POST_REG ].data = convertPressureTempReading2DegC( getFPGAPRoRawTemperature() ); currentPresTempReadings[ PRESSURE_SENSOR_WATER_INLET_PRE_COND ].data = convertPressureTempReading2DegC( getFPGAPC2oRawTemperature() ); currentPresTempReadings[ PRESSURE_SENSOR_PRE_RO_FILTER ].data = convertPressureTempReading2DegC( getFPGAPPoRawTemperature() ); currentPresTempReadings[ PRESSURE_SENSOR_POST_RO_FILTER ].data = convertPressureTempReading2DegC( getFPGAPMpRawTemperature() ); + currentPresTempReadings[ PRESSURE_SENSOR_PRE_RO_PUMP ].data = convertPressureTempReading2DegC( getFPGAPPiRawTemperature() ); // Update read and error counters for each pressure sensor lastPressureReadCounter[ PRESSURE_SENSOR_WATER_INLET_PRE_REG ].data = (U32)getFPGAPRiReadCount(); lastPressureReadCounter[ PRESSURE_SENSOR_WATER_INLET_POST_REG ].data = (U32)getFPGAPRoReadCount(); lastPressureReadCounter[ PRESSURE_SENSOR_WATER_INLET_PRE_COND ].data = (U32)getFPGAPC2oReadCount(); lastPressureReadCounter[ PRESSURE_SENSOR_PRE_RO_FILTER ].data = (U32)getFPGAPPoReadCount(); lastPressureReadCounter[ PRESSURE_SENSOR_POST_RO_FILTER ].data = (U32)getFPGAPMpReadCount(); + lastPressureReadCounter[ PRESSURE_SENSOR_PRE_RO_PUMP ].data = (U32)getFPGAPPiReadCount(); lastPressureErrorCounter[ PRESSURE_SENSOR_WATER_INLET_PRE_REG ].data = (U32)getFPGAPRiErrorCount(); lastPressureErrorCounter[ PRESSURE_SENSOR_WATER_INLET_POST_REG ].data = (U32)getFPGAPRoErrorCount(); lastPressureErrorCounter[ PRESSURE_SENSOR_WATER_INLET_PRE_COND ].data = (U32)getFPGAPC2oErrorCount(); lastPressureErrorCounter[ PRESSURE_SENSOR_PRE_RO_FILTER ].data = (U32)getFPGAPPoErrorCount(); lastPressureErrorCounter[ PRESSURE_SENSOR_POST_RO_FILTER ].data = (U32)getFPGAPMpErrorCount(); + lastPressureErrorCounter[ PRESSURE_SENSOR_PRE_RO_PUMP ].data = (U32)getFPGAPPiErrorCount(); // // Monitor pressure sensor health // checkPressureSensors(); Index: firmware/App/Drivers/PressureSensor.h =================================================================== diff -u -rd8cd7de2f84b26aafc153e2bb665a5058a040bf0 -re491c38c7c2e7850b5a7ff906c04d81eabf0efb8 --- firmware/App/Drivers/PressureSensor.h (.../PressureSensor.h) (revision d8cd7de2f84b26aafc153e2bb665a5058a040bf0) +++ firmware/App/Drivers/PressureSensor.h (.../PressureSensor.h) (revision e491c38c7c2e7850b5a7ff906c04d81eabf0efb8) @@ -41,6 +41,7 @@ PRESSURE_SENSOR_WATER_INLET_PRE_COND, ///< Water inlet pressure before conductivity sensor (PC2o) PRESSURE_SENSOR_PRE_RO_FILTER, ///< Pressure before RO filter (PPo) PRESSURE_SENSOR_POST_RO_FILTER, ///< Pressure after RO filter (PMp) + PRESSURE_SENSOR_PRE_RO_PUMP, ///< Pressure before RO pump (PPi) NUM_OF_PRESSURE_SENSORS ///< Number of pressure sensors } PRESSURE_SENSORS_T; Index: firmware/App/Monitors/Pressure.c =================================================================== diff -u -r51d83f99e63d9cb52951097996641cc5b3ddffd7 -re491c38c7c2e7850b5a7ff906c04d81eabf0efb8 --- firmware/App/Monitors/Pressure.c (.../Pressure.c) (revision 51d83f99e63d9cb52951097996641cc5b3ddffd7) +++ firmware/App/Monitors/Pressure.c (.../Pressure.c) (revision e491c38c7c2e7850b5a7ff906c04d81eabf0efb8) @@ -485,12 +485,14 @@ data.PressurePC2o = getFilteredPressure( PRESSURE_SENSOR_WATER_INLET_PRE_COND ); data.PressurePPo = getFilteredPressure( PRESSURE_SENSOR_PRE_RO_FILTER ); data.PressurePMp = getFilteredPressure( PRESSURE_SENSOR_POST_RO_FILTER ); + data.PressurePPi = getFilteredPressure( PRESSURE_SENSOR_PRE_RO_PUMP ); data.TempPRi = getFilteredPressureSensorTemperature( PRESSURE_SENSOR_WATER_INLET_PRE_REG ); data.TempPRo = getFilteredPressureSensorTemperature( PRESSURE_SENSOR_WATER_INLET_POST_REG ); data.TempPC2o = getFilteredPressureSensorTemperature( PRESSURE_SENSOR_WATER_INLET_PRE_COND ); data.TempPPo = getFilteredPressureSensorTemperature( PRESSURE_SENSOR_PRE_RO_FILTER ); data.TempPMp = getFilteredPressureSensorTemperature( PRESSURE_SENSOR_POST_RO_FILTER ); + data.TempPPi = getFilteredPressureSensorTemperature( PRESSURE_SENSOR_PRE_RO_PUMP ); broadcastData( MSG_ID_RO_PRESSURES_DATA, COMM_BUFFER_OUT_CAN_RO_BROADCAST, (U08*)&data, sizeof( PRESSURE_TEMP_DATA_T ) ); pressuresDataPublicationTimerCounter = 0; Index: firmware/App/Monitors/Pressure.h =================================================================== diff -u -ra3988128df0950e1f03dcb4a5aa53336d8fb3a6f -re491c38c7c2e7850b5a7ff906c04d81eabf0efb8 --- firmware/App/Monitors/Pressure.h (.../Pressure.h) (revision a3988128df0950e1f03dcb4a5aa53336d8fb3a6f) +++ firmware/App/Monitors/Pressure.h (.../Pressure.h) (revision e491c38c7c2e7850b5a7ff906c04d81eabf0efb8) @@ -40,11 +40,13 @@ F32 PressurePC2o; ///< Pressure before inlet conductivity sensor (P8 PC2o) F32 PressurePPo; ///< Pressure before RO filter (P13 PPo) F32 PressurePMp; ///< Pressure after RO filter (P17 PMp) + F32 PressurePPi; ///< Pressure before RO pump (X1 PPi) F32 TempPRi; ///< Temperature before pressure regulator (M1 PRi) F32 TempPRo; ///< Temperature after pressure regulator (M3 PRo) F32 TempPC2o; ///< Temperature before inlet conductivity sensor (P8 PC2o) F32 TempPPo; ///< Temperature before RO filter (P13 PPo) F32 TempPMp; ///< Temperature after RO filter (P17 PMp) + F32 TempPPi; ///< Temperature before RO pump (X1 PPi) } PRESSURE_TEMP_DATA_T; // ********** public function prototypes ********** Index: firmware/App/Services/FpgaRO.c =================================================================== diff -u -r51d83f99e63d9cb52951097996641cc5b3ddffd7 -re491c38c7c2e7850b5a7ff906c04d81eabf0efb8 --- firmware/App/Services/FpgaRO.c (.../FpgaRO.c) (revision 51d83f99e63d9cb52951097996641cc5b3ddffd7) +++ firmware/App/Services/FpgaRO.c (.../FpgaRO.c) (revision e491c38c7c2e7850b5a7ff906c04d81eabf0efb8) @@ -675,6 +675,54 @@ /*********************************************************************//** * @brief + * The getFPGAPPiRawPressure function gets the PPi pressure reading. + * @details \b Inputs: fpgaSensorReadings.pressurePpi + * @details \b Outputs: none + * @return PPi pressure + *************************************************************************/ +S16 getFPGAPPiRawPressure( void ) +{ + return fpgaSensorReadings.pressurePpi; +} + +/*********************************************************************//** + * @brief + * The getFPGAPPiRawTemperature function gets the PPi sensor temperature. + * @details \b Inputs: fpgaSensorReadings.temperaturePpi + * @details \b Outputs: none + * @return PPi sensor temperature + *************************************************************************/ +S16 getFPGAPPiRawTemperature( void ) +{ + return fpgaSensorReadings.temperaturePpi; +} + +/*********************************************************************//** + * @brief + * The getFPGAPPiReadCount function gets the PPi sensor read count. + * @details \b Inputs: fpgaSensorReadings.readCountPpi + * @details \b Outputs: none + * @return PPi sensor read count + *************************************************************************/ +U08 getFPGAPPiReadCount( void ) +{ + return fpgaSensorReadings.readCountPpi; +} + +/*********************************************************************//** + * @brief + * The getFPGAPPiErrorCount function gets the PPi sensor error count. + * @details \b Inputs: fpgaSensorReadings.errorCountPpi + * @details \b Outputs: none + * @return PPi sensor error count + *************************************************************************/ +U08 getFPGAPPiErrorCount( void ) +{ + return fpgaSensorReadings.errorCountPpi; +} + +/*********************************************************************//** + * @brief * The getFPGAFloaterState function gets the floater level state. * @details \b Inputs: fpgaSensorReadings.levelSwitch * @details \b Outputs: none Index: firmware/App/Services/FpgaRO.h =================================================================== diff -u -r51d83f99e63d9cb52951097996641cc5b3ddffd7 -re491c38c7c2e7850b5a7ff906c04d81eabf0efb8 --- firmware/App/Services/FpgaRO.h (.../FpgaRO.h) (revision 51d83f99e63d9cb52951097996641cc5b3ddffd7) +++ firmware/App/Services/FpgaRO.h (.../FpgaRO.h) (revision e491c38c7c2e7850b5a7ff906c04d81eabf0efb8) @@ -74,6 +74,11 @@ U08 getFPGAPMpReadCount( void ); U08 getFPGAPMpErrorCount( void ); +S16 getFPGAPPiRawPressure( void ); +S16 getFPGAPPiRawTemperature( void ); +U08 getFPGAPPiReadCount( void ); +U08 getFPGAPPiErrorCount( void ); + U08 getFPGAFloaterState( void ); U16 getFPGAFlowFMP( void );