Files
wadamesh/partitions_tft_touch.csv
T
Kaj SchittecatandClaude Opus 4.8 1f6409702c feat: Heltec V4 TFT touch firmware — app + ui-touch + board + platformio
First board lands. wadamesh builds the LVGL touch firmware as its own project,
consuming the MeshCore core via lib_deps @ git tag (ALLFATHER-BV/MeshCore
#v1.16.0-wada.0) — no vendored core in this repo. Output is byte-identical to the
in-tree meshcomod build (delta = embedded build-path strings only).

Contents: companion_radio app (MyMesh/main/DataStore), ui-touch LVGL UI,
variants/heltec_v4 board glue, boards/heltec_v4.json, lv_conf, the bundled
ed25519 lib, AsyncElegantOTA, partition table, and a flattened platformio.ini
for env heltec_v4_tft_companion_radio_usb_tcp_touch.

MeshCore-derived files (app glue) remain MIT; ui-touch is GPL — see NOTICE.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Signed-off-by: Kaj Schittecat <kaj@schittecat.com>
2026-06-13 00:01:32 +02:00

2.0 KiB

1# Heltec V4 TFT touch firmware — custom partition table.
2#
3# 16 MB layout with TWO EQUAL OTA app slots so the touch firmware can
4# self-update (HTTP OTA via the meshcomod proxy). The app region (app0+app1)
5# is split evenly at 3.875 MB each — the firmware is ~2.4–2.5 MB, leaving
6# ~1.3 MB of growth headroom per slot. The tiles + spiffs offsets are UNCHANGED,
7# so an OTA (or the one-time USB re-flash that installs this table) keeps the
8# map tile cache and all user data (/new_prefs, /contacts3, /channels2, chat
9# history) intact.
10# - app0 3.875 MB (ota_0) ┐ equal A/B slots; OTA ping-pongs between them
11# - app1 3.875 MB (ota_1) ┘ (was 1.5 MB — too small to hold the image)
12# - spiffs 3.375 MB for user data
13#
14# Layout (16 MB total):
15# 0x000000–0x009000 bootloader + partition table
16# 0x009000–0x00E000 nvs (20 KB, unchanged)
17# 0x00E000–0x010000 otadata (8 KB, unchanged)
18# 0x010000–0x3F0000 app0 (3.875 MB, ota_0)
19# 0x3F0000–0x7D0000 app1 (3.875 MB, ota_1 — grown from 1.5 MB)
20# 0x7D0000–0xC90000 tiles (4.75 MB, LittleFS, type 0x83) [unchanged]
21# 0xC90000–0xFF0000 spiffs (3.375 MB) [unchanged]
22# 0xFF0000–0x1000000 coredump (64 KB, unchanged)
23#
24# Subtype 0x83 = ESP-IDF LittleFS subtype. The Arduino LittleFSFS instance
25# partition), so the two filesystems don't collide.
26# Name, Type, SubType, Offset, Size, Flags
27nvs, data, nvs, 0x9000, 0x5000,
28otadata, data, ota, 0xe000, 0x2000,
29app0, app, ota_0, 0x10000, 0x3E0000,
30app1, app, ota_1, 0x3F0000, 0x3E0000,
31tiles, data, 0x83, 0x7D0000, 0x4C0000,
32spiffs, data, spiffs, 0xC90000, 0x360000,
33coredump, data, coredump, 0xFF0000, 0x10000,