Index: leahi_dialin/dd/dialysate_delivery.py =================================================================== diff -u -r92a9aeaa33ff2827f569ae9a4087b2feb01669e6 -r20c821bd230fc7689a0275a2918981669ff5cc19 --- leahi_dialin/dd/dialysate_delivery.py (.../dialysate_delivery.py) (revision 92a9aeaa33ff2827f569ae9a4087b2feb01669e6) +++ leahi_dialin/dd/dialysate_delivery.py (.../dialysate_delivery.py) (revision 20c821bd230fc7689a0275a2918981669ff5cc19) @@ -42,7 +42,7 @@ from .proxies.td_proxy import TDProxy from ..common.constants import NO_RESET -from ..common.dd_defs import dd_enum_repository +from ..common import dd_enum_repository from ..common.msg_defs import MsgIds, MsgFieldPositions, MsgFieldPositionsFWVersions from ..common.override_templates import cmd_generic_broadcast_interval_override, cmd_generic_override from ..protocols.CAN import DenaliMessage, DenaliCanMessenger, DenaliChannels @@ -105,46 +105,56 @@ self.cmd_log_in_to_dd() # create properties - self.dd_op_mode_timestamp = 0.0 - self.dd_debug_events_timestamp = 0.0 - self.dd_version_response_timestamp = 0.0 - self.dd_operation_mode = dd_enum_repository.DDOpModes.MODE_INIT.value - self.dd_operation_sub_mode = 0 - self.dd_logged_in = False + self.dd_op_mode_timestamp = 0.0 #: The timestamp of the latest operation mode message + self.dd_debug_events_timestamp = 0.0 #: The timestamp of the latest events message + self.dd_version_response_timestamp = 0.0 #: The timestamp of the latest DD version info message + self.dd_operation_mode = dd_enum_repository.DDOpModes.MODE_INIT.value #: The Operation Mode's value + self.dd_operation_sub_mode = 0 #: The Operation Sub-Mode's value + self.dd_logged_in = False #: The value showing if the user is logged in or not self.dd_set_logged_in_status(False) - self.dd_version = None - self.dd_fpga_version = None - self.dd_debug_events = [''] * self._DD_DEBUG_EVENT_LIST_COUNT - self.dd_debug_event_index = 0 - self.dd_last_debug_event = '' + self.dd_version = None #: The DD's version value + self.dd_fpga_version = None #: The DD's FPGA version value + self.dd_debug_events = [''] * self._DD_DEBUG_EVENT_LIST_COUNT #: The Debug Event's list + self.dd_debug_event_index = 0 #: The index of the last Event + self.dd_last_debug_event = '' #: The name of the last Event # Create command groups - self.alarms = DDAlarms(self.can_interface, self.logger) - self.balancing_chamber = DDBalancingChamber(self.can_interface, self.logger) - self.blood_leak = DDBloodLeak(self.can_interface, self.logger) - self.concentrate_pumps = DDConcentratePumps(self.can_interface, self.logger) - self.conductivity_sensors = DDConductivitySensors(self.can_interface, self.logger) - self.dialysate_pumps = DDDialysatePumps(self.can_interface, self.logger) - self.events = DDEvents(self.can_interface, self.logger) - self.gen_dialysate = DDGenDialysate(self.can_interface, self.logger) - self.heaters = DDHeaters(self.can_interface, self.logger) - self.levels = DDLevels(self.can_interface, self.logger) - self.post_gen_dialysate = DDPostGenDialysate(self.can_interface, self.logger) - self.pressure_sensors = DDPressureSensors(self.can_interface, self.logger) - self.pre_gen_dialysate = DDPreGenDialysate(self.can_interface, self.logger) - self.rinse_pump = DDRinsePump(self.can_interface, self.logger) - self.spent_chamber_fill = DDSpentChamberFill(self.can_interface, self.logger) - self.drybicart = DDDryBicart(self.can_interface, self.logger) - self.temperature_sensors = DDTemperatureSensors(self.can_interface, self.logger) - self.test_configs = DDTestConfig(self.can_interface, self.logger) - self.ultrafiltration = DDUltrafiltration(self.can_interface, self.logger) - self.valves = DDValves(self.can_interface, self.logger) - self.voltages = DDVoltages(self.can_interface, self.logger) + self.alarms = DDAlarms(self.can_interface, self.logger) #: The Alarms module + self.balancing_chamber = DDBalancingChamber(self.can_interface, self.logger) #: The Balancing Chamber module + self.blood_leak = DDBloodLeak(self.can_interface, self.logger) #: The Blood Leak module + self.concentrate_pumps = DDConcentratePumps(self.can_interface, self.logger) #: The Concentrat Pumps module + self.conductivity_sensors = DDConductivitySensors(self.can_interface, self.logger) #: The Conductivity Sensors module + self.dialysate_pumps = DDDialysatePumps(self.can_interface, self.logger) #: The Dialysate Pumps module + self.events = DDEvents(self.can_interface, self.logger) #: The Events module + self.gen_dialysate = DDGenDialysate(self.can_interface, self.logger) #: The Generate Dialysate module + self.heaters = DDHeaters(self.can_interface, self.logger) #: The Heaters module + self.levels = DDLevels(self.can_interface, self.logger) #: The Levels module + self.post_gen_dialysate = DDPostGenDialysate(self.can_interface, self.logger) #: The Post Generate Dialysate module + self.pressure_sensors = DDPressureSensors(self.can_interface, self.logger) #: The Pressure Sensors module + self.pre_gen_dialysate = DDPreGenDialysate(self.can_interface, self.logger) #: The Pre Generate Dialysate module + self.rinse_pump = DDRinsePump(self.can_interface, self.logger) #: The Rinse Pump module + self.spent_chamber_fill = DDSpentChamberFill(self.can_interface, self.logger) #: The Spent Chamber module + self.drybicart = DDDryBicart(self.can_interface, self.logger) #: The Dry Bicarb module + self.temperature_sensors = DDTemperatureSensors(self.can_interface, self.logger) #: The Temperature Sensors module + self.test_configs = DDTestConfig(self.can_interface, self.logger) #: The Test Configs module + self.ultrafiltration = DDUltrafiltration(self.can_interface, self.logger) #: The Ultrafiltration module + self.valves = DDValves(self.can_interface, self.logger) #: The Valves module + self.voltages = DDVoltages(self.can_interface, self.logger) #: The Voltages module - self.ro_proxy = ROProxy(self.can_interface, self.logger) - self.td_proxy = TDProxy(self.can_interface, self.logger) + self.ro_proxy = ROProxy(self.can_interface, self.logger) #: The RO Proxy module (imitates commands sent by DD) + self.td_proxy = TDProxy(self.can_interface, self.logger) #: The TD Proxy module (imitates commands sent by UI) + def dd_set_logged_in_status(self, logged_in: bool = False): + """ + Callback for dd logged in status change. + + @param logged_in: Logged in status for DD + @return: None + """ + self.dd_logged_in = logged_in + + @publish(["msg_id_dd_debug_event", "dd_debug_events_timestamp","dd_debug_events"]) def _handler_dd_debug_event_sync(self, message, timestamp = 0.0): payload = message['message'] @@ -167,16 +177,6 @@ self.dd_debug_event_index = 0 - @publish(["dd_logged_in"]) - def dd_set_logged_in_status(self, logged_in: bool = False): - """ - Callback for dd logged in status change. - @param logged_in boolean logged in status for DD - @return: none - """ - self.dd_logged_in = logged_in - - @publish(["msg_id_dd_op_mode_data", "dd_op_mode_timestamp","dd_operation_mode", "dd_operation_sub_mode"]) def _handler_dd_op_mode_sync(self, message, timestamp = 0.0): """