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 machine import WDT
from espnow import ESPNow
import utime
import network
from presets import Presets
from utils import convert_and_reorder_colors
@@ -11,6 +12,7 @@ print(settings)
presets = Presets(settings["led_pin"], settings["num_leds"])
presets.load()
presets.b = settings.get("brightness", 255)
startup_preset = settings.get("startup_preset")
if startup_preset:
presets.select(startup_preset)
@@ -18,6 +20,7 @@ if startup_preset:
wdt = WDT(timeout=10000)
wdt.feed()
last_brightness_save = 0
sta_if = network.WLAN(network.STA_IF)
sta_if.active(True)
@@ -41,6 +44,11 @@ while True:
if "b" in data:
try:
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):
pass
if "presets" in data:

View File

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