From 3a61891197cd9bed96eb4f2d41f6f6a760a963af Mon Sep 17 00:00:00 2001 From: infiniteCable2 Date: Mon, 9 Feb 2026 19:04:39 +0100 Subject: [PATCH] Force Enable Torque Bar --- common/params_keys.h | 1 + selfdrive/ui/mici/layouts/settings/ictoggles.py | 3 +++ selfdrive/ui/mici/onroad/hud_renderer.py | 2 +- selfdrive/ui/ui_state.py | 2 ++ 4 files changed, 7 insertions(+), 1 deletion(-) diff --git a/common/params_keys.h b/common/params_keys.h index 6a1f029ca..d34d40bd0 100644 --- a/common/params_keys.h +++ b/common/params_keys.h @@ -145,6 +145,7 @@ inline static std::unordered_map keys = { {"BatteryDetails", {PERSISTENT, BOOL}}, {"ForceRHDForBSM", {PERSISTENT, BOOL}}, {"DisableCarSteerAlerts", {PERSISTENT, BOOL}}, + {"ForceShowTorqueBar", {PERSISTENT, BOOL}}, // --- sunnypilot params --- // {"ApiCache_DriveStats", {PERSISTENT, JSON}}, diff --git a/selfdrive/ui/mici/layouts/settings/ictoggles.py b/selfdrive/ui/mici/layouts/settings/ictoggles.py index 89eea6984..fcbbd4363 100644 --- a/selfdrive/ui/mici/layouts/settings/ictoggles.py +++ b/selfdrive/ui/mici/layouts/settings/ictoggles.py @@ -26,6 +26,7 @@ class ICTogglesLayoutMici(NavWidget): enable_smooth_steer = BigParamControl("Steer Smoothing", "EnableSmoothSteer") enable_dark_mode = BigParamControl("Dark Mode", "DarkMode") enable_onroad_screen_timer = BigParamControl("Onroad Screen Timeout", "DisableScreenTimer") + force_enable_torque_bar = BigParamControl("Force Enable Torque Bar", "ForceShowTorqueBar") self._scroller = Scroller([ @@ -40,6 +41,7 @@ class ICTogglesLayoutMici(NavWidget): enable_smooth_steer, enable_dark_mode, enable_onroad_screen_timer, + force_enable_torque_bar, ], snap_items=False) # Toggle lists @@ -55,6 +57,7 @@ class ICTogglesLayoutMici(NavWidget): ("EnableSmoothSteer", enable_smooth_steer), ("DarkMode", enable_dark_mode), ("DisableScreenTimer", enable_onroad_screen_timer), + ("ForceShowTorqueBar", force_enable_torque_bar), ) if ui_state.params.get_bool("ShowDebugInfo"): diff --git a/selfdrive/ui/mici/onroad/hud_renderer.py b/selfdrive/ui/mici/onroad/hud_renderer.py index 659d13fad..5d80af461 100644 --- a/selfdrive/ui/mici/onroad/hud_renderer.py +++ b/selfdrive/ui/mici/onroad/hud_renderer.py @@ -172,7 +172,7 @@ class HudRenderer(Widget): def _render(self, rect: rl.Rectangle) -> None: """Render HUD elements to the screen.""" - if ui_state.sm['controlsState'].lateralControlState.which() != 'angleState': + if ui_state.sm['controlsState'].lateralControlState.which() != 'angleState' or ui_state.force_enable_torque_bar: self._torque_bar.render(rect) if self.is_cruise_set: diff --git a/selfdrive/ui/ui_state.py b/selfdrive/ui/ui_state.py index cb9c9f128..bbc26d96b 100644 --- a/selfdrive/ui/ui_state.py +++ b/selfdrive/ui/ui_state.py @@ -88,6 +88,7 @@ class UIState(UIStateSP): self.dark_mode: bool = False self.onroad_screen_timeout: bool = False + self.force_enable_torque_bar: bool = False self.has_alert: bool = False self.has_status_change: bool = False self._status_prev: UIStatus = self.status @@ -205,6 +206,7 @@ class UIState(UIStateSP): self._param_update_time = time.monotonic() self.dark_mode = self.params.get_bool("DarkMode") self.onroad_screen_timeout = self.params.get_bool("DisableScreenTimer") + self.force_enable_torque_bar = self.params.get_bool("ForceShowTorqueBar") class Device(DeviceSP):