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

38 lines
2.0 KiB
CSV
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# Heltec V4 TFT touch firmware — custom partition table.
#
# 16 MB layout with TWO EQUAL OTA app slots so the touch firmware can
# self-update (HTTP OTA via the meshcomod proxy). The app region (app0+app1)
# is split evenly at 3.875 MB each — the firmware is ~2.4–2.5 MB, leaving
# ~1.3 MB of growth headroom per slot. The tiles + spiffs offsets are UNCHANGED,
# so an OTA (or the one-time USB re-flash that installs this table) keeps the
# map tile cache and all user data (/new_prefs, /contacts3, /channels2, chat
# history) intact.
# - app0 3.875 MB (ota_0) ┐ equal A/B slots; OTA ping-pongs between them
# - app1 3.875 MB (ota_1) ┘ (was 1.5 MB — too small to hold the image)
# - "tiles" 4.75 MB (subtype 0x83 = LittleFS) for the map tab's tile pack
# - spiffs 3.375 MB for user data
#
# Layout (16 MB total):
# 0x000000–0x009000 bootloader + partition table
# 0x009000–0x00E000 nvs (20 KB, unchanged)
# 0x00E000–0x010000 otadata (8 KB, unchanged)
# 0x010000–0x3F0000 app0 (3.875 MB, ota_0)
# 0x3F0000–0x7D0000 app1 (3.875 MB, ota_1 — grown from 1.5 MB)
# 0x7D0000–0xC90000 tiles (4.75 MB, LittleFS, type 0x83) [unchanged]
# 0xC90000–0xFF0000 spiffs (3.375 MB) [unchanged]
# 0xFF0000–0x1000000 coredump (64 KB, unchanged)
#
# Subtype 0x83 = ESP-IDF LittleFS subtype. The Arduino LittleFSFS instance
# in UITask.cpp mounts this by partition label "tiles". SPIFFS.begin()
# matches the first partition with subtype `spiffs` (== our "spiffs"
# partition), so the two filesystems don't collide.
# Name, Type, SubType, Offset, Size, Flags
nvs, data, nvs, 0x9000, 0x5000,
otadata, data, ota, 0xe000, 0x2000,
app0, app, ota_0, 0x10000, 0x3E0000,
app1, app, ota_1, 0x3F0000, 0x3E0000,
tiles, data, 0x83, 0x7D0000, 0x4C0000,
spiffs, data, spiffs, 0xC90000, 0x360000,
coredump, data, coredump, 0xFF0000, 0x10000,