Index: leahi_dialin/dd/dialysate_delivery.py =================================================================== diff -u -rc6d2dfdb988298f0264fcb163d8232929bdbe515 -refb1d2a271b1b06b7fd133beaa5ab4728e58f610 --- leahi_dialin/dd/dialysate_delivery.py (.../dialysate_delivery.py) (revision c6d2dfdb988298f0264fcb163d8232929bdbe515) +++ leahi_dialin/dd/dialysate_delivery.py (.../dialysate_delivery.py) (revision efb1d2a271b1b06b7fd133beaa5ab4728e58f610) @@ -227,34 +227,6 @@ self.dd_fpga_version = f"v{result['fpga_id']}.{result['fpga_major']}.{result['fpga_minor']}-{result['fpga_lab']}" self.logger.debug(f'DD FPGA VERSION: {self.dd_fpga_version}') - """ - major = struct.unpack(DataTypes.U08.unpack_attrib(), bytearray( - message['message'][MsgFieldPositionsFWVersions.START_POS_MAJOR:MsgFieldPositionsFWVersions.END_POS_MAJOR])) - minor = struct.unpack(DataTypes.U08.unpack_attrib(), bytearray( - message['message'][MsgFieldPositionsFWVersions.START_POS_MINOR:MsgFieldPositionsFWVersions.END_POS_MINOR])) - micro = struct.unpack(DataTypes.U08.unpack_attrib(), bytearray( - message['message'][MsgFieldPositionsFWVersions.START_POS_MICRO:MsgFieldPositionsFWVersions.END_POS_MICRO])) - build = struct.unpack(DataTypes.U16.unpack_attrib(), bytearray( - message['message'][MsgFieldPositionsFWVersions.START_POS_BUILD:MsgFieldPositionsFWVersions.END_POS_BUILD])) - fpga_id = struct.unpack(DataTypes.U08.unpack_attrib(), bytearray( - message['message'][MsgFieldPositionsFWVersions.START_POS_FPGA_ID:MsgFieldPositionsFWVersions.END_POS_FPGA_ID])) - fpga_major = struct.unpack(DataTypes.U08.unpack_attrib(), bytearray( - message['message'][MsgFieldPositionsFWVersions.START_POS_FPGA_MAJOR:MsgFieldPositionsFWVersions.END_POS_FPGA_MAJOR])) - fpga_minor = struct.unpack(DataTypes.U08.unpack_attrib(), bytearray( - message['message'][MsgFieldPositionsFWVersions.START_POS_FPGA_MINOR:MsgFieldPositionsFWVersions.END_POS_FPGA_MINOR])) - fpga_lab = struct.unpack(DataTypes.U08.unpack_attrib(), bytearray( - message['message'][MsgFieldPositionsFWVersions.START_POS_FPGA_MICRO:MsgFieldPositionsFWVersions.END_POS_FPGA_MICRO])) - compatibility = struct.unpack(DataTypes.U32.unpack_attrib(), bytearray( - message['message'][MsgFieldPositionsFWVersions.START_POS_COMPATIBILITY_REV:MsgFieldPositionsFWVersions.END_POS_COMPATIBILITY_REV])) - - if all([len(each) > 0 for each in [major, minor, micro, build, compatibility]]): - self.dd_version = f"v{major[0]}.{minor[0]}.{micro[0]}-{build[0]}.{compatibility[0]}" - self.logger.debug(f"DD VERSION: {self.dd_version}") - - if all([len(each) > 0 for each in [fpga_id, fpga_major, fpga_minor, fpga_lab]]): - self.dd_fpga_version = f"v{fpga_id[0]}.{fpga_major[0]}.{fpga_minor[0]}-{fpga_lab[0]}" - self.logger.debug(f"DD FPGA VERSION: {self.dd_fpga_version}") - """ self.dd_version_response_timestamp = timestamp Index: leahi_dialin/dd/modules/substitution_pump.py =================================================================== diff -u -r7867a1799d96a5803a80c1914b30e34d6a9ee8b7 -refb1d2a271b1b06b7fd133beaa5ab4728e58f610 --- leahi_dialin/dd/modules/substitution_pump.py (.../substitution_pump.py) (revision 7867a1799d96a5803a80c1914b30e34d6a9ee8b7) +++ leahi_dialin/dd/modules/substitution_pump.py (.../substitution_pump.py) (revision efb1d2a271b1b06b7fd133beaa5ab4728e58f610) @@ -39,7 +39,7 @@ def __init__(self, can_interface: CanMessenger, logger: Logger): """ - @param can_interface: Denali Can Messenger object + @param can_interface: Can Messenger object """ super().__init__() Index: leahi_dialin/td/modules/dry_self_test.py =================================================================== diff -u -r791907258a7a4c789451e62745ae6d96f3f0fd24 -refb1d2a271b1b06b7fd133beaa5ab4728e58f610 --- leahi_dialin/td/modules/dry_self_test.py (.../dry_self_test.py) (revision 791907258a7a4c789451e62745ae6d96f3f0fd24) +++ leahi_dialin/td/modules/dry_self_test.py (.../dry_self_test.py) (revision efb1d2a271b1b06b7fd133beaa5ab4728e58f610) @@ -14,13 +14,16 @@ # ############################################################################ -import struct +# Module imports from logging import Logger -from leahi_dialin.common.msg_defs import MsgIds, MsgFieldPositions +# Project imports +from leahi_dialin.common.generic_defs import DataTypes +from leahi_dialin.common.msg_defs import MsgIds from leahi_dialin.common.override_templates import cmd_generic_override -from leahi_dialin.protocols.CAN import DenaliCanMessenger, DenaliChannels -from leahi_dialin.utils.base import AbstractSubSystem, publish +from leahi_dialin.protocols.CAN import CanMessenger, CanChannels +from leahi_dialin.utils.abstract_classes import AbstractSubSystem +from leahi_dialin.utils.base import publish from leahi_dialin.utils.conversions import integer_to_bytearray @@ -29,21 +32,21 @@ Treatment Delivery (TD) Dialin API sub-class for dry self test related commands. """ - def __init__(self, can_interface: DenaliCanMessenger, logger: Logger): + def __init__(self, can_interface: CanMessenger, logger: Logger): """ Dry Self Test constructor - @param can_interface: the Denali CAN interface object + @param can_interface: the CAN interface object """ super().__init__() self.can_interface = can_interface self.logger = logger if self.can_interface is not None: - self.can_interface.register_receiving_publication_function(channel_id = DenaliChannels.td_sync_broadcast_ch_id, + self.can_interface.register_receiving_publication_function(channel_id = CanChannels.td_sync_broadcast_ch_id, message_id = MsgIds.MSG_ID_TD_DRY_SELF_TEST_PROGRESS_DATA.value, function = self._handler_progress_data_sync) - self.can_interface.register_receiving_publication_function(channel_id = DenaliChannels.td_to_ui_ch_id, + self.can_interface.register_receiving_publication_function(channel_id = CanChannels.td_to_ui_ch_id, message_id = MsgIds.MSG_ID_TD_TUBE_SET_AUTHENTICATION_REQUEST.value, function = self._handler_tubing_set_barcode_authentication_request) @@ -64,19 +67,13 @@ @return: None """ msg_list = [] - msg_list.append(['self.substate', 'i']) - msg_list.append(['self.timeout', 'i']) - msg_list.append(['self.countdown', 'i']) - - i = 1 - for sensor in msg_list: - start_pos = eval(f'MsgFieldPositions.START_POS_FIELD_{i}') - end_pos = eval(f'MsgFieldPositions.END_POS_FIELD_{i}') - value = struct.unpack(sensor[1],bytearray(message['message'][start_pos:end_pos]))[0] - if 'nan' in str(value).lower(): - value = 0.0 - exec(f'{sensor[0]} = {value}') - i += 1 + msg_list.append(('self.substate', DataTypes.U32)) + msg_list.append(('self.timeout', DataTypes.U32)) + msg_list.append(('self.countdown', DataTypes.U32)) + + self.process_into_vars(decoder_list = msg_list, + message = message) + self.td_dry_self_test_timestamp = timestamp @@ -109,7 +106,7 @@ return cmd_generic_override( payload = payload, reset = None, - channel_id = DenaliChannels.ui_to_td_ch_id, + channel_id = CanChannels.ui_to_td_ch_id, msg_id = MsgIds.MSG_ID_UI_TUBE_SET_AUTHENTICATION_ACK_RESPONSE, entity_name = f'UI Barcode Authentication Ack response', override_text = f'Valid: {valid_tubing_set}, Accepted: {modality_match}', Index: leahi_dialin/td/modules/syringe_pump.py =================================================================== diff -u -r6c90336ac2cd8cf34ac620cff431a847d9ddf557 -refb1d2a271b1b06b7fd133beaa5ab4728e58f610 --- leahi_dialin/td/modules/syringe_pump.py (.../syringe_pump.py) (revision 6c90336ac2cd8cf34ac620cff431a847d9ddf557) +++ leahi_dialin/td/modules/syringe_pump.py (.../syringe_pump.py) (revision efb1d2a271b1b06b7fd133beaa5ab4728e58f610) @@ -36,7 +36,7 @@ def __init__(self, can_interface: CanMessenger, logger: Logger): """ - @param can_interface: Denali Can Messenger object + @param can_interface: Can Messenger object """ super().__init__() self.can_interface = can_interface Index: leahi_dialin/td/proxies/ui_proxy.py =================================================================== diff -u -r155002a8a797c462b346dccf1abd47428230e16b -refb1d2a271b1b06b7fd133beaa5ab4728e58f610 --- leahi_dialin/td/proxies/ui_proxy.py (.../ui_proxy.py) (revision 155002a8a797c462b346dccf1abd47428230e16b) +++ leahi_dialin/td/proxies/ui_proxy.py (.../ui_proxy.py) (revision efb1d2a271b1b06b7fd133beaa5ab4728e58f610) @@ -441,7 +441,7 @@ """ cmd_generic_override(payload = None, reset = None, - channel_id = DenaliChannels.ui_to_td_ch_id, + channel_id = CanChannels.ui_to_td_ch_id, msg_id = MsgIds.MSG_ID_UI_ADJUST_DISPOSABLES_CONFIRM_REQUEST, entity_name = 'UI Confirm Cartridge Installation response', override_text = 'N/A', @@ -457,7 +457,7 @@ """ cmd_generic_override(payload = None, reset = None, - channel_id = DenaliChannels.ui_to_td_ch_id, + channel_id = CanChannels.ui_to_td_ch_id, msg_id = MsgIds.MSG_ID_UI_ADJUST_DISPOSABLES_REMOVAL_CONFIRM_REQUEST, entity_name = 'UI Confirm Cartridge Removal response', override_text = 'N/A', Index: leahi_dialin/ui/fp_messaging.py =================================================================== diff -u -r6c90336ac2cd8cf34ac620cff431a847d9ddf557 -refb1d2a271b1b06b7fd133beaa5ab4728e58f610 --- leahi_dialin/ui/fp_messaging.py (.../fp_messaging.py) (revision 6c90336ac2cd8cf34ac620cff431a847d9ddf557) +++ leahi_dialin/ui/fp_messaging.py (.../fp_messaging.py) (revision efb1d2a271b1b06b7fd133beaa5ab4728e58f610) @@ -322,8 +322,8 @@ payload += conversions.float_to_bytearray(avgRORejectionRatioTankFill ) payload += conversions.unsigned_integer_to_bytearray(genPermeateState ) - message = CAN.DenaliMessage.build_message( - channel_id=CAN.DenaliChannels.fp_sync_broadcast_ch_id, + message = CAN.CanMessage.build_message( + channel_id=CAN.CanChannels.fp_sync_broadcast_ch_id, message_id=msg_ids.MsgIds.MSG_ID_FP_RO_REJECTION_RATIO_DATA.value, payload=payload) Index: leahi_dialin/ui/td_messaging.py =================================================================== diff -u -r7e864b8d034f7a5cb961402d4f6672b180a57bb5 -refb1d2a271b1b06b7fd133beaa5ab4728e58f610 --- leahi_dialin/ui/td_messaging.py (.../td_messaging.py) (revision 7e864b8d034f7a5cb961402d4f6672b180a57bb5) +++ leahi_dialin/ui/td_messaging.py (.../td_messaging.py) (revision efb1d2a271b1b06b7fd133beaa5ab4728e58f610) @@ -580,8 +580,8 @@ payload = conversions.unsigned_integer_to_bytearray (valve ) payload += conversions.unsigned_integer_to_bytearray (timeout ) - message = CAN.DenaliMessage.build_message( - channel_id=CAN.DenaliChannels.td_sync_broadcast_ch_id, + message = CAN.CanMessage.build_message( + channel_id=CAN.CanChannels.td_sync_broadcast_ch_id, message_id=msg_ids.MsgIds.MSG_ID_TD_WATER_SAMPLE_DATA.value, payload=payload) self.can_interface.send(message, 0) @@ -600,8 +600,8 @@ payload += conversions.integer_to_bytearray (vRejectionReason) payload += conversions.float_to_bytearray (vValue ) - message = CAN.DenaliMessage.build_message( - channel_id=CAN.DenaliChannels.td_to_ui_ch_id, + message = CAN.CanMessage.build_message( + channel_id=CAN.CanChannels.td_to_ui_ch_id, message_id=msg_ids.MsgIds.MSG_ID_TD_WATER_SAMPLE_RESULT_RESPONSE.value, payload=payload) self.can_interface.send(message, 0) @@ -1587,8 +1587,8 @@ payload += conversions.integer_to_bytearray(vVenousAsymmetricRejectReason ) payload += conversions.integer_to_bytearray(vTmpWindowRejectReason ) - message = CAN.DenaliMessage.build_message( - channel_id=CAN.DenaliChannels.td_to_ui_ch_id, + message = CAN.CanMessage.build_message( + channel_id=CAN.CanChannels.td_to_ui_ch_id, message_id=msg_ids.MsgIds.MSG_ID_TD_PRESSURE_LIMITS_CHANGE_RESPONSE.value, payload=payload) self.can_interface.send(message, 0) @@ -1623,8 +1623,8 @@ payload += conversions.integer_to_bytearray(vSodiumRejectReason ) payload += conversions.integer_to_bytearray(vBicarbonateRejectReason ) - message = CAN.DenaliMessage.build_message( - channel_id=CAN.DenaliChannels.td_to_ui_ch_id, + message = CAN.CanMessage.build_message( + channel_id=CAN.CanChannels.td_to_ui_ch_id, message_id=msg_ids.MsgIds.MSG_ID_TD_TREATMENT_SET_POINTS_CHANGE_RESPONSE.value, payload=payload) self.can_interface.send(message, 0) @@ -1640,8 +1640,8 @@ payload = conversions.integer_to_bytearray(vAccepted) payload += conversions.integer_to_bytearray(vRejectionReason) - message = CAN.DenaliMessage.build_message( - channel_id=CAN.DenaliChannels.td_to_ui_ch_id, + message = CAN.CanMessage.build_message( + channel_id=CAN.CanChannels.td_to_ui_ch_id, message_id=msg_ids.MsgIds.MSG_ID_TD_ADJUST_PATIENT_DISCONNECT_CONFIRM_RESPONSE.value, payload=payload) self.can_interface.send(message, 0) @@ -1803,8 +1803,8 @@ payload += conversions.float_to_bytearray( vIsoUfRateTarget ) payload += conversions.float_to_bytearray( vWaterSampleTestResult ) - message = CAN.DenaliMessage.build_message( - channel_id=CAN.DenaliChannels.td_to_ui_ch_id, + message = CAN.CanMessage.build_message( + channel_id=CAN.CanChannels.td_to_ui_ch_id, message_id=msg_ids.MsgIds.MSG_ID_TD_ADJUST_TREATMENT_LOGS_RESPONSE.value, payload=payload) self.can_interface.send(message, 0)