feat(oled): fold CtrlWake + brightness persistence onto native-trigger firmware (v0.6.12)
Cherry-picks ONLY the two separable good features from the withdrawn
v0.6.11 (commit 71cead4) — the `controller_wakes_display` (CtrlWake /
OLED-sleep-while-playing) toggle and `screen_brightness` persistence —
onto the verified-working native-trigger build.
The v0.6.11 regressions are intentionally NOT carried over:
- 71cead4's state_mgr.cpp trigger-FFB allow-bit mirror (#11 suspect)
- all of 84393c0's audio resampler retiming + config audio-defaults
+ chunked-SPI flush (#12 suspect)
Touches only src/config.{h,cpp} and src/oled.cpp, so the trigger and
audio code paths compile byte-identical to the tested firmware and
cannot regress. Two new Config_body fields append at the struct tail
(erased flash -> clamped to defaults by config_valid, clean upgrade).
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Opus 4.8
parent
00da3d6a18
commit
9cabdca3f5
@@ -44,6 +44,16 @@ struct __attribute__((packed)) Config_body {
|
||||
// over BT and the dongle decodes it to the USB capture endpoint. Costs extra
|
||||
// DS5 battery (keeps its audio subsystem awake), hence the toggle.
|
||||
uint8_t bt_mic_enable;
|
||||
// OLED brightness, as an index into kBrightLevels[] (src/oled.cpp). Persisted
|
||||
// so the KEY1-long-press brightness choice survives a power cycle. Erased
|
||||
// flash (0xFF) → clamped to 0 (full brightness) by config_valid. Issue #9.
|
||||
uint8_t screen_brightness;
|
||||
// When 0, controller input no longer keeps the OLED awake — only the OLED's
|
||||
// own KEY0/KEY1 do — so the dim/off timers actually count down during
|
||||
// gameplay and the panel can sleep while the controller is in use. Default 1
|
||||
// preserves the original "any controller activity wakes the screen"
|
||||
// behavior. Issues #8 (dim timeout never fired during play) and #9.
|
||||
uint8_t controller_wakes_display;
|
||||
};
|
||||
|
||||
struct __attribute__((packed)) Config {
|
||||
|
||||
Reference in New Issue
Block a user