Index: leahi_dialin/common/msg_ids.py =================================================================== diff -u -re5c5e1a8c10903e8caa793694b8f309125b2f6d8 -r1205ec50906c08cfbe681192d181c6f61c239f2c --- leahi_dialin/common/msg_ids.py (.../msg_ids.py) (revision e5c5e1a8c10903e8caa793694b8f309125b2f6d8) +++ leahi_dialin/common/msg_ids.py (.../msg_ids.py) (revision 1205ec50906c08cfbe681192d181c6f61c239f2c) @@ -157,6 +157,7 @@ MSG_ID_TD_EJECTOR_COMMAND = 0x8033 MSG_ID_TD_EJECTOR_PUBLISH_INTERVAL_OVERRIDE_REQUEST = 0x8034 MSG_ID_TD_SET_AIR_TRAP_CONTROL = 0x8035 + MSG_ID_TD_HOME_BLOOD_PUMP_REQUEST = 0x8036 MSG_ID_DD_TESTER_LOGIN_REQUEST = 0xA000 MSG_ID_DD_SOFTWARE_RESET_REQUEST = 0xA001 Index: leahi_dialin/td/modules/blood_flow.py =================================================================== diff -u -rf4759a283992acdf2e66198ce4ab0747a5aa34a1 -r1205ec50906c08cfbe681192d181c6f61c239f2c --- leahi_dialin/td/modules/blood_flow.py (.../blood_flow.py) (revision f4759a283992acdf2e66198ce4ab0747a5aa34a1) +++ leahi_dialin/td/modules/blood_flow.py (.../blood_flow.py) (revision 1205ec50906c08cfbe681192d181c6f61c239f2c) @@ -357,3 +357,28 @@ else: self.logger.debug("Timeout!!!!") return False + + def cmd_home_blood_pump(self) -> int: + """ + Constructs and sends home blood pump command. + Constraints: + Must be logged into TD. + + @return: 1 if successful, zero otherwise + """ + + message = DenaliMessage.build_message(channel_id=DenaliChannels.dialin_to_td_ch_id, + message_id=MsgIds.MSG_ID_TD_BLOOD_PUMP_ROTOR_COUNT_OVERRIDE_REQUEST.value) + + self.logger.debug("homing blood pump") + + # Send message + received_message = self.can_interface.send(message) + + # If there is content... + if received_message is not None: + # response payload is OK or not OK + return True + else: + self.logger.debug("Timeout!!!!") + return False