Merge remote-tracking branch 'upstream/master' into rl-update-state

pull/35546/head
Shane Smiskol 2 months ago
commit 5f65e57a56
  1. 11
      selfdrive/ui/layouts/settings/firehose.py
  2. 4
      selfdrive/ui/onroad/driver_state.py

@ -1,4 +1,5 @@
import pyray as rl
import json
import time
import threading
@ -40,7 +41,7 @@ class FirehoseLayout(Widget):
def __init__(self):
super().__init__()
self.params = Params()
self.segment_count = int(self.params.get(self.PARAM_KEY, encoding='utf8') or 0)
self.segment_count = self._get_segment_count()
self.scroll_panel = GuiScrollPanel()
self.running = True
@ -48,6 +49,14 @@ class FirehoseLayout(Widget):
self.update_thread.start()
self.last_update_time = 0
def _get_segment_count(self) -> int:
stats = self.params.get(self.PARAM_KEY, encoding='utf8')
try:
return int(json.loads(stats).get("firehose", 0))
except json.JSONDecodeError:
cloudlog.error(f"Failed to decode firehose stats: {stats}")
return 0
def __del__(self):
self.running = False
if self.update_thread and self.update_thread.is_alive():

@ -51,7 +51,6 @@ class DriverStateRenderer(Widget):
self.is_rhd = False
self.dm_fade_state = 0.0
self.state_updated = False
self.last_rect: rl.Rectangle = rl.Rectangle(0, 0, 0, 0)
self.driver_pose_vals = np.zeros(3, dtype=np.float32)
self.driver_pose_diff = np.zeros(3, dtype=np.float32)
self.driver_pose_sins = np.zeros(3, dtype=np.float32)
@ -112,9 +111,6 @@ class DriverStateRenderer(Widget):
"""Update the driver monitoring state based on model data"""
sm = ui_state.sm
if not sm.updated["driverMonitoringState"]:
if self.state_updated and (self._rect.x != self.last_rect.x or self._rect.y != self.last_rect.y or
self._rect.width != self.last_rect.width or self._rect.height != self.last_rect.height):
self._pre_calculate_drawing_elements(self._rect)
return
# Get monitoring state

Loading…
Cancel
Save