Index: dialin/hd/accelerometer.py =================================================================== diff -u -racd09d02879e8add4cf7f694f5db8e423a76c341 -reed13ddfba5bd65563145b6e5b9a882da851878e --- dialin/hd/accelerometer.py (.../accelerometer.py) (revision acd09d02879e8add4cf7f694f5db8e423a76c341) +++ dialin/hd/accelerometer.py (.../accelerometer.py) (revision eed13ddfba5bd65563145b6e5b9a882da851878e) @@ -63,6 +63,7 @@ self.can_interface.register_receiving_publication_function(channel_id, msg_id, self._handler_accelerometer_sync) + self.hd_accel_timestamp = 0.0 self.vector = self.AccelerometerVector() self.vector_max = self.AccelerometerVector() self.tilts = self.AccelerometerVector() @@ -89,11 +90,12 @@ return self.tilts @publish([ + "hd_accel_timestamp", "vector", "vector_max", "tilts" ]) - def _handler_accelerometer_sync(self, message): + def _handler_accelerometer_sync(self, message,timestamp=0.0): """ Handles published accelerometer data messages. Accelerometer data are captured for reference. @@ -125,6 +127,7 @@ z = struct.unpack('f', bytearray( message['message'][MsgFieldPositions.START_POS_FIELD_9:MsgFieldPositions.END_POS_FIELD_9])) self.tilts = self.AccelerometerVector(x[0], y[0], z[0]) + self.hd_accel_timestamp = timestamp def cmd_accel_vector_override(self, axis: int, mag: float, reset: int = NO_RESET) -> int: """ Index: dialin/hd/air_bubbles.py =================================================================== diff -u -racd09d02879e8add4cf7f694f5db8e423a76c341 -reed13ddfba5bd65563145b6e5b9a882da851878e --- dialin/hd/air_bubbles.py (.../air_bubbles.py) (revision acd09d02879e8add4cf7f694f5db8e423a76c341) +++ dialin/hd/air_bubbles.py (.../air_bubbles.py) (revision eed13ddfba5bd65563145b6e5b9a882da851878e) @@ -58,6 +58,7 @@ self.can_interface.register_receiving_publication_function(channel_id, msg_id, self._handler_air_bubbles_data_sync) + self.hd_air_bubbles_timestamp = 0.0 # Initialize status of ADV air bubble detectors to fluid (no air bubble) detected self.air_bubbles_status = [self.FLUID_DETECTED_STATUS] @@ -84,8 +85,8 @@ return self.air_bubbles_state[index] - @publish("air_bubbles_data") - def _handler_air_bubbles_data_sync(self, message): + @publish(["hd_air_bubbles_timestamp", "air_bubbles_status", "air_bubbles_state"]) + def _handler_air_bubbles_data_sync(self, message, timestamp=0.0): """ Handles published air bubbles data messages. Air bubble status and state are captured for ADV detector. @@ -101,6 +102,7 @@ self.air_bubbles_status = [adv_status[0]] self.air_bubbles_state = [adv_state[0]] + self.hd_air_bubbles_timestamp = timestamp def cmd_air_bubble_status_override(self, status: int, index: int, reset: int = NO_RESET) -> int: """ Index: dialin/hd/air_pump.py =================================================================== diff -u -r45ef5740d52d0f744175ace8312d62c023abc1b9 -reed13ddfba5bd65563145b6e5b9a882da851878e --- dialin/hd/air_pump.py (.../air_pump.py) (revision 45ef5740d52d0f744175ace8312d62c023abc1b9) +++ dialin/hd/air_pump.py (.../air_pump.py) (revision eed13ddfba5bd65563145b6e5b9a882da851878e) @@ -47,6 +47,7 @@ self._handler_air_pump_sync) self.air_pump_state = 0 + self.hd_air_pump_timestamp = 0.0 def get_air_pump_state(self): """ @@ -56,8 +57,8 @@ """ return self.air_pump_state - @publish(["air_pump_state"]) - def _handler_air_pump_sync(self, message): + @publish(["hd_air_pump_timestamp", "air_pump_state"]) + def _handler_air_pump_sync(self, message, timestamp=0.0): """ Handles published air pump data messages. @@ -68,6 +69,7 @@ message['message'][MsgFieldPositions.START_POS_FIELD_1:MsgFieldPositions.END_POS_FIELD_1])) self.air_pump_state = aps[0] + self.hd_air_pump_timestamp = timestamp def cmd_air_pump_set_state(self, state: int) -> int: """ Index: dialin/hd/air_trap.py =================================================================== diff -u -r858a23ec52b7a982ca68588a80a39a775d16a315 -reed13ddfba5bd65563145b6e5b9a882da851878e --- dialin/hd/air_trap.py (.../air_trap.py) (revision 858a23ec52b7a982ca68588a80a39a775d16a315) +++ dialin/hd/air_trap.py (.../air_trap.py) (revision eed13ddfba5bd65563145b6e5b9a882da851878e) @@ -56,6 +56,7 @@ self.lower_level = self.AIR_DETECTED_AT_LEVEL self.upper_level = self.AIR_DETECTED_AT_LEVEL + self.hd_air_trap_timestamp = 0.0 def get_air_trap_levels(self): """ @@ -81,8 +82,8 @@ """ return self.upper_level - @publish(["lower_level", "upper_level"]) - def _handler_air_trap_sync(self, message): + @publish(["hd_air_trap_timestamp", "lower_level", "upper_level"]) + def _handler_air_trap_sync(self, message, timestamp=0.0): """ Handles published air trap data messages. Air trap data are captured for reference. @@ -98,6 +99,7 @@ self.lower_level = lower[0] self.upper_level = upper[0] + self.hd_air_trap_timestamp = timestamp def cmd_air_trap_level_sensor_override(self, sensor: int, detected: int, reset: int = NO_RESET) -> int: """