Index: dialin/dg/ro_pump.py =================================================================== diff -u -r3a70bfb451b74106348c064c34f19934aadd9119 -r3cae4fa51a114fb5ed5f430234a01c2374f3865b --- dialin/dg/ro_pump.py (.../ro_pump.py) (revision 3a70bfb451b74106348c064c34f19934aadd9119) +++ dialin/dg/ro_pump.py (.../ro_pump.py) (revision 3cae4fa51a114fb5ed5f430234a01c2374f3865b) @@ -62,6 +62,7 @@ self.ro_pump_state = 0 self.target_flow_lpm = 0.0 self.feedback_duty_cycle_pct = 0.0 + self.measured_raw_flow_rate_mlp = 0.0 def get_target_pressure(self): """ @@ -95,8 +96,16 @@ """ return self.ro_pump_state + def get_ro_pump_measured_raw_flow_rate_mlp(self): + """ + Gets the RO pump measured raw flow rate + + @return: The RO pump measured raw flow rate in mL/min + """ + return self.measured_raw_flow_rate_mlp + @publish(["target_pressure_psi", "measured_flow_rate_lpm", "pwm_duty_cycle_pct", "ro_pump_state", - "feedback_duty_cycle_pct"]) + "feedback_duty_cycle_pct", "raw_measured_flow_rate_lpm"]) def _handler_ro_pump_sync(self, message): """ Handles published ro pump data messages. RO pump data are captured @@ -118,6 +127,8 @@ message['message'][MsgFieldPositions.START_POS_FIELD_5:MsgFieldPositions.END_POS_FIELD_5]))[0] self.feedback_duty_cycle_pct = struct.unpack('f', bytearray( message['message'][MsgFieldPositions.START_POS_FIELD_6:MsgFieldPositions.END_POS_FIELD_6]))[0] + self.measured_raw_flow_rate_mlp = struct.unpack('f', bytearray( + message['message'][MsgFieldPositions.START_POS_FIELD_7:MsgFieldPositions.END_POS_FIELD_7]))[0] self.ro_pump_state = ROPumpStates(ro_state).name