From 2fd578515dcc4050ca369772ea963f93e13dbd1a Mon Sep 17 00:00:00 2001 From: Kaj Schittecat Date: Tue, 4 Aug 2026 10:41:02 +0200 Subject: [PATCH] touch: P4 backups write to the LittleFS store, not unmounted FFat (#231) backupInternalFs() still returned FFat on the T-Display P4, but the hot store moved to LittleFS('storage') at beta_54 and FFat is never mounted since - every profile export and backup failed at open with 'can't open file'. The list and restore paths share the helper, so all three heal. Co-Authored-By: Claude Opus 4.8 --- src/ui-touch/UITask.cpp | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/src/ui-touch/UITask.cpp b/src/ui-touch/UITask.cpp index 1b393a5..62912da 100644 --- a/src/ui-touch/UITask.cpp +++ b/src/ui-touch/UITask.cpp @@ -34486,8 +34486,12 @@ static void backupAddPath(const char* stored, const char* disp) { // would fail on an already-mounted volume), plain SPIFFS on the T-Deck / V4. Mirrors the file // manager's "Internal" root so a backup lands where the user can actually see + restore it. static fs::FS* backupInternalFs() { -#if defined(HAS_TANMATSU) || defined(HAS_TDISPLAY_P4) - return &FFat; // FAT data partition (locfd / 'storage'), mounted at boot; no SPIFFS here +#if defined(HAS_TDISPLAY_P4) + // The P4 hot store moved from FFat to LittleFS('storage') in beta_54 (#167); + // FFat is never mounted here anymore, so opening it failed every backup (#231). + return &LittleFS; +#elif defined(HAS_TANMATSU) + return &FFat; // FAT data partition (locfd), mounted at boot; no SPIFFS here #else SPIFFS.begin(false); return &SPIFFS;