Index: dialin/hd/blood_leak.py =================================================================== diff -u -r23701b1b99fa209da9d0f9f8a60c555d4a8277e6 -re406c6ede2c14c53f0dd3ab57739b805522d3a3a --- dialin/hd/blood_leak.py (.../blood_leak.py) (revision 23701b1b99fa209da9d0f9f8a60c555d4a8277e6) +++ dialin/hd/blood_leak.py (.../blood_leak.py) (revision e406c6ede2c14c53f0dd3ab57739b805522d3a3a) @@ -96,7 +96,6 @@ self.blood_leak_blood_detect = 0 self.blood_leak_intensity_moving_average = 0.0 self.blood_leak_time_elapsed_since_last_drift_zero_ms = 0 - self.blood_leak_time_elapsed_since_last_upper_zero_ms = 0 for cmd in EmbModeCommands.__members__: # Initialize all the embedded mode commands @@ -161,8 +160,6 @@ message['message'][MsgFieldPositions.START_POS_FIELD_7:MsgFieldPositions.END_POS_FIELD_7]))[0] self.blood_leak_time_elapsed_since_last_drift_zero_ms = struct.unpack('i', bytearray( message['message'][MsgFieldPositions.START_POS_FIELD_8:MsgFieldPositions.END_POS_FIELD_8]))[0] - self.blood_leak_time_elapsed_since_last_upper_zero_ms = struct.unpack('i', bytearray( - message['message'][MsgFieldPositions.START_POS_FIELD_9:MsgFieldPositions.END_POS_FIELD_9]))[0] self.hd_blood_leak_status_timestamp = timestamp def cmd_blood_leak_detector_override(self, detected: int, reset=NO_RESET): @@ -413,25 +410,30 @@ self.logger.debug("Timeout!!!!") return False - def cmd_blood_leak_zeroing_interval_in_minutes(self, value_mins: int, reset=NO_RESET): + def cmd_blood_leak_zeroing_interval_in_minutes(self, upper_interval: int, value_mins: int, reset=NO_RESET): """ Constructs and sends the blood leak zeroing interval in minutes Constraints: Must be logged into HD. + @param upper_interval: unsigned int - to override upper range or drift intervals (0 = drift interval, 1 = upper interval) @param value_mins: unsigned int - blood leak zeroing interval in minutes @param reset: integer - 1 to reset a previous override, 0 to override @return: 1 if successful, zero otherwise """ rst = integer_to_bytearray(reset) mins = integer_to_bytearray(value_mins) - payload = rst + mins + upper = integer_to_bytearray(upper_interval) + payload = rst + mins + upper message = DenaliMessage.build_message(channel_id=DenaliChannels.dialin_to_hd_ch_id, message_id=MsgIds.MSG_ID_HD_BLOOD_LEAK_ZEROING_INTERVAL_IN_MINS_OVERRIDE.value, payload=payload) + text = 'intensity drift' + if upper_interval == 1: + text = 'upper intensity' - self.logger.debug("Override blood leak zeroing interval to {} minute(s)".format(mins)) + self.logger.debug("Override blood leak zeroing {} interval to {} minute(s)".format(text,mins)) # Send message received_message = self.can_interface.send(message)