Files
roro9stack/docs/adr/0002-own-widget-kit-on-m5gfx.md
T
twislaandClaude Opus 5.5 87b6b845fb Add domain glossary and initial architecture decisions
CONTEXT.md captures the roro9stack domain language (Apps, Services,
Mesh Service, Nodes, Channels, Storage rules). ADR 0001 records building
our own firmware that speaks Meshtastic instead of forking it; ADR 0002
records an own widget kit on M5GFX instead of LVGL.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-01 18:25:36 +02:00

673 B
Raw Blame History

Own small widget kit on M5GFX, not LVGL

The UI is drawn with M5GFX into an off-screen buffer, using a small widget kit we own: list, text view, line editor, dialog, Status Bar and Toast. We chose this over LVGL.

LVGL would give us ready-made widgets, but it costs roughly 40–60 KB of RAM on a device with no PSRAM. It would also need to coexist with the Mesh Service, the Wi-Fi stack and TLS, and it brings a large learning surface. Most of our Apps are lists and text on a 240×135 screen, and full control of the UX is a primary goal.

Consequences

  • We write and maintain our own widgets.
  • Switching to LVGL later would mean rewriting every App's view layer.