Index: leahi_dialin/common/msg_ids.py =================================================================== diff -u -r648db1c6ddd297bb1dcb04a4fec37dc4dee7656c -r9357937d8acaa33c4a5a18799349fbf4aa432ac1 --- leahi_dialin/common/msg_ids.py (.../msg_ids.py) (revision 648db1c6ddd297bb1dcb04a4fec37dc4dee7656c) +++ leahi_dialin/common/msg_ids.py (.../msg_ids.py) (revision 9357937d8acaa33c4a5a18799349fbf4aa432ac1) @@ -184,6 +184,7 @@ MSG_ID_TD_RESET_ALL_TEST_CONFIGURATIONS = 0x803C MSG_ID_TD_AIR_PUMP_POWER_RAISE_OVERRIDE_REQUEST = 0x803D MSG_ID_TD_AIR_PUMP_POWER_LOWER_OVERRIDE_REQUEST = 0x803E + MSG_ID_TD_TRAINING_TEST_OVERRIDE_REQUEST = 0x8999 MSG_ID_DD_TESTER_LOGIN_REQUEST = 0xA000 MSG_ID_DD_SOFTWARE_RESET_REQUEST = 0xA001 Index: leahi_dialin/td/treatment_delivery.py =================================================================== diff -u -r1d7d95e8ec37a124e2ccfeb4b462aa023dfffba7 -r9357937d8acaa33c4a5a18799349fbf4aa432ac1 --- leahi_dialin/td/treatment_delivery.py (.../treatment_delivery.py) (revision 1d7d95e8ec37a124e2ccfeb4b462aa023dfffba7) +++ leahi_dialin/td/treatment_delivery.py (.../treatment_delivery.py) (revision 9357937d8acaa33c4a5a18799349fbf4aa432ac1) @@ -238,15 +238,15 @@ @return: None if not successful, the version string if unpacked successfully """ major = struct.unpack(' int: + """ + Constructs and sends a training test override request to the TD. + + @param value: integer - test value to override with + @param reset: integer - 1 to reset a previous override, 0 to override + @return: 1 if successful, zero otherwise + """ + + rst = integer_to_bytearray(reset) + val = integer_to_bytearray(value) + payload = rst + val + + message = DenaliMessage.build_message(channel_id=DenaliChannels.dialin_to_td_ch_id, + message_id=MsgIds.MSG_ID_TD_TRAINING_TEST_OVERRIDE_REQUEST.value, + payload=payload) + + self.logger.debug("Sending a training test override request to the TD.") + received_message = self.can_interface.send(message) + + # If there is content... + if received_message is not None: + # self.logger.debug(received_message) + if reset == RESET: + str_res = "reset back to normal: " + else: + str_res = str(val) + " value: " + self.logger.debug("Training test value overridden to " + str_res + + str(received_message['message'][DenaliMessage.PAYLOAD_START_INDEX])) + # response payload is OK or not OK + return received_message['message'][DenaliMessage.PAYLOAD_START_INDEX] + else: + self.logger.debug("Timeout!!!!") + return False + def cmd_op_mode_broadcast_interval_override(self, ms: int, reset: int = NO_RESET) -> int: """ Constructs and sends the measured op mode broadcast interval override command