Persist global brightness settings.

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
2026-02-08 19:39:29 +13:00
parent 39390b2311
commit d82fd9e47c
2 changed files with 9 additions and 0 deletions

View File

@@ -1,6 +1,7 @@
from settings import Settings from settings import Settings
from machine import WDT from machine import WDT
from espnow import ESPNow from espnow import ESPNow
import utime
import network import network
from presets import Presets from presets import Presets
from utils import convert_and_reorder_colors from utils import convert_and_reorder_colors
@@ -11,6 +12,7 @@ print(settings)
presets = Presets(settings["led_pin"], settings["num_leds"]) presets = Presets(settings["led_pin"], settings["num_leds"])
presets.load() presets.load()
presets.b = settings.get("brightness", 255)
startup_preset = settings.get("startup_preset") startup_preset = settings.get("startup_preset")
if startup_preset: if startup_preset:
presets.select(startup_preset) presets.select(startup_preset)
@@ -18,6 +20,7 @@ if startup_preset:
wdt = WDT(timeout=10000) wdt = WDT(timeout=10000)
wdt.feed() wdt.feed()
last_brightness_save = 0
sta_if = network.WLAN(network.STA_IF) sta_if = network.WLAN(network.STA_IF)
sta_if.active(True) sta_if.active(True)
@@ -41,6 +44,11 @@ while True:
if "b" in data: if "b" in data:
try: try:
presets.b = max(0, min(255, int(data["b"]))) presets.b = max(0, min(255, int(data["b"])))
settings["brightness"] = presets.b
now = utime.ticks_ms()
if utime.ticks_diff(now, last_brightness_save) >= 500:
settings.save()
last_brightness_save = now
except (TypeError, ValueError): except (TypeError, ValueError):
pass pass
if "presets" in data: if "presets" in data:

View File

@@ -20,6 +20,7 @@ class Settings(dict):
self["debug"] = False self["debug"] = False
self["startup_preset"] = None self["startup_preset"] = None
self["brightness"] = 255
def save(self): def save(self):
try: try: