Index: leahi_dialin/ui/td_messaging.py =================================================================== diff -u -r1b42314e7ec473f90ea1343fe66e985a34fd3fda -r0aa779d653301a9f15c1f54e37bd7f66ab1a88b4 --- leahi_dialin/ui/td_messaging.py (.../td_messaging.py) (revision 1b42314e7ec473f90ea1343fe66e985a34fd3fda) +++ leahi_dialin/ui/td_messaging.py (.../td_messaging.py) (revision 0aa779d653301a9f15c1f54e37bd7f66ab1a88b4) @@ -513,7 +513,38 @@ payload=payload) self.can_interface.send(message, 0) - + + + def td_isolated_uf( self, + duration : int , + volume_goal : 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 volume_goal (int) : isolated UF volume goal (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(volume_goal ) + 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 ,