Index: leahi_dialin/ui/td_messaging.py =================================================================== diff -u -r09f9ad071f896bcd683045f55f067a2a7c901b7c -raaf710e4444fb18aea2166db84dce6b09d4caeee --- leahi_dialin/ui/td_messaging.py (.../td_messaging.py) (revision 09f9ad071f896bcd683045f55f067a2a7c901b7c) +++ leahi_dialin/ui/td_messaging.py (.../td_messaging.py) (revision aaf710e4444fb18aea2166db84dce6b09d4caeee) @@ -506,36 +506,6 @@ self.can_interface.send(message, 0) - def td_isolated_uf( self, - duration : int , - set_volume : int , - volume_delivered : int , - rate : int ): - """ - Broadcasts the current TD Ultrafiltration data (Msg ID: 0x3E, 62) - Args: - @param duration (int) : isolated UF duration (min) - @param set_volume (int) : isolated UF set volume (mL) - @param volume_delivered (int) : isolated UF volume delivered (mL) - @param rate (int) : isolated UF rate (mL/Hr) - @return: None - """ - if not self.can_enabled: - raise ValueError("CAN Interface is not enabled") - - payload = conversions.unsigned_integer_to_bytearray(duration ) - payload += conversions.unsigned_integer_to_bytearray(set_volume ) - payload += conversions.unsigned_integer_to_bytearray(volume_delivered ) - payload += conversions.unsigned_integer_to_bytearray(rate ) - - message = CAN.DenaliMessage.build_message( - channel_id=CAN.DenaliChannels.td_sync_broadcast_ch_id, - message_id=msg_ids.MsgIds.MSG_ID_TD_ISOLATED_UF_DATA.value, - payload=payload) - - self.can_interface.send(message, 0) - - def td_treatment_time( self, tx_duration_s : int , tx_elapsed_s : int , @@ -626,6 +596,62 @@ self.can_interface.send(message, 0) + + def td_blood_prime_progress(self, + target_volume : float , + delivered_volume : float ): + """ + Broadcasts blood prime data (Msg ID: 0x97, 151) + Args: + @param target_volume (float) : Target Volume + @param delivered_volume (float) : Delivered Volume + @return: None + """ + + if not self.can_enabled: + raise ValueError("CAN Interface is not enabled") + + payload = conversions.float_to_bytearray (target_volume ) + payload += conversions.float_to_bytearray (delivered_volume ) + + message = CAN.DenaliMessage.build_message( + channel_id=CAN.DenaliChannels.td_sync_broadcast_ch_id, + message_id=msg_ids.MsgIds.MSG_ID_TD_BLOOD_PRIME_PROGRESS_DATA.value, + payload=payload) + + self.can_interface.send(message, 0) + + + def td_isolated_uf( self, + duration : int , + set_volume : int , + volume_delivered : int , + rate : int ): + """ + Broadcasts the current TD Isolated Ultrafiltration data (Msg ID: 0x9A, 154) + Args: + @param duration (int) : isolated UF duration (min) + @param set_volume (int) : isolated UF set volume (mL) + @param volume_delivered (int) : isolated UF volume delivered (mL) + @param rate (int) : isolated UF rate (mL/Hr) + @return: None + """ + if not self.can_enabled: + raise ValueError("CAN Interface is not enabled") + + payload = conversions.unsigned_integer_to_bytearray(duration ) + payload += conversions.unsigned_integer_to_bytearray(set_volume ) + payload += conversions.unsigned_integer_to_bytearray(volume_delivered ) + payload += conversions.unsigned_integer_to_bytearray(rate ) + + message = CAN.DenaliMessage.build_message( + channel_id=CAN.DenaliChannels.td_sync_broadcast_ch_id, + message_id=msg_ids.MsgIds.MSG_ID_TD_ISOLATED_UF_DATA.value, + payload=payload) + + self.can_interface.send(message, 0) + + def td_versions(self, major: int, minor: int, micro: int, build: int, fpga_id: int, fpga_major: int, fpga_minor: int, fpga_lab: int, compatibility_rev: int):