Index: dialin/dg/conductivity_sensors.py =================================================================== diff -u -r2adaaf1a16c352da0448b929f853f68b08249cf0 -rd4c07268dfcb79727bf9516db309944635895a0b --- dialin/dg/conductivity_sensors.py (.../conductivity_sensors.py) (revision 2adaaf1a16c352da0448b929f853f68b08249cf0) +++ dialin/dg/conductivity_sensors.py (.../conductivity_sensors.py) (revision d4c07268dfcb79727bf9516db309944635895a0b) @@ -19,6 +19,7 @@ from ..utils.conversions import integer_to_bytearray, float_to_bytearray from ..protocols.CAN import (DenaliMessage, DenaliChannels) from ..utils.base import _AbstractSubSystem, _publish +from logging import Logger class ConductivitySensors(_AbstractSubSystem): @@ -39,14 +40,15 @@ START_POS_CS_CPO = END_POS_CS_CPI END_POS_CS_CPO = START_POS_CS_CPO + 4 - def __init__(self, can_interface=None): + def __init__(self, can_interface, logger: Logger): """ @param can_interface: Denali Can Messenger object """ super().__init__() self.can_interface = can_interface + self.logger = logger if self.can_interface is not None: channel_id = DenaliChannels.dg_sync_broadcast_ch_id @@ -108,7 +110,7 @@ str_res = "reset back to normal" else: str_res = str(conductivity) + " microsiemens/cm" - print("override conductivity sensor value for sensor " + str(sensor) + ": " + str_res) + self.logger.debug("override conductivity sensor value for sensor " + str(sensor) + ": " + str_res) # Send message received_message = self.can_interface.send(message) @@ -118,7 +120,7 @@ # response payload is OK or not OK return received_message['message'][DenaliMessage.PAYLOAD_START_INDEX] else: - print("Timeout!!!!") + self.logger.error("Timeout!!!!") return False def cmd_conductivity_sensor_data_broadcast_interval_override(self, ms, reset=NO_RESET): @@ -138,7 +140,7 @@ message_id=self.MSG_ID_DG_CONDUCTIVITY_SENSORS_DATA_BROADCAST_INTERVAL_OVERRIDE, payload=payload) - print("override DG conductivity sensor broadcast interval") + self.logger.debug("override DG conductivity sensor broadcast interval") # Send message received_message = self.can_interface.send(message) @@ -149,10 +151,10 @@ str_res = "reset back to normal: " else: str_res = str(ms) + " ms: " - print("Conductivity sensor data broadcast interval overridden to " + str_res + + self.logger.debug("Conductivity sensor data broadcast interval 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: - print("Timeout!!!!") + self.logger.error("Timeout!!!!") return False Index: dialin/dg/dialysate_generator.py =================================================================== diff -u -r74148a933061455b10101e4eb58144ca9d2f3cd2 -rd4c07268dfcb79727bf9516db309944635895a0b --- dialin/dg/dialysate_generator.py (.../dialysate_generator.py) (revision 74148a933061455b10101e4eb58144ca9d2f3cd2) +++ dialin/dg/dialysate_generator.py (.../dialysate_generator.py) (revision d4c07268dfcb79727bf9516db309944635895a0b) @@ -28,7 +28,7 @@ DenaliMessage, DenaliChannels) -from ..utils.base import _AbstractSubSystem, _publish +from ..utils.base import _AbstractSubSystem, _publish, _LogManager class DG(_AbstractSubSystem): @@ -86,20 +86,28 @@ DG_POST_STATE_FAILED = 6 # POST failed state NUM_OF_DG_POST_STATES = 7 # Number of initialize & POST mode states - def __init__(self, can_interface="can0"): + def __init__(self, can_interface="can0", log_level=None): """ Initializes the DG object + For example: dg_object = DG(can_interface='can0') or - dg_object = DG('can0') + dg_object = DG(can_interface="can0", log_level="DEBUG") + Possible log levels: + ["DEBUG", "INFO", "WARNING", "ERROR", "CRITICAL", "CAN_ONLY", "PRINT_ONLY"] + @param can_interface: string with can bus name, e.g. "can0" """ super().__init__() + self._log_manager = _LogManager(log_level=log_level, log_filepath=self.__class__.__name__+".log") + self.logger = self._log_manager.logger # Create listener - self.can_interface = DenaliCanMessenger(can_interface=can_interface) + self.can_interface = DenaliCanMessenger(can_interface=can_interface, + logger=self.logger, + log_can=self._log_manager.log_level == "CAN_ONLY") self.can_interface.start() # register handler for HD operation mode broadcast messages @@ -119,16 +127,16 @@ self.dg_operation_sub_mode = 0 # Create command groups - self.hd_proxy = DGHDProxy(self.can_interface) - self.load_cells = DGLoadCells(self.can_interface) - self.pressures = DGPressures(self.can_interface) - self.reservoirs = DGReservoirs(self.can_interface) - self.valves = DGValves(self.can_interface) - self.ro_pump = DGROPump(self.can_interface) - self.drain_pump = DGDrainPump(self.can_interface) - self.heaters = Heaters(self.can_interface) - self.temperature_sensors = TemperatureSensors(self.can_interface) - self.conductivity_sensors = ConductivitySensors(self.can_interface) + self.hd_proxy = DGHDProxy(self.can_interface, self.logger) + self.load_cells = DGLoadCells(self.can_interface, self.logger) + self.pressures = DGPressures(self.can_interface, self.logger) + self.reservoirs = DGReservoirs(self.can_interface, self.logger) + self.valves = DGValves(self.can_interface, self.logger) + self.ro_pump = DGROPump(self.can_interface, self.logger) + self.drain_pump = DGDrainPump(self.can_interface, self.logger) + self.heaters = Heaters(self.can_interface, self.logger) + self.temperature_sensors = TemperatureSensors(self.can_interface, self.logger) + self.conductivity_sensors = ConductivitySensors(self.can_interface, self.logger) def get_version(self): """ @@ -178,7 +186,7 @@ if len(major) > 0 and len(minor) > 0 and len(micro) > 0 and len(build) > 0: self.dg_version = f"v{major[0]}.{minor[0]}.{micro[0]}-{build[0]}" - print(self.dg_version) + self.logger.debug(self.dg_version) return self.dg_version @@ -212,19 +220,19 @@ message_id=self.MSG_ID_LOGIN_TO_DG, payload=list(map(int, map(ord, self.DG_LOGIN_PASSWORD)))) - print("login") + self.logger.info("Logging in to the DG...") # Send message received_message = self.can_interface.send(message) if received_message is not None: if received_message['message'][DenaliMessage.PAYLOAD_START_INDEX] == 1: - print("Logged In") + self.logger.info("Successfully logged in to the DG.") else: - print("Log In Failed.") + self.logger.error("Log In Failed.") return received_message['message'][DenaliMessage.PAYLOAD_START_INDEX] else: - print("Timeout!!!!") + self.logger.error("Timeout!!!!") return False def cmd_ui_request_dg_version(self): @@ -236,7 +244,7 @@ message = DenaliMessage.build_message(channel_id=DenaliChannels.dialin_to_dg_ch_id, message_id=self.MSG_ID_DG_REQUEST_DG_VERSION) - print("Sending Dialin request for version to DG") + self.logger.debug("Sending Dialin request for version to DG") self.can_interface.send(message, 0) @@ -253,18 +261,18 @@ message = DenaliMessage.build_message(channel_id=DenaliChannels.dialin_to_dg_ch_id, message_id=self.MSG_ID_DG_SAFETY_SHUTDOWN_OVERRIDE) - print("overriding DG safety shutdown") + self.logger.debug("overriding DG safety shutdown") # Send message received_message = self.can_interface.send(message) if received_message is not None: if received_message['message'][DenaliMessage.PAYLOAD_START_INDEX] == 1: - print("Safety shutdown signal overridden") + self.logger.debug("Safety shutdown signal overridden") else: - print("Safety shutdown signal override failed.") + self.logger.debug("Safety shutdown signal override failed.") return received_message['message'][DenaliMessage.PAYLOAD_START_INDEX] else: - print("Timeout!!!!") + self.logger.debug("Timeout!!!!") return False Index: dialin/dg/drain_pump.py =================================================================== diff -u -r98be8e8e674df17d358ae22b77c59639e8c1b365 -rd4c07268dfcb79727bf9516db309944635895a0b --- dialin/dg/drain_pump.py (.../drain_pump.py) (revision 98be8e8e674df17d358ae22b77c59639e8c1b365) +++ dialin/dg/drain_pump.py (.../drain_pump.py) (revision d4c07268dfcb79727bf9516db309944635895a0b) @@ -20,6 +20,7 @@ from ..protocols.CAN import (DenaliMessage, DenaliChannels) from ..utils.base import _AbstractSubSystem, _publish +from logging import Logger class DGDrainPump(_AbstractSubSystem): @@ -38,15 +39,14 @@ START_POS_DAC = END_POS_SET_SPD END_POS_DAC = START_POS_DAC + 4 - def __init__(self, can_interface=None): + def __init__(self, can_interface, logger: Logger): """ DGDrainPump constructor - @param outer_instance: reference to the DG (outer) class. """ super().__init__() - self.can_interface = can_interface + self.logger = logger if self.can_interface is not None: channel_id = DenaliChannels.dg_sync_broadcast_ch_id @@ -109,24 +109,24 @@ message_id=self.MSG_ID_DG_DRAIN_PUMP_SET_SPEED_OVERRIDE, payload=payload) - print("override drain pump speed set point") + self.logger.debug("override drain pump speed set point") # Send message received_message = self.can_interface.send(message) # If there is content... if received_message is not None: - # print(received_message) + # self.logger.debug(received_message) if reset == RESET: str_res = "reset back to normal" else: str_res = str(speed) - print("Drain pump set point overridden to " + str_res + " RPM: " + + self.logger.debug("Drain pump set point overridden to " + str_res + " RPM: " + str(received_message['message'][DenaliMessage.PAYLOAD_START_INDEX])) # response payload is OK or not OK return received_message['message'][DenaliMessage.PAYLOAD_START_INDEX] else: - print("Timeout!!!!") + self.logger.debug("Timeout!!!!") return False def cmd_drain_pump_data_broadcast_interval_override(self, ms, reset=NO_RESET): @@ -149,23 +149,23 @@ message_id=self.MSG_ID_DG_DRAIN_PUMP_BROADAST_INTERVAL_OVERRIDE, payload=payload) - print("override drain pump data broadcast interval") + self.logger.debug("override drain pump data broadcast interval") # Send message received_message = self.can_interface.send(message) # If there is content... if received_message is not None: - # print(received_message) + # self.logger.debug(received_message) if reset == RESET: str_res = "reset back to normal" else: str_res = str(mis) - print( + self.logger.debug( "Drain pump data broadcast interval overridden to " + str_res + " ms: " + str(received_message['message'][DenaliMessage.PAYLOAD_START_INDEX])) # response payload is OK or not OK return received_message['message'][DenaliMessage.PAYLOAD_START_INDEX] else: - print("Timeout!!!!") + self.logger.debug("Timeout!!!!") return False Index: dialin/dg/hd_proxy.py =================================================================== diff -u -r3995adb7a16b5b7569582ba781685ca75f9af49f -rd4c07268dfcb79727bf9516db309944635895a0b --- dialin/dg/hd_proxy.py (.../hd_proxy.py) (revision 3995adb7a16b5b7569582ba781685ca75f9af49f) +++ dialin/dg/hd_proxy.py (.../hd_proxy.py) (revision d4c07268dfcb79727bf9516db309944635895a0b) @@ -18,6 +18,7 @@ from ..protocols.CAN import (DenaliMessage, DenaliChannels) from ..utils.base import _AbstractSubSystem, _publish +from logging import Logger class DGHDProxy(_AbstractSubSystem): @@ -37,13 +38,14 @@ RESERVOIR1 = 0 RESERVOIR2 = 1 - def __init__(self, can_interface=None): + def __init__(self, can_interface, logger: Logger): """ @param can_interface: Denali CAN Messenger object """ super().__init__() self.can_interface = can_interface + self.logger = logger def cmd_switch_reservoirs(self, reservoirID=RESERVOIR1): """ @@ -67,7 +69,7 @@ message_id=self.MSG_ID_HD_SWITCH_RESERVOIRS_CMD, payload=payload) - print("switch reservoirs cmd sent to DG") + self.logger.debug("switch reservoirs cmd sent to DG") # Send message received_message = self.can_interface.send(message) @@ -77,7 +79,7 @@ # response payload is OK or not OK return received_message['message'][DenaliMessage.PAYLOAD_START_INDEX] else: - print("Timeout!!!!") + self.logger.debug("Timeout!!!!") return False def cmd_fill(self, volume=1500): @@ -98,7 +100,7 @@ message_id=self.MSG_ID_HD_FILL_CMD, payload=payload) - print("fill cmd sent to DG") + self.logger.debug("fill cmd sent to DG") # Send message received_message = self.can_interface.send(message) @@ -108,7 +110,7 @@ # response payload is OK or not OK return received_message['message'][DenaliMessage.PAYLOAD_START_INDEX] else: - print("Timeout!!!!") + self.logger.debug("Timeout!!!!") return False def cmd_drain(self, volume=200): @@ -129,7 +131,7 @@ message_id=self.MSG_ID_HD_DRAIN_CMD, payload=payload) - print("drain cmd sent to DG") + self.logger.debug("drain cmd sent to DG") # Send message received_message = self.can_interface.send(message) @@ -139,7 +141,7 @@ # response payload is OK or not OK return received_message['message'][DenaliMessage.PAYLOAD_START_INDEX] else: - print("Timeout!!!!") + self.logger.debug("Timeout!!!!") return False def cmd_start_stop_dg(self, start=True): @@ -165,7 +167,7 @@ message_id=self.MSG_ID_HD_START_STOP_DG_CMD, payload=payload) - print(str+"DG cmd sent to DG") + self.logger.debug(str+"DG cmd sent to DG") # Send message received_message = self.can_interface.send(message) @@ -175,7 +177,7 @@ # response payload is OK or not OK return received_message['message'][DenaliMessage.PAYLOAD_START_INDEX] else: - print("Timeout!!!!") + self.logger.debug("Timeout!!!!") return False def cmd_start_stop_trimmer_heater(self, start=True): @@ -198,7 +200,7 @@ message_id=self.MSG_ID_HD_START_STOP_DG_TRIMMER_HEATER, payload=payload) - print(str+"DG trimmer heater cmd sent to DG") + self.logger.debug(str+"DG trimmer heater cmd sent to DG") # Send message received_message = self.can_interface.send(message) @@ -208,6 +210,6 @@ # response payload is OK or not OK return received_message['message'][DenaliMessage.PAYLOAD_START_INDEX] else: - print("Timeout!!!!") + self.logger.debug("Timeout!!!!") return False Index: dialin/dg/heaters.py =================================================================== diff -u -r3995adb7a16b5b7569582ba781685ca75f9af49f -rd4c07268dfcb79727bf9516db309944635895a0b --- dialin/dg/heaters.py (.../heaters.py) (revision 3995adb7a16b5b7569582ba781685ca75f9af49f) +++ dialin/dg/heaters.py (.../heaters.py) (revision d4c07268dfcb79727bf9516db309944635895a0b) @@ -21,7 +21,9 @@ from .constants import NO_RESET from ..protocols.CAN import (DenaliMessage, DenaliChannels) from ..utils.base import _AbstractSubSystem, _publish +from logging import Logger + class Heaters(_AbstractSubSystem): MSG_ID_DG_HEATERS_DATA = 0x2C @@ -37,11 +39,12 @@ START_POS_TRIMMER_HEATER = END_POS_SMALL_PRI_HEATER END_POS_TRIMMER_HEATER = START_POS_TRIMMER_HEATER + 4 - def __init__(self, can_interface=None): + def __init__(self, can_interface, logger: Logger): super().__init__() - self.can_interface = can_interface + self.logger = logger + self.main_primary_heater_pwm = 0 self.small_primary_heater_pwm = 0 self.trimmer_heater_pwm = 0 @@ -84,7 +87,7 @@ message = DenaliMessage.build_message(channel_id=DenaliChannels.dialin_to_dg_ch_id, message_id=self.MSG_ID_START_STOP_PRIMARY_HEATER, payload=payload) - print("Starting the Primary heater") + self.logger.debug("Starting the Primary heater") self.can_interface.send(message, 0) def cmd_stop_primary_heater(self): @@ -98,7 +101,7 @@ message = DenaliMessage.build_message(channel_id=DenaliChannels.dialin_to_dg_ch_id, message_id=self.MSG_ID_START_STOP_PRIMARY_HEATER, payload=payload) - print("Stopping the Primary heater") + self.logger.debug("Stopping the Primary heater") self.can_interface.send(message, 0) def cmd_start_trimmer_heater(self): @@ -114,7 +117,7 @@ message = DenaliMessage.build_message(channel_id=DenaliChannels.dialin_to_dg_ch_id, message_id=self.MSG_ID_DG_START_STOP_TRIMMER_HEATER_CMD, payload=payload) - print("Starting the Trimmer heater") + self.logger.debug("Starting the Trimmer heater") self.can_interface.send(message, 0) def cmd_stop_trimmer_heater(self): @@ -128,7 +131,7 @@ message = DenaliMessage.build_message(channel_id=DenaliChannels.dialin_to_dg_ch_id, message_id=self.MSG_ID_DG_START_STOP_TRIMMER_HEATER_CMD, payload=payload) - print("Stopping the Trimmer heater") + self.logger.debug("Stopping the Trimmer heater") self.can_interface.send(message, 0) def cmd_set_dialysate_target_temperature(self, pirmary_target_temp=37.0, trimmer_target_temp=38.0): @@ -145,7 +148,7 @@ message = DenaliMessage.build_message(channel_id=DenaliChannels.dialin_to_dg_ch_id, message_id=self.MSG_ID_SET_DG_DIALYSATE_TEMP_TARGETS, payload=payload) - print("Setting Primary Heater to {} C and Trimmer Heater to {} C".format(pirmary_target_temp, trimmer_target_temp)) + self.logger.debug("Setting Primary Heater to {} C and Trimmer Heater to {} C".format(pirmary_target_temp, trimmer_target_temp)) self.can_interface.send(message, 0) def cmd_heaters_broadcast_interval_override(self, ms, reset=NO_RESET): @@ -167,7 +170,7 @@ message_id=self.MSG_ID_HEATERS_PUBLISH_INTERVAL_ORVERRIDE, payload=payload) - print("Sending {} ms publish interval to the Heaters module".format(ms)) + self.logger.debug("Sending {} ms publish interval to the Heaters module".format(ms)) # Send message received_message = self.can_interface.send(message) @@ -176,7 +179,7 @@ # Response payload is OK or not return received_message['message'][DenaliMessage.PAYLOAD_START_INDEX] else: - print("Timeout!!!!") + self.logger.debug("Timeout!!!!") return False Index: dialin/dg/load_cells.py =================================================================== diff -u -r3995adb7a16b5b7569582ba781685ca75f9af49f -rd4c07268dfcb79727bf9516db309944635895a0b --- dialin/dg/load_cells.py (.../load_cells.py) (revision 3995adb7a16b5b7569582ba781685ca75f9af49f) +++ dialin/dg/load_cells.py (.../load_cells.py) (revision d4c07268dfcb79727bf9516db309944635895a0b) @@ -20,6 +20,7 @@ from ..protocols.CAN import (DenaliMessage, DenaliChannels) from ..utils.base import _AbstractSubSystem, _publish +from logging import Logger class DGLoadCells(_AbstractSubSystem): @@ -50,14 +51,14 @@ LOAD_CELL_B1 = 2 LOAD_CELL_B2 = 3 - def __init__(self, can_interface=None): + def __init__(self, can_interface, logger: Logger): """ @param can_interface: Denali Can Messenger object """ super().__init__() - self.can_interface = can_interface + self.logger = logger if self.can_interface is not None: channel_id = DenaliChannels.dg_sync_broadcast_ch_id @@ -130,7 +131,7 @@ message_id=self.MSG_ID_DG_LOAD_CELL_OVERRIDE, payload=payload) - print("override load cell weight value for sensor " + str(sensor)) + self.logger.debug("override load cell weight value for sensor " + str(sensor)) # Send message received_message = self.can_interface.send(message) @@ -140,7 +141,7 @@ # response payload is OK or not OK return received_message['message'][DenaliMessage.PAYLOAD_START_INDEX] else: - print("Timeout!!!!") + self.logger.debug("Timeout!!!!") return False def cmd_load_cell_data_broadcast_interval_override(self, ms, reset=NO_RESET): @@ -163,7 +164,7 @@ message_id=self.MSG_ID_DG_LOAD_CELL_DATA_BROADCAST_INTERVAL_OVERRIDE, payload=payload) - print("override DG load cell broadcast interval") + self.logger.debug("override DG load cell broadcast interval") # Send message received_message = self.can_interface.send(message) @@ -174,11 +175,11 @@ str_res = "reset back to normal: " else: str_res = str(ms) + " ms: " - print("Load cell data broadcast interval overridden to " + str_res + + self.logger.debug("Load cell data broadcast interval 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: - print("Timeout!!!!") + self.logger.debug("Timeout!!!!") return False Index: dialin/dg/pressures.py =================================================================== diff -u -r3995adb7a16b5b7569582ba781685ca75f9af49f -rd4c07268dfcb79727bf9516db309944635895a0b --- dialin/dg/pressures.py (.../pressures.py) (revision 3995adb7a16b5b7569582ba781685ca75f9af49f) +++ dialin/dg/pressures.py (.../pressures.py) (revision d4c07268dfcb79727bf9516db309944635895a0b) @@ -20,7 +20,9 @@ from ..protocols.CAN import (DenaliMessage, DenaliChannels) from ..utils.base import _AbstractSubSystem, _publish +from logging import Logger + class DGPressures(_AbstractSubSystem): """ DG interface containing pressure related commands. @@ -47,15 +49,15 @@ PRESSURE_SENSOR_DRAIN_PUMP_INLET = 2 PRESSURE_SENSOR_DRAIN_PUMP_OUTLET = 3 - def __init__(self, can_interface=None): + def __init__(self, can_interface, logger: Logger): """ @param can_interface: The DenaliCANMessenger object """ super().__init__() - self.can_interface = can_interface + self.logger = logger if self.can_interface is not None: channel_id = DenaliChannels.dg_sync_broadcast_ch_id @@ -136,7 +138,7 @@ message_id=self.MSG_ID_DG_PRESSURE_OVERRIDE, payload=payload) - print("override pressure sensor") + self.logger.debug("override pressure sensor") # Send message received_message = self.can_interface.send(message) @@ -146,7 +148,7 @@ # response payload is OK or not OK return received_message['message'][DenaliMessage.PAYLOAD_START_INDEX] else: - print("Timeout!!!!") + self.logger.debug("Timeout!!!!") return False def cmd_pressure_broadcast_interval_override(self, ms, reset=NO_RESET): @@ -170,7 +172,7 @@ message_id=self.MSG_ID_DG_PRESSURE_DATA_BROADCAST_INTERVAL_OVERRIDE, payload=payload) - print("override pressure data broadcast interval") + self.logger.debug("override pressure data broadcast interval") # Send message received_message = self.can_interface.send(message) @@ -180,5 +182,5 @@ # response payload is OK or not OK return received_message['message'][DenaliMessage.PAYLOAD_START_INDEX] else: - print("Timeout!!!!") + self.logger.debug("Timeout!!!!") return False Index: dialin/dg/ro_pump.py =================================================================== diff -u -r005a2a84730867c3a627d85a64a45fb7d6f403ed -rd4c07268dfcb79727bf9516db309944635895a0b --- dialin/dg/ro_pump.py (.../ro_pump.py) (revision 005a2a84730867c3a627d85a64a45fb7d6f403ed) +++ dialin/dg/ro_pump.py (.../ro_pump.py) (revision d4c07268dfcb79727bf9516db309944635895a0b) @@ -20,6 +20,7 @@ from ..protocols.CAN import (DenaliMessage, DenaliChannels) from ..utils.base import _AbstractSubSystem, _publish +from logging import Logger class DGROPump(_AbstractSubSystem): @@ -43,14 +44,14 @@ START_POS_PWM = END_POS_MEAS_FLOW END_POS_PWM = START_POS_PWM + 4 - def __init__(self, can_interface=None): + def __init__(self, can_interface, logger: Logger): """ DGROPump constructor """ super().__init__() - self.can_interface = can_interface + self.logger = logger if self.can_interface is not None: channel_id = DenaliChannels.dg_sync_broadcast_ch_id @@ -127,25 +128,25 @@ message_id=self.MSG_ID_DG_RO_PUMP_PRESSURE_SET_PT_OVERRIDE, payload=payload) - print("override RO pump pressure set point") + self.logger.debug("override RO pump pressure set point") # Send message received_message = self.can_interface.send(message) # If there is content... if received_message is not None: - # print(received_message) + # self.logger.debug(received_message) if reset == RESET: str_res = "reset back to normal" else: str_res = str(pressure) - print( + self.logger.debug( "RO pump pressure set point overridden to " + str_res + " PSI: " + str(received_message['message'][DenaliMessage.PAYLOAD_START_INDEX])) # response payload is OK or not OK return received_message['message'][DenaliMessage.PAYLOAD_START_INDEX] else: - print("Timeout!!!!") + self.logger.debug("Timeout!!!!") return False def cmd_ro_flow_rate_override(self, flow, reset=NO_RESET): @@ -167,25 +168,25 @@ message_id=self.MSG_ID_DG_RO_FLOW_RATE_OVERRIDE, payload=payload) - print("override RO pump pressure set point") + self.logger.debug("override RO pump pressure set point") # Send message received_message = self.can_interface.send(message) # If there is content... if received_message is not None: - # print(received_message) + # self.logger.debug(received_message) if reset == RESET: str_res = "reset back to normal" else: str_res = str(flo) - print( + self.logger.debug( "RO flow rate overridden to " + str_res + " L/min: " + str(received_message['message'][DenaliMessage.PAYLOAD_START_INDEX])) # response payload is OK or not OK return received_message['message'][DenaliMessage.PAYLOAD_START_INDEX] else: - print("Timeout!!!!") + self.logger.debug("Timeout!!!!") return False def cmd_ro_pump_data_broadcast_interval_override(self, ms, reset=NO_RESET): @@ -208,24 +209,24 @@ message_id=self.MSG_ID_DG_RO_PUMP_BROADCAST_INTERVAL_OVERRIDE, payload=payload) - print("override RO pump data broadcast interval") + self.logger.debug("override RO pump data broadcast interval") # Send message received_message = self.can_interface.send(message) # If there is content... if received_message is not None: - # print(received_message) + # self.logger.debug(received_message) if reset == RESET: str_res = "reset back to normal" else: str_res = str(mis) - print( + self.logger.debug( "RO pump data broadcast interval overridden to " + str_res + " ms: " + str(received_message['message'][DenaliMessage.PAYLOAD_START_INDEX])) # response payload is OK or not OK return received_message['message'][DenaliMessage.PAYLOAD_START_INDEX] else: - print("Timeout!!!!") + self.logger.debug("Timeout!!!!") return False Index: dialin/dg/temperature_sensors.py =================================================================== diff -u -r3995adb7a16b5b7569582ba781685ca75f9af49f -rd4c07268dfcb79727bf9516db309944635895a0b --- dialin/dg/temperature_sensors.py (.../temperature_sensors.py) (revision 3995adb7a16b5b7569582ba781685ca75f9af49f) +++ dialin/dg/temperature_sensors.py (.../temperature_sensors.py) (revision d4c07268dfcb79727bf9516db309944635895a0b) @@ -20,7 +20,9 @@ from .constants import NO_RESET from ..protocols.CAN import (DenaliMessage, DenaliChannels) from ..utils.base import _AbstractSubSystem, _publish +from logging import Logger + class TemperatureSensors(_AbstractSubSystem): MSG_ID_DG_TEMPERATURE_DATA = 0x2D @@ -64,12 +66,12 @@ START_POS_TRI_INTERNAL_TEMP = END_POS_PRI_INTERNAL_TEMP END_POS_TRI_INTERNAL_TEMP = START_POS_TRI_INTERNAL_TEMP + 4 - def __init__(self, can_interface=None): + def __init__(self, can_interface, logger: Logger): super().__init__() self.can_interface = can_interface - + self.logger = logger self.inlet_primary = 0.0 self.outlet_primary = 0.0 self.cd1 = 0.0 @@ -164,7 +166,7 @@ message_id=self.MSG_ID_TEMPERATURE_SENSORS_PUBLISH_INTERVAL_OVERRIDE, payload=payload) - print("Sending {} ms publish interval to the Temperature Sensors module".format(ms)) + self.logger.debug("Sending {} ms publish interval to the Temperature Sensors module".format(ms)) # Send message received_message = self.can_interface.send(message) @@ -173,7 +175,7 @@ # Response payload is OK or not return received_message['message'][DenaliMessage.PAYLOAD_START_INDEX] else: - print("Timeout!!!!") + self.logger.debug("Timeout!!!!") return False def cmd_temperature_sensors_override_value(self, sensor_index, sensor_value, reset=NO_RESET): @@ -211,7 +213,7 @@ message_id=self.MSG_ID_TEMPERATURE_SENSORS_VALUE_OVERRIDE, payload=payload) - print("Setting sensor {} to {} C".format(sensor_index, sensor_value)) + self.logger.debug("Setting sensor {} to {} C".format(sensor_index, sensor_value)) # Send message received_message = self.can_interface.send(message) @@ -221,6 +223,6 @@ # Response payload is OK or not return received_message['message'][DenaliMessage.PAYLOAD_START_INDEX] else: - print("Timeout!!!!") + self.logger.debug("Timeout!!!!") return False Index: dialin/dg/valves.py =================================================================== diff -u -r98be8e8e674df17d358ae22b77c59639e8c1b365 -rd4c07268dfcb79727bf9516db309944635895a0b --- dialin/dg/valves.py (.../valves.py) (revision 98be8e8e674df17d358ae22b77c59639e8c1b365) +++ dialin/dg/valves.py (.../valves.py) (revision d4c07268dfcb79727bf9516db309944635895a0b) @@ -20,6 +20,7 @@ from .constants import NO_RESET from ..protocols.CAN import (DenaliMessage, DenaliChannels) from ..utils.base import _AbstractSubSystem, _publish +from logging import Logger # Valve states ENERGIZED = True @@ -55,16 +56,15 @@ VALVE_RESERVOIR_2 = 11 # VR2 VALVE_PRODUCTION_DRAIN = 12 # VPD - - def __init__(self, can_interface=None): + def __init__(self, can_interface, logger: Logger): """ @param can_interface: Denali CAN Messenger object """ super().__init__() - self.can_interface = can_interface + self.logger = logger if self.can_interface is not None: channel_id = DenaliChannels.dg_sync_broadcast_ch_id @@ -123,7 +123,8 @@ self.valve_state_VPD.get("state", None) ] - def sort_by_id(self, observation): + @staticmethod + def sort_by_id(observation): """ Converts a published dictionary of valve state information to an ordered list of tuples. @@ -145,7 +146,7 @@ 'valve_state_VRO': {'id': 3, 'state': True}, 'valve_state_VSP': {'id': 9, 'state': True}, 'valve_states_all': 8191} - >>> print(dg.valves.sort_by_id(observation)) + >>> self.logger.debug(dg.valves.sort_by_id(observation)) ('valve_state_VRF', 0, True) ('valve_state_VRI', 1, True) ('valve_state_VRD', 2, True) @@ -261,7 +262,7 @@ message_id=self.MSG_ID_DG_VALVE_STATE_OVERRIDE, payload=payload) - print("override valve state") + self.logger.debug("override valve state") # Send message received_message = self.can_interface.send(message) @@ -271,7 +272,7 @@ # response payload is OK or not OK return received_message['message'][DenaliMessage.PAYLOAD_START_INDEX] else: - print("Timeout!!!!") + self.logger.debug("Timeout!!!!") return False def cmd_valve_broadcast_interval_override(self, ms, reset=NO_RESET): @@ -295,7 +296,7 @@ message_id=self.MSG_ID_DG_VALVES_STATES_PUBLISH_INTERVAL_OVERRIDE, payload=payload) - print("override valves states publish interval") + self.logger.debug("override valves states publish interval") # Send message received_message = self.can_interface.send(message) @@ -305,5 +306,5 @@ # Response payload is OK or not return received_message['message'][DenaliMessage.PAYLOAD_START_INDEX] else: - print("Timeout!!!!") + self.logger.debug("Timeout!!!!") return False Index: dialin/hd/alarms.py =================================================================== diff -u -r98be8e8e674df17d358ae22b77c59639e8c1b365 -rd4c07268dfcb79727bf9516db309944635895a0b --- dialin/hd/alarms.py (.../alarms.py) (revision 98be8e8e674df17d358ae22b77c59639e8c1b365) +++ dialin/hd/alarms.py (.../alarms.py) (revision d4c07268dfcb79727bf9516db309944635895a0b) @@ -20,6 +20,7 @@ from .constants import RESET, NO_RESET from collections import OrderedDict import struct +from logging import Logger class HDAlarms(_AbstractSubSystem): @@ -127,12 +128,13 @@ ALARM_ID_BLOOD_PUMP_ROTOR_SPEED_TOO_HIGH = 58 ALARM_ID_INLET_WATER_TEMPERATURE_OUT_OF_RANGE = 59 - def __init__(self, can_interface): + def __init__(self, can_interface, logger: Logger): """ @param can_interface: Denali Can Messenger object """ super().__init__() self.can_interface = can_interface + self.logger = logger if self.can_interface is not None: channel_id = DenaliChannels.hd_alarm_broadcast_ch_id @@ -312,7 +314,7 @@ # If there is content... if received_message is not None: - # print(received_message) + # self.logger.debug(received_message) if reset == RESET: str_res = "reset back to normal" else: @@ -343,24 +345,24 @@ message_id=self.MSG_ID_HD_ALARM_TIME_OVERRIDE, payload=payload) - print("override alarm time since activated") + self.logger.debug("override alarm time since activated") # Send message received_message = self.can_interface.send(message) # If there is content... if received_message is not None: - # print(received_message) + # self.logger.debug(received_message) if reset == RESET: str_res = "reset back to normal" else: str_res = str(time_ms) - print("Alarm time since activated overridden to " + str_res + " ms: " + str( + self.logger.debug("Alarm time since activated overridden to " + str_res + " ms: " + str( received_message['message'][DenaliMessage.PAYLOAD_START_INDEX])) # response payload is OK or not OK return received_message['message'][DenaliMessage.PAYLOAD_START_INDEX] else: - print("Timeout!!!!") + self.logger.debug("Timeout!!!!") return False def cmd_alarm_lamp_pattern_override(self, pattern, reset=NO_RESET): @@ -391,14 +393,14 @@ message_id=self.MSG_ID_HD_ALARM_LAMP_OVERRIDE, payload=payload) - print("Override Alarm Lamp Pattern") + self.logger.debug("Override Alarm Lamp Pattern") # Send message received_message = self.can_interface.send(message) # If there is content... if received_message is not None: - print(received_message) + self.logger.debug(received_message) if reset == RESET: str_pat = "reset back to normal" elif pattern == self.HD_ALARM_LAMP_PATTERN_OFF: @@ -415,12 +417,12 @@ str_pat = "low" else: str_pat = "manual" - print("Alarm lamp pattern overridden to " + str_pat + ":" + + self.logger.debug("Alarm lamp pattern overridden to " + str_pat + ":" + str(received_message['message'][DenaliMessage.PAYLOAD_START_INDEX])) # response payload is OK or not OK return received_message['message'][DenaliMessage.PAYLOAD_START_INDEX] else: - print("Timeout!!!!") + self.logger.debug("Timeout!!!!") return False def get_current_alarms_state(self): Index: dialin/hd/blood_flow.py =================================================================== diff -u -rde84f2977320059c68913d3cd6bbeb7837433c0c -rd4c07268dfcb79727bf9516db309944635895a0b --- dialin/hd/blood_flow.py (.../blood_flow.py) (revision de84f2977320059c68913d3cd6bbeb7837433c0c) +++ dialin/hd/blood_flow.py (.../blood_flow.py) (revision d4c07268dfcb79727bf9516db309944635895a0b) @@ -20,6 +20,7 @@ from .constants import RESET, NO_RESET from ..utils.base import _AbstractSubSystem, _publish import struct +from logging import Logger class HDBloodFlow(_AbstractSubSystem): @@ -56,15 +57,15 @@ START_POS_PWM_DC = END_POS_MEAS_MC_CURR END_POS_PWM_DC = START_POS_PWM_DC + 4 - def __init__(self, can_interface=None): + def __init__(self, can_interface, logger: Logger): """ HD_BloodFlow constructor @param outer_instance: reference to the HD (outer) class. """ super().__init__() - self.can_interface = can_interface + self.logger = logger if self.can_interface is not None: channel_id = DenaliChannels.hd_sync_broadcast_ch_id @@ -195,25 +196,25 @@ message_id=self.MSG_ID_HD_BLOOD_FLOW_SET_RATE_OVERRIDE, payload=payload) - print("override blood flow set point") + self.logger.debug("override blood flow set point") # Send message received_message = self.can_interface.send(message) # If there is content... if received_message is not None: - # print(received_message) + # self.logger.debug(received_message) if reset == RESET: str_res = "reset back to normal" else: str_res = str(flow) - print( + self.logger.debug( "Blood flow set point overridden to " + str_res + " mL/min: " + str(received_message['message'][DenaliMessage.PAYLOAD_START_INDEX])) # response payload is OK or not OK return received_message['message'][DenaliMessage.PAYLOAD_START_INDEX] else: - print("Timeout!!!!") + self.logger.debug("Timeout!!!!") return False def cmd_blood_flow_measured_override(self, flow, reset=NO_RESET): @@ -235,24 +236,24 @@ message_id=self.MSG_ID_HD_BLOOD_FLOW_MEAS_RATE_OVERRIDE, payload=payload) - print("override measured blood flow") + self.logger.debug("override measured blood flow") # Send message received_message = self.can_interface.send(message) # If there is content... if received_message is not None: - # print(received_message) + # self.logger.debug(received_message) if reset == RESET: str_res = "reset back to normal" else: str_res = str(flow) - print("Blood flow (measured)) overridden to " + str_res + " mL/min: " + + self.logger.debug("Blood flow (measured)) overridden to " + str_res + " mL/min: " + str(received_message['message'][DenaliMessage.PAYLOAD_START_INDEX])) # response payload is OK or not OK return received_message['message'][DenaliMessage.PAYLOAD_START_INDEX] else: - print("Timeout!!!!") + self.logger.debug("Timeout!!!!") return False def cmd_blood_pump_mc_measured_speed_override(self, speed, reset=NO_RESET): @@ -275,24 +276,24 @@ message_id=self.MSG_ID_HD_BLOOD_PUMP_MC_MEAS_SPEED_OVERRIDE, payload=payload) - print("override measured blood pump motor controller speed") + self.logger.debug("override measured blood pump motor controller speed") # Send message received_message = self.can_interface.send(message) # If there is content... if received_message is not None: - # print(received_message) + # self.logger.debug(received_message) if reset == RESET: str_res = "reset back to normal" else: str_res = str(speed) - print("Blood pump MC speed (measured) overridden to " + str_res + " RPM: " + + self.logger.debug("Blood pump MC speed (measured) overridden to " + str_res + " RPM: " + str(received_message['message'][DenaliMessage.PAYLOAD_START_INDEX])) # response payload is OK or not OK return received_message['message'][DenaliMessage.PAYLOAD_START_INDEX] else: - print("Timeout!!!!") + self.logger.debug("Timeout!!!!") return False def cmd_blood_pump_measured_current_override(self, curr, reset=NO_RESET): @@ -314,24 +315,24 @@ message_id=self.MSG_ID_HD_BLOOD_PUMP_MC_MEAS_CURRENT_OVERRIDE, payload=payload) - print("override measured blood pump motor controller current") + self.logger.debug("override measured blood pump motor controller current") # Send message received_message = self.can_interface.send(message) # If there is content... if received_message is not None: - # print(received_message) + # self.logger.debug(received_message) if reset == RESET: str_res = "reset back to normal" else: str_res = str(curr) - print("Blood pump MC current (measured) overridden to " + str_res + " mA: " + + self.logger.debug("Blood pump MC current (measured) overridden to " + str_res + " mA: " + str(received_message['message'][DenaliMessage.PAYLOAD_START_INDEX])) # response payload is OK or not OK return received_message['message'][DenaliMessage.PAYLOAD_START_INDEX] else: - print("Timeout!!!!") + self.logger.debug("Timeout!!!!") return False def cmd_blood_pump_measured_speed_override(self, speed, reset=NO_RESET): @@ -354,24 +355,24 @@ message_id=self.MSG_ID_HD_BLOOD_PUMP_MEAS_SPEED_OVERRIDE, payload=payload) - print("override measured blood pump speed") + self.logger.debug("override measured blood pump speed") # Send message received_message = self.can_interface.send(message) # If there is content... if received_message is not None: - # print(received_message) + # self.logger.debug(received_message) if reset == RESET: str_res = "reset back to normal" else: str_res = str(speed) - print("Blood pump speed (measured) overridden to " + str_res + " RPM: " + + self.logger.debug("Blood pump speed (measured) overridden to " + str_res + " RPM: " + str(received_message['message'][DenaliMessage.PAYLOAD_START_INDEX])) # response payload is OK or not OK return received_message['message'][DenaliMessage.PAYLOAD_START_INDEX] else: - print("Timeout!!!!") + self.logger.debug("Timeout!!!!") return False def cmd_blood_pump_rotor_measured_speed_override(self, speed, reset=NO_RESET): @@ -394,24 +395,24 @@ message_id=self.MSG_ID_HD_BLOOD_PUMP_ROTOR_MEAS_SPEED_OVERRIDE, payload=payload) - print("override measured blood pump rotor speed") + self.logger.debug("override measured blood pump rotor speed") # Send message received_message = self.can_interface.send(message) # If there is content... if received_message is not None: - # print(received_message) + # self.logger.debug(received_message) if reset == RESET: str_res = "reset back to normal" else: str_res = str(speed) - print("Blood pump rotor speed (measured) overridden to " + str_res + " RPM: " + + self.logger.debug("Blood pump rotor speed (measured) overridden to " + str_res + " RPM: " + str(received_message['message'][DenaliMessage.PAYLOAD_START_INDEX])) # response payload is OK or not OK return received_message['message'][DenaliMessage.PAYLOAD_START_INDEX] else: - print("Timeout!!!!") + self.logger.debug("Timeout!!!!") return False def cmd_blood_flow_broadcast_interval_override(self, ms, reset=NO_RESET): @@ -434,22 +435,22 @@ message_id=self.MSG_ID_HD_BLOOD_FLOW_PUBLISH_INTERVAL_OVERRIDE, payload=payload) - print("override blood flow broadcast interval") + self.logger.debug("override blood flow broadcast interval") # Send message received_message = self.can_interface.send(message) # If there is content... if received_message is not None: - # print(received_message) + # self.logger.debug(received_message) if reset == RESET: str_res = "reset back to normal: " else: str_res = str(ms) + " ms: " - print("Blood flow broadcast interval overridden to " + str_res + + self.logger.debug("Blood flow broadcast interval 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: - print("Timeout!!!!") + self.logger.debug("Timeout!!!!") return False Index: dialin/hd/buttons.py =================================================================== diff -u -rde84f2977320059c68913d3cd6bbeb7837433c0c -rd4c07268dfcb79727bf9516db309944635895a0b --- dialin/hd/buttons.py (.../buttons.py) (revision de84f2977320059c68913d3cd6bbeb7837433c0c) +++ dialin/hd/buttons.py (.../buttons.py) (revision d4c07268dfcb79727bf9516db309944635895a0b) @@ -18,6 +18,7 @@ from ..utils.conversions import integer_to_bytearray from .constants import RESET, NO_RESET from ..utils.base import _AbstractSubSystem, _publish +from logging import Logger class HDButtons(_AbstractSubSystem): @@ -29,16 +30,16 @@ MSG_ID_HD_OFF_BUTTON_OVERRIDE = 0x8002 MSG_ID_HD_STOP_BUTTON_OVERRIDE = 0x8003 - def __init__(self, can_interface): + def __init__(self, can_interface, logger: Logger): """ HD_Buttons constructor @param can_interface: the denali can interface object """ super().__init__() - self.can_interface = can_interface + self.logger = logger def cmd_off_button_override(self, state, reset=NO_RESET): """ @@ -61,7 +62,7 @@ message_id=self.MSG_ID_HD_OFF_BUTTON_OVERRIDE, payload=payload) - print("override off button") + self.logger.debug("override off button") # Send message received_message = self.can_interface.send(message) @@ -73,12 +74,12 @@ else: str_res = ("pressed" if state != 0 else "released") - print("Off button overridden to " + str_res + ":" + + self.logger.debug("Off button 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: - print("Timeout!!!!") + self.logger.debug("Timeout!!!!") return False def cmd_stop_button_override(self, state, reset=NO_RESET): @@ -102,7 +103,7 @@ message_id=self.MSG_ID_HD_STOP_BUTTON_OVERRIDE, payload=payload) - print("override stop button") + self.logger.debug("override stop button") # Send message received_message = self.can_interface.send(message) @@ -113,11 +114,11 @@ str_res = "reset back to normal" else: str_res = ("pressed" if state != 0 else "released") - print("Stop button overridden to " + str_res + ":" + + self.logger.debug("Stop button 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: - print("Timeout!!!!") + self.logger.debug("Timeout!!!!") return False Index: dialin/hd/dialysate_inlet_flow.py =================================================================== diff -u -rde84f2977320059c68913d3cd6bbeb7837433c0c -rd4c07268dfcb79727bf9516db309944635895a0b --- dialin/hd/dialysate_inlet_flow.py (.../dialysate_inlet_flow.py) (revision de84f2977320059c68913d3cd6bbeb7837433c0c) +++ dialin/hd/dialysate_inlet_flow.py (.../dialysate_inlet_flow.py) (revision d4c07268dfcb79727bf9516db309944635895a0b) @@ -20,6 +20,7 @@ from ..utils.conversions import integer_to_bytearray, float_to_bytearray from .constants import RESET, NO_RESET from ..utils.base import _AbstractSubSystem, _publish +from logging import Logger class HDDialysateInletFlow(_AbstractSubSystem): """ @@ -55,13 +56,14 @@ START_POS_PWM_DC = END_POS_MEAS_MC_CURR END_POS_PWM_DC = START_POS_PWM_DC + 4 - def __init__(self, can_interface=None): + def __init__(self, can_interface, logger: Logger): """ HD_DialysateFlow constructor """ super().__init__() self.can_interface = can_interface + self.logger = logger if self.can_interface is not None: channel_id = DenaliChannels.hd_sync_broadcast_ch_id @@ -193,25 +195,25 @@ message_id=self.MSG_ID_HD_DIAL_IN_FLOW_SET_RATE_OVERRIDE, payload=payload) - print("override dialysate flow set point") + self.logger.debug("override dialysate flow set point") # Send message received_message = self.can_interface.send(message) # If there is content... if received_message is not None: - # print(received_message) + # self.logger.debug(received_message) if reset == RESET: str_res = "reset back to normal" else: str_res = str(flow) - print( + self.logger.debug( "Dialysate flow set point overridden to " + str_res + " mL/min: " + str(received_message['message'][DenaliMessage.PAYLOAD_START_INDEX])) # response payload is OK or not OK return received_message['message'][DenaliMessage.PAYLOAD_START_INDEX] else: - print("Timeout!!!!") + self.logger.debug("Timeout!!!!") return False def cmd_dialysate_inlet_flow_measured_override(self, flow, reset=NO_RESET): @@ -233,24 +235,24 @@ message_id=self.MSG_ID_HD_DIAL_IN_FLOW_MEAS_RATE_OVERRIDE, payload=payload) - print("override measured dialysate flow") + self.logger.debug("override measured dialysate flow") # Send message received_message = self.can_interface.send(message) # If there is content... if received_message is not None: - # print(received_message) + # self.logger.debug(received_message) if reset == RESET: str_res = "reset back to normal" else: str_res = str(flow) - print("Dialysate flow (measured)) overridden to " + str_res + " mL/min: " + + self.logger.debug("Dialysate flow (measured)) overridden to " + str_res + " mL/min: " + str(received_message['message'][DenaliMessage.PAYLOAD_START_INDEX])) # response payload is OK or not OK return received_message['message'][DenaliMessage.PAYLOAD_START_INDEX] else: - print("Timeout!!!!") + self.logger.debug("Timeout!!!!") return False def cmd_dialysate_inlet_pump_mc_measured_speed_override(self, speed, reset=NO_RESET): @@ -273,24 +275,24 @@ message_id=self.MSG_ID_HD_DIAL_IN_PUMP_MC_MEAS_SPEED_OVERRIDE, payload=payload) - print("override measured dialysate inlet pump motor controller speed") + self.logger.debug("override measured dialysate inlet pump motor controller speed") # Send message received_message = self.can_interface.send(message) # If there is content... if received_message is not None: - # print(received_message) + # self.logger.debug(received_message) if reset == RESET: str_res = "reset back to normal" else: str_res = str(speed) - print("Dialysate pump MC speed (measured) overridden to " + str_res + " RPM: " + + self.logger.debug("Dialysate pump MC speed (measured) overridden to " + str_res + " RPM: " + str(received_message['message'][DenaliMessage.PAYLOAD_START_INDEX])) # response payload is OK or not OK return received_message['message'][DenaliMessage.PAYLOAD_START_INDEX] else: - print("Timeout!!!!") + self.logger.debug("Timeout!!!!") return False def cmd_dialysate_inlet_pump_measured_current_override(self, curr, reset=NO_RESET): @@ -312,24 +314,24 @@ message_id=self.MSG_ID_HD_DIAL_IN_PUMP_MC_MEAS_CURRENT_OVERRIDE, payload=payload) - print("override measured dialysate inlet pump motor controller current") + self.logger.debug("override measured dialysate inlet pump motor controller current") # Send message received_message = self.can_interface.send(message) # If there is content... if received_message is not None: - # print(received_message) + # self.logger.debug(received_message) if reset == RESET: str_res = "reset back to normal" else: str_res = str(curr) - print("Dialysate inlet pump MC current (measured) overridden to " + str_res + " mA: " + + self.logger.debug("Dialysate inlet pump MC current (measured) overridden to " + str_res + " mA: " + str(received_message['message'][DenaliMessage.PAYLOAD_START_INDEX])) # response payload is OK or not OK return received_message['message'][DenaliMessage.PAYLOAD_START_INDEX] else: - print("Timeout!!!!") + self.logger.debug("Timeout!!!!") return False def cmd_dialysate_inlet_pump_measured_speed_override(self, speed, reset=NO_RESET): @@ -352,24 +354,24 @@ message_id=self.MSG_ID_HD_DIAL_IN_PUMP_MEAS_SPEED_OVERRIDE, payload=payload) - print("override measured dialysate inlet pump speed") + self.logger.debug("override measured dialysate inlet pump speed") # Send message received_message = self.can_interface.send(message) # If there is content... if received_message is not None: - # print(received_message) + # self.logger.debug(received_message) if reset == RESET: str_res = "reset back to normal" else: str_res = str(speed) - print("Dialysate inlet pump speed (measured) overridden to " + str_res + " RPM: " + + self.logger.debug("Dialysate inlet pump speed (measured) overridden to " + str_res + " RPM: " + str(received_message['message'][DenaliMessage.PAYLOAD_START_INDEX])) # response payload is OK or not OK return received_message['message'][DenaliMessage.PAYLOAD_START_INDEX] else: - print("Timeout!!!!") + self.logger.debug("Timeout!!!!") return False def cmd_dialysate_inlet_pump_rotor_measured_speed_override(self, speed, reset=NO_RESET): @@ -392,24 +394,24 @@ message_id=self.MSG_ID_HD_DIAL_IN_PUMP_ROTOR_MEAS_SPEED_OVERRIDE, payload=payload) - print("override measured dialysate inlet pump rotor speed") + self.logger.debug("override measured dialysate inlet pump rotor speed") # Send message received_message = self.can_interface.send(message) # If there is content... if received_message is not None: - # print(received_message) + # self.logger.debug(received_message) if reset == RESET: str_res = "reset back to normal" else: str_res = str(speed) - print("Dialysate inlet pump rotor speed (measured) overridden to " + str_res + " RPM: " + + self.logger.debug("Dialysate inlet pump rotor speed (measured) overridden to " + str_res + " RPM: " + str(received_message['message'][DenaliMessage.PAYLOAD_START_INDEX])) # response payload is OK or not OK return received_message['message'][DenaliMessage.PAYLOAD_START_INDEX] else: - print("Timeout!!!!") + self.logger.debug("Timeout!!!!") return False def cmd_dialysate_inlet_flow_broadcast_interval_override(self, ms, reset=NO_RESET): @@ -432,7 +434,7 @@ message_id=self.MSG_ID_HD_DIAL_IN_FLOW_PUBLISH_INTERVAL_OVERRIDE, payload=payload) - print("override dialysate inlet flow broadcast interval") + self.logger.debug("override dialysate inlet flow broadcast interval") # Send message received_message = self.can_interface.send(message) @@ -443,10 +445,10 @@ str_res = "reset back to normal: " else: str_res = str(ms) + " ms: " - print("Dialysate inlet flow broadcast interval overridden to " + str_res + + self.logger.debug("Dialysate inlet flow broadcast interval 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: - print("Timeout!!!!") + self.logger.debug("Timeout!!!!") return False Index: dialin/hd/dialysate_outlet_flow.py =================================================================== diff -u -rde84f2977320059c68913d3cd6bbeb7837433c0c -rd4c07268dfcb79727bf9516db309944635895a0b --- dialin/hd/dialysate_outlet_flow.py (.../dialysate_outlet_flow.py) (revision de84f2977320059c68913d3cd6bbeb7837433c0c) +++ dialin/hd/dialysate_outlet_flow.py (.../dialysate_outlet_flow.py) (revision d4c07268dfcb79727bf9516db309944635895a0b) @@ -20,6 +20,7 @@ from ..utils.conversions import integer_to_bytearray, float_to_bytearray from .constants import RESET, NO_RESET from ..utils.base import _AbstractSubSystem, _publish +from logging import Logger class HDDialysateOutletFlow(_AbstractSubSystem): @@ -55,12 +56,13 @@ START_POS_PWM_DC = END_POS_MEAS_MC_CURR END_POS_PWM_DC = START_POS_PWM_DC + 4 - def __init__(self, can_interface=None): + def __init__(self, can_interface, logger: Logger): """ HDDialysateFlow constructor """ super().__init__() self.can_interface = can_interface + self.logger = logger if self.can_interface is not None: channel_id = DenaliChannels.hd_sync_broadcast_ch_id @@ -190,25 +192,25 @@ message_id=self.MSG_ID_HD_DIAL_OUT_UF_REF_VOLUME_OVERRIDE, payload=payload) - print("override UF reference volume with " + str(refvol) + "mL.") + self.logger.debug("override UF reference volume with " + str(refvol) + "mL.") # Send message received_message = self.can_interface.send(message) # If there is content... if received_message is not None: - # print(received_message) + # self.logger.debug(received_message) if reset == RESET: str_res = "reset back to normal. " else: str_res = "overridden to " + str(refvol) + " mL. " - print( + self.logger.debug( "UF reference volume " + 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: - print("Timeout!!!!") + self.logger.debug("Timeout!!!!") return False def cmd_dialysate_outlet_measured_uf_volume_override(self, measvol, reset=NO_RESET): @@ -230,24 +232,24 @@ message_id=self.MSG_ID_HD_DIAL_OUT_UF_MEAS_VOLUME_OVERRIDE, payload=payload) - print("override measured UF volume with " + str(measvol) + " mL.") + self.logger.debug("override measured UF volume with " + str(measvol) + " mL.") # Send message received_message = self.can_interface.send(message) # If there is content... if received_message is not None: - # print(received_message) + # self.logger.debug(received_message) if reset == RESET: str_res = "reset back to normal. " else: str_res = "overridden to " + str(measvol) + " mL. " - print("UF measured volume " + str_res + + self.logger.debug("UF measured volume " + 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: - print("Timeout!!!!") + self.logger.debug("Timeout!!!!") return False def cmd_dialysate_outlet_pump_mc_measured_speed_override(self, speed, reset=NO_RESET): @@ -270,24 +272,24 @@ message_id=self.measured_dialysate_outlet_pump_mc_speed, payload=payload) - print("override measured dialysate outlet pump motor controller speed to " + str(spd) + " RPM.") + self.logger.debug("override measured dialysate outlet pump motor controller speed to " + str(spd) + " RPM.") # Send message received_message = self.can_interface.send(message) # If there is content... if received_message is not None: - # print(received_message) + # self.logger.debug(received_message) if reset == RESET: str_res = "reset back to normal. " else: str_res = "overridden to " + str(speed) + " RPM. " - print("Dialysate outlet pump MC speed (measured) " + str_res + + self.logger.debug("Dialysate outlet pump MC speed (measured) " + 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: - print("Timeout!!!!") + self.logger.debug("Timeout!!!!") return False def cmd_dialysate_outlet_pump_measured_current_override(self, curr, reset=NO_RESET): @@ -309,24 +311,24 @@ message_id=self.MSG_ID_HD_DIAL_OUT_PUMP_MC_MEAS_CURRENT_OVERRIDE, payload=payload) - print("override measured dialysate outlet pump motor controller current") + self.logger.debug("override measured dialysate outlet pump motor controller current") # Send message received_message = self.can_interface.send(message) # If there is content... if received_message is not None: - # print(received_message) + # self.logger.debug(received_message) if reset == RESET: str_res = "reset back to normal. " else: str_res = "overridden to " + str(curr) + " mA. " - print("Dialysate outlet pump MC current (measured) " + str_res + + self.logger.debug("Dialysate outlet pump MC current (measured) " + 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: - print("Timeout!!!!") + self.logger.debug("Timeout!!!!") return False def cmd_dialysate_outlet_pump_measured_speed_override(self, speed, reset=NO_RESET): @@ -349,24 +351,24 @@ message_id=self.MSG_ID_HD_DIAL_OUT_PUMP_MEAS_SPEED_OVERRIDE, payload=payload) - print("override measured dialysate outlet pump speed to " + str(speed) + " RPM.") + self.logger.debug("override measured dialysate outlet pump speed to " + str(speed) + " RPM.") # Send message received_message = self.can_interface.send(message) # If there is content... if received_message is not None: - # print(received_message) + # self.logger.debug(received_message) if reset == RESET: str_res = "reset back to normal. " else: str_res = "overridden to " + str(speed) + " RPM. " - print("Dialysate outlet pump speed (measured) " + str_res + + self.logger.debug("Dialysate outlet pump speed (measured) " + 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: - print("Timeout!!!!") + self.logger.debug("Timeout!!!!") return False def cmd_dialysate_outlet_pump_rotor_measured_speed_override(self, speed, reset=NO_RESET): @@ -389,24 +391,24 @@ message_id=self.MSG_ID_HD_DIAL_OUT_PUMP_ROTOR_MEAS_SPEED_OVERRIDE, payload=payload) - print("override measured dialysate outlet pump rotor speed to " + str(speed) + " RPM.") + self.logger.debug("override measured dialysate outlet pump rotor speed to " + str(speed) + " RPM.") # Send message received_message = self.can_interface.send(message) # If there is content... if received_message is not None: - # print(received_message) + # self.logger.debug(received_message) if reset == RESET: str_res = "reset back to normal. " else: str_res = "overridden to " + str(speed) + " RPM. " - print("Dialysate outlet pump rotor speed (measured) " + str_res + + self.logger.debug("Dialysate outlet pump rotor speed (measured) " + 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: - print("Timeout!!!!") + self.logger.debug("Timeout!!!!") return False def cmd_dialysate_outlet_flow_broadcast_interval_override(self, ms, reset=NO_RESET): @@ -429,24 +431,24 @@ message_id=self.MSG_ID_HD_DIAL_OUT_FLOW_PUBLISH_INTERVAL_OVERRIDE, payload=payload) - print("override dialysate outlet flow broadcast interval to " + str(ms) + " ms.") + self.logger.debug("override dialysate outlet flow broadcast interval to " + str(ms) + " ms.") # Send message received_message = self.can_interface.send(message) # If there is content... if received_message is not None: - # print(received_message) + # self.logger.debug(received_message) if reset == RESET: str_res = "reset back to normal. " else: str_res = "overridden to " + str(ms) + " ms. " - print("Dialysate outlet flow broadcast interval " + str_res + + self.logger.debug("Dialysate outlet flow broadcast interval " + 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: - print("Timeout!!!!") + self.logger.debug("Timeout!!!!") return False def cmd_dialysate_outlet_pump_load_cell_weight_override(self, weight, sensor, reset=NO_RESET): @@ -477,24 +479,24 @@ message_id=self.MSG_ID_HD_DIAL_OUT_LOAD_CELL_WEIGHT_OVERRIDE, payload=payload) - print("override measured load cell weight to " + str(weight) + " grams for load cell # " + str(sensor)) + self.logger.debug("override measured load cell weight to " + str(weight) + " grams for load cell # " + str(sensor)) # Send message received_message = self.can_interface.send(message) # If there is content... if received_message is not None: - # print(received_message) + # self.logger.debug(received_message) if reset == RESET: str_res = "reset back to normal. " else: str_res = "overridden to " + str(weight) + " grams. " - print("Load cell # " + str(sensor) + " " + str_res + + self.logger.debug("Load cell # " + str(sensor) + " " + 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: - print("Timeout!!!!") + self.logger.debug("Timeout!!!!") return False def cmd_set_load_cell_weights(self, r1p, r1b, r2p, r2b): @@ -518,7 +520,7 @@ message_id=self.MSG_ID_HD_LOAD_CELL_READINGS, payload=payload) - print("measured load cell weights set.") + self.logger.debug("measured load cell weights set.") # Send message self.can_interface.send(message, 0) Index: dialin/hd/hemodialysis_device.py =================================================================== diff -u -r98be8e8e674df17d358ae22b77c59639e8c1b365 -rd4c07268dfcb79727bf9516db309944635895a0b --- dialin/hd/hemodialysis_device.py (.../hemodialysis_device.py) (revision 98be8e8e674df17d358ae22b77c59639e8c1b365) +++ dialin/hd/hemodialysis_device.py (.../hemodialysis_device.py) (revision d4c07268dfcb79727bf9516db309944635895a0b) @@ -28,7 +28,7 @@ from ..protocols.CAN import (DenaliMessage, DenaliCanMessenger, DenaliChannels) -from ..utils.base import _AbstractSubSystem, _publish +from ..utils.base import _AbstractSubSystem, _publish, _LogManager class HD(_AbstractSubSystem): @@ -64,19 +64,27 @@ def __init__(self, can_interface="can0", log_level=None): """ - HD constructor using can bus + HD object provides test/service commands for the HD sub-system. + >> hd_object = HD('can0') + >> hd_object = HD(can_interface='can0', log_level="DEBUG") + + Possible log levels: + ["DEBUG", "INFO", "WARNING", "ERROR", "CRITICAL", "CAN_ONLY", "PRINT_ONLY"] + @param can_interface: (str) CANBus interface name, e.g. "can0" - @return: HD object provides test/service commands for the HD sub-system. + @param log_level: (str) Logging level, defaults to None - >> hd_object = HD(can_interface='can0') - >> hd_object = HD('can0') """ super().__init__() + self._log_manager = _LogManager(log_level=log_level, log_filepath=self.__class__.__name__+".log") + self.logger = self._log_manager.logger # Create listener - self.can_interface = DenaliCanMessenger(can_interface=can_interface, log_level=log_level) + self.can_interface = DenaliCanMessenger(can_interface=can_interface, + logger=self.logger, + log_can=self._log_manager.log_level == "CAN_ONLY") self.can_interface.start() # register handler for HD operation mode broadcast messages @@ -91,16 +99,16 @@ self.hd_operation_sub_mode = 0 # Create command groups - self.alarms = HDAlarms(self.can_interface) - self.buttons = HDButtons(self.can_interface) - self.ui = HDUIProxy(self.can_interface) - self.rtc = HDRTC(self.can_interface) - self.watchdog = HDWatchdog(self.can_interface) - self.bloodflow = HDBloodFlow(self.can_interface) - self.dialysate_inlet_flow = HDDialysateInletFlow(self.can_interface) - self.dialysate_outlet_flow = HDDialysateOutletFlow(self.can_interface) - self.treatment = HDTreatment(self.can_interface) - self.pressure_occlusion = HDPressureOcclusion(self.can_interface) + self.alarms = HDAlarms(self.can_interface, self.logger) + self.buttons = HDButtons(self.can_interface, self.logger) + self.ui = HDUIProxy(self.can_interface, self.logger) + self.rtc = HDRTC(self.can_interface, self.logger) + self.watchdog = HDWatchdog(self.can_interface, self.logger) + self.bloodflow = HDBloodFlow(self.can_interface, self.logger) + self.dialysate_inlet_flow = HDDialysateInletFlow(self.can_interface, self.logger) + self.dialysate_outlet_flow = HDDialysateOutletFlow(self.can_interface, self.logger) + self.treatment = HDTreatment(self.can_interface, self.logger) + self.pressure_occlusion = HDPressureOcclusion(self.can_interface, self.logger) def get_operation_mode(self): """ @@ -139,19 +147,19 @@ message_id=self.MSG_ID_LOGIN_TO_HD, payload=list(map(int, map(ord, self.HD_LOGIN_PASSWORD)))) - print("Logging in...") + self.logger.debug("Logging in...") # Send message received_message = self.can_interface.send(message) if received_message is not None: if received_message['message'][DenaliMessage.PAYLOAD_START_INDEX] == 1: - print("Success: Logged In") + self.logger.debug("Success: Logged In") else: - print("Failure: Log In Failed.") + self.logger.debug("Failure: Log In Failed.") return received_message['message'][DenaliMessage.PAYLOAD_START_INDEX] else: - print("Login Timeout!!!!") + self.logger.debug("Login Timeout!!!!") return False def cmd_hd_safety_shutdown_override(self, active=True, reset=NO_RESET): @@ -180,17 +188,17 @@ message_id=self.MSG_ID_HD_SAFETY_SHUTDOWN_OVERRIDE, payload=payload) - print("overriding HD safety shutdown") + self.logger.debug("overriding HD safety shutdown") # Send message received_message = self.can_interface.send(message) if received_message is not None: if received_message['message'][DenaliMessage.PAYLOAD_START_INDEX] == 1: - print("Safety shutdown signal overridden") + self.logger.debug("Safety shutdown signal overridden") else: - print("Safety shutdown signal override failed.") + self.logger.debug("Safety shutdown signal override failed.") return received_message['message'][DenaliMessage.PAYLOAD_START_INDEX] else: - print("Timeout!!!!") + self.logger.debug("Timeout!!!!") return False Index: dialin/hd/pressure_occlusion.py =================================================================== diff -u -r98be8e8e674df17d358ae22b77c59639e8c1b365 -rd4c07268dfcb79727bf9516db309944635895a0b --- dialin/hd/pressure_occlusion.py (.../pressure_occlusion.py) (revision 98be8e8e674df17d358ae22b77c59639e8c1b365) +++ dialin/hd/pressure_occlusion.py (.../pressure_occlusion.py) (revision d4c07268dfcb79727bf9516db309944635895a0b) @@ -20,6 +20,7 @@ from ..utils.conversions import integer_to_bytearray, float_to_bytearray from .constants import RESET, NO_RESET from ..utils.base import _AbstractSubSystem, _publish +from logging import Logger class HDPressureOcclusion(_AbstractSubSystem): @@ -48,13 +49,14 @@ START_POS_DOP_OCCL = END_POS_DIP_OCCL END_POS_DOP_OCCL = START_POS_DOP_OCCL + 4 - def __init__(self, can_interface=None): + def __init__(self, can_interface, logger: Logger): """ HDPressureOcclusion constructor """ super().__init__() self.can_interface = can_interface + self.logger = logger if self.can_interface is not None: channel_id = DenaliChannels.hd_sync_broadcast_ch_id @@ -159,7 +161,7 @@ message_id=self.MSG_ID_HD_PRESSURE_ARTERIAL_OVERRIDE, payload=payload) - print("override measured arterial pressure") + self.logger.debug("override measured arterial pressure") # Send message received_message = self.can_interface.send(message) @@ -170,12 +172,12 @@ str_res = "reset back to normal. " else: str_res = str(pres) + " mmHg. " - print("Arterial pressure (measured)) overridden to " + str_res + + self.logger.debug("Arterial pressure (measured)) 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: - print("Timeout!!!!") + self.logger.debug("Timeout!!!!") return False def cmd_venous_pressure_measured_override(self, pres, reset=NO_RESET): @@ -198,7 +200,7 @@ message_id=self.MSG_ID_HD_PRESSURE_VENOUS_OVERRIDE, payload=payload) - print("override measured venous pressure") + self.logger.debug("override measured venous pressure") # Send message received_message = self.can_interface.send(message) @@ -209,12 +211,12 @@ str_res = "reset back to normal. " else: str_res = str(pres) + " mmHg. " - print("Venous pressure (measured) overridden to " + str_res + + self.logger.debug("Venous pressure (measured) 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: - print("Timeout!!!!") + self.logger.debug("Timeout!!!!") return False def cmd_blood_pump_measured_occlusion_override(self, occl, reset=NO_RESET): @@ -236,7 +238,7 @@ message_id=self.MSG_ID_HD_OCCLUSION_BLOOD_PUMP_OVERRIDE, payload=payload) - print("override measured blood pump occlusion pressure") + self.logger.debug("override measured blood pump occlusion pressure") # Send message received_message = self.can_interface.send(message) @@ -247,12 +249,12 @@ str_res = "reset back to normal. " else: str_res = str(occl) + " mmHg. " - print("Blood pump occlusion pressure (measured) overridden to " + str_res + + self.logger.debug("Blood pump occlusion pressure (measured) 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: - print("Timeout!!!!") + self.logger.debug("Timeout!!!!") return False def cmd_dialysate_inlet_pump_measured_occlusion_override(self, occl, reset=NO_RESET): @@ -275,7 +277,7 @@ message_id=self.MSG_ID_HD_OCCLUSION_DIAL_IN_PUMP_OVERRIDE, payload=payload) - print("override measured dialysate inlet pump occlusion pressure") + self.logger.debug("override measured dialysate inlet pump occlusion pressure") # Send message received_message = self.can_interface.send(message) @@ -286,12 +288,12 @@ str_res = "reset back to normal. " else: str_res = str(occl) + " mmHg. " - print("Dialysate inlet pump occlusion pressure (measured) overridden to " + str_res + + self.logger.debug("Dialysate inlet pump occlusion pressure (measured) 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: - print("Timeout!!!!") + self.logger.debug("Timeout!!!!") return False def cmd_dialysate_outlet_pump_measured_occlusion_override(self, occl, reset=NO_RESET): @@ -314,7 +316,7 @@ message_id=self.MSG_ID_HD_OCCLUSION_DIAL_OUT_PUMP_OVERRIDE, payload=payload) - print("override measured dialysate outlet pump occlusion pressure") + self.logger.debug("override measured dialysate outlet pump occlusion pressure") # Send message received_message = self.can_interface.send(message) @@ -325,12 +327,12 @@ str_res = "reset back to normal. " else: str_res = str(occl) + " mmHg. " - print("Dialysate outlet pump occlusion pressure (measured) overridden to " + str_res + + self.logger.debug("Dialysate outlet pump occlusion pressure (measured) 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: - print("Timeout!!!!") + self.logger.debug("Timeout!!!!") return False def cmd_pressure_occlusion_broadcast_interval_override(self, ms, reset=NO_RESET): @@ -353,7 +355,7 @@ message_id=self.MSG_ID_HD_PRES_OCCL_SEND_INTERVAL_OVERRIDE, payload=payload) - print("override pressure/occlusion broadcast interval") + self.logger.debug("override pressure/occlusion broadcast interval") # Send message received_message = self.can_interface.send(message) @@ -364,12 +366,12 @@ str_res = "reset back to normal: " else: str_res = str(ms) + " ms: " - print("Pressure/occlusion broadcast interval overridden to " + str_res + + self.logger.debug("Pressure/occlusion broadcast interval 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: - print("Timeout!!!!") + self.logger.debug("Timeout!!!!") return False # TEST CODE *************************************** Index: dialin/hd/watchdog.py =================================================================== diff -u -r98be8e8e674df17d358ae22b77c59639e8c1b365 -rd4c07268dfcb79727bf9516db309944635895a0b --- dialin/hd/watchdog.py (.../watchdog.py) (revision 98be8e8e674df17d358ae22b77c59639e8c1b365) +++ dialin/hd/watchdog.py (.../watchdog.py) (revision d4c07268dfcb79727bf9516db309944635895a0b) @@ -19,6 +19,7 @@ from ..utils.conversions import integer_to_bytearray from .constants import RESET, NO_RESET from ..utils.base import _AbstractSubSystem, _publish +from logging import Logger class HDWatchdog(_AbstractSubSystem): @@ -29,15 +30,15 @@ # watchdog message IDs MSG_ID_HD_WD_CHECKIN_OVERRIDE = 0x8005 - def __init__(self, can_interface): + def __init__(self, can_interface, logger: Logger): """ @param can_interface: the denali can interface object """ super().__init__() - self.can_interface = can_interface + self.logger = logger def cmd_watchdog_task_check_in_override(self, state, task, reset=NO_RESET): """ @@ -62,22 +63,22 @@ message_id=self.MSG_ID_HD_WD_CHECKIN_OVERRIDE, payload=payload) - print("override watchdog task check-in state") + self.logger.debug("override watchdog task check-in state") # Send message received_message = self.can_interface.send(message) # If there is content... if received_message is not None: - # print(received_message) + # self.logger.debug(received_message) if reset == RESET: str_res = "reset back to normal" else: str_res = ("checked in" if state != 0 else "not checked in") - print("watchdog task check-in overridden to " + str_res + ":" + + self.logger.debug("watchdog task check-in 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: - print("Timeout!!!!") + self.logger.debug("Timeout!!!!") return False