Index: dialin/dg/dialysate_generator.py =================================================================== diff -u -r7855e1d1ce4e02adf55f4ac67e99ee024cb69107 -r0dfd363489d3d96e3365ff1e1f4fabbac3b2fd5f --- dialin/dg/dialysate_generator.py (.../dialysate_generator.py) (revision 7855e1d1ce4e02adf55f4ac67e99ee024cb69107) +++ dialin/dg/dialysate_generator.py (.../dialysate_generator.py) (revision 0dfd363489d3d96e3365ff1e1f4fabbac3b2fd5f) @@ -7,8 +7,8 @@ # # @file dialysate_generator.py # -# @author (last) Quang Nguyen -# @date (last) 09-Sep-2020 +# @author (last) Peter Lucia +# @date (last) 10-Nov-2020 # @author (original) Peter Lucia # @date (original) 02-Apr-2020 # @@ -30,7 +30,7 @@ from ..utils.conversions import integer_to_bytearray from ..protocols.CAN import (DenaliCanMessenger, DenaliMessage, DenaliChannels) from ..utils.base import _AbstractSubSystem, _publish, _LogManager -from ..common.msg_defs import MsgIds, MsgFldPositions +from ..common.msg_defs import MsgIds, MsgFieldPositions class DG(_AbstractSubSystem): @@ -219,9 +219,9 @@ """ mode = struct.unpack('i', bytearray( - message['message'][MsgFldPositions.START_POS_FIELD_1:MsgFldPositions.END_POS_FIELD_1])) + message['message'][MsgFieldPositions.START_POS_FIELD_1:MsgFieldPositions.END_POS_FIELD_1])) smode = struct.unpack('i', bytearray( - message['message'][MsgFldPositions.START_POS_FIELD_2:MsgFldPositions.END_POS_FIELD_2])) + message['message'][MsgFieldPositions.START_POS_FIELD_2:MsgFieldPositions.END_POS_FIELD_2])) self.dg_operation_mode = mode[0] self.dg_operation_sub_mode = smode[0] Index: dialin/dg/hd_proxy.py =================================================================== diff -u -r3a4a3ca071c818acd40918e5d7a2400461e7cedb -r0dfd363489d3d96e3365ff1e1f4fabbac3b2fd5f --- dialin/dg/hd_proxy.py (.../hd_proxy.py) (revision 3a4a3ca071c818acd40918e5d7a2400461e7cedb) +++ dialin/dg/hd_proxy.py (.../hd_proxy.py) (revision 0dfd363489d3d96e3365ff1e1f4fabbac3b2fd5f) @@ -107,7 +107,7 @@ self.logger.debug("Timeout!!!!") return False - def cmd_drain(self, volume=200): + def cmd_drain(self, volume=200, tareLoadCell=False): """ Constructs and sends the drain command. Constraints: @@ -119,7 +119,8 @@ """ vol = integer_to_bytearray(volume) - payload = vol + tare = integer_to_bytearray(tareLoadCell) + payload = vol + tare message = DenaliMessage.build_message(channel_id=DenaliChannels.dialin_to_dg_ch_id, message_id=MsgIds.MSG_ID_DG_DRAIN_CMD.value,