feat(ui-lvgl): roadmap stage 1 - keyboard close key, all bot placeholders, WAKE/USER button roles with hold-to-mute, WiFi switch, shorter descriptions

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
Jakub
2026-09-26 01:23:54 +02:00
co-authored by Claude Opus 5.5
parent f790631e03
commit ba4d01aa77
19 changed files with 268 additions and 84 deletions
@@ -66,6 +66,15 @@ Confirmed: green dot inside the ring, waypoints much better, download works, set
- [ ] Room server login from the phone app / L1 still works while this exists (only admin logins go to the new session)
- [ ] L1 (ui-new): Tools > Admin works as before (login, saved password, typed values, confirm reboot); it now also skips the login for the node you just used
## Roadmap stage 1: quick fixes (2026-09-26)
- [ ] Keyboard: the keyboard key (bottom left) closes it; in a chat the typed text stays, in a dialog nothing is saved
- [ ] Symbols page ("1#"): "_" is in the third row now
- [ ] Bot > Reply: every placeholder in the row above the field ({name} {hops} {loc} {time} {batt}, sensors); swipe it sideways
- [ ] WAKE button (side): screen off / on; silences a ringing alarm
- [ ] USER button: back (answers at once, no double-click wait); held 1 s, sound off / on with a toast and the mute icon; wakes the screen when it's off
- [ ] Settings > CONNECTIVITY > WiFi: a switch as on Bluetooth (toast, row says "Off" / the network); tapping the row opens the network settings (editable while off; Scan asks to turn it on); off: map download says "WiFi is off"; kept across a reboot
- [ ] Shorter descriptions on settings rows, Bot, Repeater, Send advert, Bluetooth ("PIN 123456" / "App connected")
## New: Quick messages, placeholders, advert, Bluetooth (2026-09-26)
- [ ] Chat "+" (left of the text field): Insert {loc} / {time} / {batt} (+ sensors) into the message; they are filled in when sent (a reply's "@[name] " stays as typed)
- [ ] Chat "+" > a quick message sends it at once (the popup shows what will go out, filled in); "Edit quick messages" opens the list
+67
View File
@@ -0,0 +1,67 @@
# Wio Tracker L2 (ui-lvgl) roadmap
The L1 → L2 feature port and its audit are done (2026-09-26). This is the plan
for what comes next, in order. Tick items off as they land.
Decisions already made:
- **Buttons:** WAKE (side, expander P00) turns the screen off / on. USER/BOOT
goes back; holding it mutes / unmutes the device.
- **Placeholders:** the "+" popup next to a text field is the placeholder UI;
it must offer every placeholder and appear at every field that sends text.
- **Message history:** kept on the SD card, about 100 per conversation to
start with.
- **OTA:** firmware comes from this fork's GitHub Releases.
- **PIN:** screen lock only, for now.
## 1. Quick fixes
- [x] Keyboard: a key that closes it (so far a message could only be sent).
- [x] "+" placeholders at every field that sends text (compose, quick
messages, bot replies).
- [x] Short, terse descriptions on buttons and rows.
- [x] WiFi off switch.
- [x] Buttons as decided above.
## 2. Arduino-ESP32 3.x, PSRAM
- [ ] A separate L2 env on pioarduino (as `esp32c6_base`); the 2.0.17 env
stays until the new one passes the hardware checklist.
- [ ] Port: speaker (new I2S driver), BLE, ESP-NOW, HTTPS map download,
LovyanGFX.
- [ ] Large buffers in PSRAM: message history, trail, tile cache. Measure
internal RAM before / after.
- [ ] Full hardware checklist, then make the new env the default.
## 3. Data on the SD card
- [ ] Message history on SD, kept across reboots (~100 per conversation;
the newest ones cached in PSRAM).
- [ ] Trail sized to the device: thousands of points in PSRAM (now 512),
saved to SD.
## 4. UI layout
- [ ] Every tool as its own Home tile (trail, live share, arrival alert,
repeater, admin, diagnostics, ...), not inside Settings.
- [ ] Settings in a sensible order, as on the original (L1).
- [ ] Every status icon the original has (BT, GPS, live share, trail,
repeater, alarm, mute, arrival alert, ...).
## 5. Security and internet
- [ ] Screen-lock PIN.
- [ ] Map tiles fetched live while online.
- [ ] One-button OTA from GitHub Releases (release asset + partition layout
check).
## 6. Theme
- [ ] Develop the current look into a consistent, recognisable style
(colours, corners, type, icons, states), after the layout of stage 4.
## 7. Research: LVGL for the other displays
- [ ] Find out whether LVGL on every display variant gives consistency and a
nicer look more easily. Adopt only if the result is better and every
feature is kept (L1: 128×64 OLED, nRF52, RAM already 68% used).