src.nth.io/

summaryrefslogtreecommitdiff
path: root/main/local_screens.h
diff options
context:
space:
mode:
authorLuke Hoersten <[email protected]>2026-06-14 16:41:03 -0500
committerLuke Hoersten <[email protected]>2026-06-14 16:41:03 -0500
commitc6ce4b3f46a1f1adf700306dadc9034a6a2ac0d3 (patch)
tree3bd6f0a3c2eea8b0095bd05549cae650fe166b40 /main/local_screens.h
parent6c1a26bdae63d152caa45023e8255561a22fc0e2 (diff)
M3 done: drop boot test, fold BOOT button into touch long-press
The Waveshare ESP32-P4-ETH board exposes BOOT on GPIO 35, but at runtime that pin is owned by the EMAC TXD1 signal. No usable GPIO is wired to a separate user button, so the BOOT-button task could never fire. Move both BOOT-button behaviours onto the touch panel: - ≥1.5s hold → 15s identity overlay (was BOOT short-press) - ≥5s hold → factory reset (was BOOT long-hold) Short tap (<500ms) still toggles wake/sleep. Long-press fires while the finger is still down so the user gets immediate feedback at each threshold. Also strip the R/G/B 6 s boot test sequence — the panel now renders correctly, so it's no longer useful diagnostically. Boot subsystem flags drop the trailing B column: [EMHDJT].
Diffstat (limited to 'main/local_screens.h')
-rw-r--r--main/local_screens.h5
1 files changed, 2 insertions, 3 deletions
diff --git a/main/local_screens.h b/main/local_screens.h
index f1e4876..e2d6ca1 100644
--- a/main/local_screens.h
+++ b/main/local_screens.h
@@ -15,7 +15,7 @@ esp_err_t local_screens_init(void);
// <current IP> ("no network" if no DHCP lease)
// <state> ("awake" / "asleep" / "unconfigured")
// Font scale is auto-picked to fit the longest line within 90% of width.
-// Shown on first boot, after factory reset, and as a 15s BOOT-button overlay.
+// Shown on first boot, after factory reset, and as a 15s touch-long-press overlay.
esp_err_t local_screens_show_ip(void);
// Render the loading screen — centered "Loading…" — shown on every wake
@@ -23,8 +23,7 @@ esp_err_t local_screens_show_ip(void);
esp_err_t local_screens_show_loading(void);
// Show the identity ("who am I") screen for `duration_ms`, then drop the
-// backlight off. Used by the BOOT button short-press (any state) and by
-// the touch handler when the device is unconfigured.
+// backlight off. Triggered by a ≥1.5s touch long-press in any state.
esp_err_t local_screens_overlay(uint32_t duration_ms);
// True while the identity overlay is currently shown (timer armed).