Add Waveshare ESP32-S3-Touch-LCD-2 support - #1029
Conversation
|
Thanks for creating this PR. I think the Waveshare support and the idle lock feature should be separated. The hardware changes are clear and testable, but the idle lock introduces a new global interaction model and a second touch-handling path. Before adding a separate idle/touch state machine, I'd like to understand what limitation in the existing wakeup_touch / first_touch_event_handler mechanism requires this approach. If the current implementation cannot handle this hardware or use case, I think we should first identify that as a bug or extension point and fix/extend the existing mechanism rather than introducing a parallel idle system. The idle lock feature may still be useful, but I think it deserves its own discussion and review because it affects user interaction across all devices, not just this Waveshare target. |
Summary
waveshare-esp32-s3-touch-lcd-2environment for the 16 MB flash / 8 MB PSRAM Waveshare SKU 29667config/guiWhy
The board could not be represented reliably by the existing standalone CST816 path because LovyanGFX already owns the touch controller for this display integration. Selecting the LovyanGFX touch adapter avoids competing controller instances and provides working coordinates and release events on the physical board.
The idle lock prevents accidental controls while retaining a deliberate hold-to-unlock gesture. The unlocking release is consumed, so it cannot activate the control underneath it.
Validation
pio run -e waveshare-esp32-s3-touch-lcd-2pio run -e cyd-2424s012_4MB(representative CST816/LovyanGFX regression build)Documentation PR: HASwitchPlate/openHASP-docs#54