Files
homeassistant_espscreen/docs/TEST_RESULTS_0232.md
T
Max Gramser b9e1dfbd95 Close cards through one path so the page swipe is never left blocked (0.2.32)
Read live on a Guition: every edge swipe was recognised but refused by the
"card open" check, because the light, climate and vacuum cards cleared
their overlay on close (X, tap beside the card, wake from standby) without
forgetting active_entity. One opened card blocked swiping until the next
layout change; the old whole-screen gesture and the CYD had the same gate.
Both boards now close cards through one script, close_cards, which hides
every overlay and clears that state; wake_display uses it too.

The Guition edge swipe now follows LVGL's own pointer events
(lv_indev_add_event_cb: PRESSED begins, PRESSING flips the page and calls
lv_indev_wait_release from inside LVGL) instead of ESPHome's touchscreen
on_update, so the point arrives already rotated. The direction rule is 45
degrees instead of twice as horizontal, and the log now says why a swipe
was refused or how far an unfinished one got. Firmware 0.2.27 for both
boards; the app only moves its target version.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-09-14 13:09:53 +02:00

49 lines
3.0 KiB
Markdown

# Testresultaten app 0.2.32 / firmware 0.2.27 (2026-09-14)
Alleen firmware: de randveeg die op een echte Guition (Studio 1, firmware 0.2.24) nooit
pakte, plus de veeg op LVGL's eigen pointer-events. De app verandert alleen de doelversie.
## Live diagnose op Studio 1 (ESPHome-log via de native API)
- Elke veeg begon netjes in de band (`GT911 press x=0…13` links, `x=470…478` rechts), maar er
volgde nooit `randveeg`. Instelling stond aan (add-on: `swipe_pages: true`, 10 tegels,
rotatie 0), `ui_state` meldde niet gedimd, geen kalibratie, geen runtime-kaart.
- Na `preview_runtime_card -1` (roept `runtime_tiles::dismiss()` aan) werkte elke veeg
meteen: `randveeg: pagina 0 -> 1`. Oorzaak: de kruisjes en achtergrondtikken van de
licht-, klimaat- en stofzuigerkaart en het wakker worden uit standby verbergen de kaart
zonder `active_entity` te wissen; de veeg-guard leest die en meldde stil "kaart open".
Dezelfde gate zat in de oude LVGL-gesture en in het CYD-profiel.
- Daarna: ongeveer één op de twee eerste vegen na een paginawissel vuurde niet, de
tweede wel (bijvoorbeeld 12:57:28 en :29 vanaf rechts zonder wissel, :29 wel). De
0.2.24-firmware logde daarvoor niets; 0.2.27 meldt nu `randveeg niet gevuurd: N px naar
binnen, M px verticaal` en de richtingseis is 45° in plaats van "twee keer zo horizontaal".
- Eén tik werd terecht geweigerd: `tik op script.studio_1_startup_sequence genegeerd:
verplaatst 73 px (grens 67)`; de grens op de Guition is een open vraag aan Max.
## Wat veranderde
- `cyd::EdgeSwipe` op LVGL-pointercoördinaten (`begin(x, y, width)` met de horizontale
resolutie van LVGL, dus rotatie is al verwerkt), 45°-regel, `inward()`/`sideways()`.
- Guition: één `lv_indev_add_event_cb` in `on_boot` (PRESSED → begin, PRESSING → update en
paginawissel met `lv_indev_wait_release`, RELEASED/PRESS_LOST → logregel als de veeg
niet vuurde); geblokkeerde vegen loggen de reden. De touchscreen-triggers voeden alleen
nog de tap-guard.
- Beide borden: script `close_cards` (via `runtime_tiles::dismiss()`, anders overlays
verbergen en `active_entity` wissen) voor de zes sluitknoppen en `wake_display`.
## Geautomatiseerd
- C++ (clang++ -std=c++17 -Wall -Wextra -Werror -I.): 11/11 PASS; `test_cyd_ui` dekt de
nieuwe `EdgeSwipe`-API, de 45°-regel, de logwaarden en een smallere (gedraaide) breedte.
- Python: 91 tests OK (`FIRMWARE_VERSION` 0.2.27 in app, profielen en pakketten).
`generate_packages.py --check` groen.
- ESPHome 2026.6.2 compile (verse worktree, geen cache): `easy-guition-device.yaml` SUCCESS in
112 s (RAM 32,0%, flash 18,3%), `easy-cyd-device.yaml` SUCCESS in 86 s (RAM 31,0%, flash
76,1%); geen nieuwe waarschuwingen.
## Nog te controleren op Studio 1
- Werkt de randveeg direct na een update zonder eerst een kaart te openen en te sluiten, en
pakt de eerste veeg na een paginawissel nu ook; het log (`touch`) laat het zien.
- Na het openen en sluiten van een lichtkaart (kruisje, tik ernaast, standby) blijft vegen werken.