ui(raylib): set display power and brightness on init (#35060)

* add set_display_power to hardware.py

* set display power and brightness on app init
pull/35061/head
Cameron Clough 1 week ago committed by GitHub
parent e85d833a80
commit 196848c023
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
  1. 4
      system/hardware/base.py
  2. 3
      system/hardware/pc/hardware.py
  3. 7
      system/hardware/tici/hardware.py
  4. 4
      system/ui/lib/application.py

@ -130,6 +130,10 @@ class HardwareBase(ABC):
def get_thermal_config(self): def get_thermal_config(self):
return ThermalConfig() return ThermalConfig()
@abstractmethod
def set_display_power(self, on: bool):
pass
@abstractmethod @abstractmethod
def set_screen_brightness(self, percentage): def set_screen_brightness(self, percentage):
pass pass

@ -53,6 +53,9 @@ class Pc(HardwareBase):
def shutdown(self): def shutdown(self):
print("SHUTDOWN!") print("SHUTDOWN!")
def set_display_power(self, on):
pass
def set_screen_brightness(self, percentage): def set_screen_brightness(self, percentage):
pass pass

@ -341,6 +341,13 @@ class Tici(HardwareBase):
exhaust=exhaust, exhaust=exhaust,
case=case) case=case)
def set_display_power(self, on):
try:
with open("/sys/class/backlight/panel0-backlight/bl_power", "w") as f:
f.write("0" if on else "4")
except Exception:
pass
def set_screen_brightness(self, percentage): def set_screen_brightness(self, percentage):
try: try:
with open("/sys/class/backlight/panel0-backlight/max_brightness") as f: with open("/sys/class/backlight/panel0-backlight/max_brightness") as f:

@ -5,6 +5,7 @@ import pyray as rl
from enum import IntEnum from enum import IntEnum
from openpilot.common.basedir import BASEDIR from openpilot.common.basedir import BASEDIR
from openpilot.common.swaglog import cloudlog from openpilot.common.swaglog import cloudlog
from openpilot.system.hardware import HARDWARE
DEFAULT_FPS = 60 DEFAULT_FPS = 60
FPS_LOG_INTERVAL = 5 # Seconds between logging FPS drops FPS_LOG_INTERVAL = 5 # Seconds between logging FPS drops
@ -46,6 +47,9 @@ class GuiApplication:
def init_window(self, title: str, fps: int=DEFAULT_FPS): def init_window(self, title: str, fps: int=DEFAULT_FPS):
atexit.register(self.close) # Automatically call close() on exit atexit.register(self.close) # Automatically call close() on exit
HARDWARE.set_display_power(True)
HARDWARE.set_screen_brightness(65)
rl.set_config_flags(rl.ConfigFlags.FLAG_MSAA_4X_HINT | rl.ConfigFlags.FLAG_VSYNC_HINT) rl.set_config_flags(rl.ConfigFlags.FLAG_MSAA_4X_HINT | rl.ConfigFlags.FLAG_VSYNC_HINT)
rl.init_window(self._width, self._height, title) rl.init_window(self._width, self._height, title)
rl.set_target_fps(fps) rl.set_target_fps(fps)

Loading…
Cancel
Save