Index: leahi_dialin/common/msg_ids.py =================================================================== diff -u -r68422d08c4141999a13496343264483a32314d37 -rc3cb761794ec2dd44f4289b2d2441ff6bc037f6a --- leahi_dialin/common/msg_ids.py (.../msg_ids.py) (revision 68422d08c4141999a13496343264483a32314d37) +++ leahi_dialin/common/msg_ids.py (.../msg_ids.py) (revision c3cb761794ec2dd44f4289b2d2441ff6bc037f6a) @@ -281,6 +281,8 @@ MSG_ID_FP_BOOST_PUMP_TARGET_PRESSURE_OVERRIDE_REQUEST = 0xB024 MSG_ID_FP_BOOST_PUMP_TARGET_FLOW_OVERRIDE_REQUEST = 0xB025 MSG_ID_FP_BOOST_PUMP_TARGET_PWM_OVERRIDE_REQUEST = 0xB026 + MSG_ID_FP_BOOST_PUMP_STOP_REQUEST = 0xB027 + MSG_ID_FP_RO_PUMP_STOP_REQUEST = 0xB028 MSG_ID_TD_DEBUG_EVENT = 0xFFF1 MSG_ID_DD_DEBUG_EVENT = 0xFFF2 Index: leahi_dialin/fp/modules/boost_pump.py =================================================================== diff -u -r68422d08c4141999a13496343264483a32314d37 -rc3cb761794ec2dd44f4289b2d2441ff6bc037f6a --- leahi_dialin/fp/modules/boost_pump.py (.../boost_pump.py) (revision 68422d08c4141999a13496343264483a32314d37) +++ leahi_dialin/fp/modules/boost_pump.py (.../boost_pump.py) (revision c3cb761794ec2dd44f4289b2d2441ff6bc037f6a) @@ -240,3 +240,31 @@ self.logger.debug("Timeout!!!!") return False + + def cmd_boost_pump_set_hard_stop(self) -> int: + """ + Constructs and sends the hard stop for the boost pump. This will stop + the boost pump. + Constraints: + Must be logged into FP. + + @return: 1 if successful, zero otherwise + """ + + message = DenaliMessage.build_message(channel_id=DenaliChannels.dialin_to_fp_ch_id, + message_id=MsgIds.MSG_ID_FP_BOOST_PUMP_STOP_REQUEST.value) + + self.logger.debug("hard stopping boost pump") + + # Send message + received_message = self.can_interface.send(message) + + # If there is content... + if received_message is not None: + self.logger.debug(" boost pump stopped ") + # response payload is OK or not OK + return received_message['message'][DenaliMessage.PAYLOAD_START_INDEX] + else: + self.logger.debug("Timeout!!!!") + return False + Index: leahi_dialin/fp/modules/ro_pump.py =================================================================== diff -u -r68422d08c4141999a13496343264483a32314d37 -rc3cb761794ec2dd44f4289b2d2441ff6bc037f6a --- leahi_dialin/fp/modules/ro_pump.py (.../ro_pump.py) (revision 68422d08c4141999a13496343264483a32314d37) +++ leahi_dialin/fp/modules/ro_pump.py (.../ro_pump.py) (revision c3cb761794ec2dd44f4289b2d2441ff6bc037f6a) @@ -240,3 +240,30 @@ self.logger.debug("Timeout!!!!") return False + def cmd_boost_pump_set_hard_stop(self) -> int: + """ + Constructs and sends the hard stop for the RO pump. This will stop + the RO pump. + Constraints: + Must be logged into FP. + + @return: 1 if successful, zero otherwise + """ + + message = DenaliMessage.build_message(channel_id=DenaliChannels.dialin_to_fp_ch_id, + message_id=MsgIds.MSG_ID_FP_RO_PUMP_STOP_REQUEST.value) + + self.logger.debug("hard stopping RO pump") + + # Send message + received_message = self.can_interface.send(message) + + # If there is content... + if received_message is not None: + self.logger.debug(" RO pump stopped ") + # response payload is OK or not OK + return received_message['message'][DenaliMessage.PAYLOAD_START_INDEX] + else: + self.logger.debug("Timeout!!!!") + return False +