Index: leahi_dialin/td/modules/blood_flow.py =================================================================== diff -u -r28afd6d0165b38fdae703afcbaebf108287afbff -r000435fa368dd45c129d30c5f1083c21cfe0e31c --- leahi_dialin/td/modules/blood_flow.py (.../blood_flow.py) (revision 28afd6d0165b38fdae703afcbaebf108287afbff) +++ leahi_dialin/td/modules/blood_flow.py (.../blood_flow.py) (revision 000435fa368dd45c129d30c5f1083c21cfe0e31c) @@ -382,3 +382,96 @@ else: self.logger.debug("Timeout!!!!") return False + + def cmd_blood_flow_alpha_y_intercept_override(self, intercept: float, reset: int = NO_RESET) -> int: + """ + Constructs and sends the blood flow alpha y intercept override. + Constraints: + Must be logged into TD. + + @param intercept: float - target value to override alpha y intercept with + @param reset: integer - 1 to reset a previous override, 0 to override + @return: 1 if successful, zero otherwise + + """ + + reset_byte_array = integer_to_bytearray(reset) + intercept_byte_array = float_to_bytearray(intercept) + payload = reset_byte_array + intercept_byte_array + + message = DenaliMessage.build_message(channel_id=DenaliChannels.dialin_to_dd_ch_id, + message_id=MsgIds.MSG_ID_TD_BLOOD_FLOW_ALPHA_Y_INTERCEPT_OVERRIDE_REQUEST.value, + payload=payload) + + # 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 received_message['message'][DenaliMessage.PAYLOAD_START_INDEX] + else: + self.logger.error("Timeout!!!!") + return False + + def cmd_blood_flow_wear_a_term_override(self, a_term: float, reset: int = NO_RESET) -> int: + """ + Constructs and sends the blood flow wear a term override + Constraints: + Must be logged into TD. + + @param a_term: float - target value to override wear a term intercept with + @param reset: integer - 1 to reset a previous override, 0 to override + @return: 1 if successful, zero otherwise + + """ + + reset_byte_array = integer_to_bytearray(reset) + term_byte_array = float_to_bytearray(a_term) + payload = reset_byte_array + term_byte_array + + message = DenaliMessage.build_message(channel_id=DenaliChannels.dialin_to_dd_ch_id, + message_id=MsgIds.MSG_ID_TD_BLOOD_FLOW_WEAR_A_TERM_OVERRIDE_REQUEST.value, + payload=payload) + + # 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 received_message['message'][DenaliMessage.PAYLOAD_START_INDEX] + else: + self.logger.error("Timeout!!!!") + return False + + def cmd_blood_flow_wear_b_term_override(self, b_term: float, reset: int = NO_RESET) -> int: + """ + Constructs and sends the blood flow wear b term override + Constraints: + Must be logged into TD. + + @param a_term: float - target value to override wear b term intercept with + @param reset: integer - 1 to reset a previous override, 0 to override + @return: 1 if successful, zero otherwise + + """ + + reset_byte_array = integer_to_bytearray(reset) + term_byte_array = float_to_bytearray(b_term) + payload = reset_byte_array + term_byte_array + + message = DenaliMessage.build_message(channel_id=DenaliChannels.dialin_to_dd_ch_id, + message_id=MsgIds.MSG_ID_TD_BLOOD_FLOW_WEAR_B_TERM_OVERRIDE_REQUEST.value, + payload=payload) + + # 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 received_message['message'][DenaliMessage.PAYLOAD_START_INDEX] + else: + self.logger.error("Timeout!!!!") + return False \ No newline at end of file