From 813a14641fe62c90b7905b01514561db722a7d4e Mon Sep 17 00:00:00 2001 From: DeFiDude <59237470+DeFiDude@users.noreply.github.com> Date: Fri, 13 Mar 2026 04:24:14 -0600 Subject: [PATCH] v1.6.0: Update microReticulum ref, LXMF fixes, bump version --- lv_conf.h | 10 +++++----- platformio.ini | 11 +++++++++++ src/config/Config.h | 6 +++--- src/reticulum/LXMFManager.cpp | 4 +++- 4 files changed, 22 insertions(+), 9 deletions(-) diff --git a/lv_conf.h b/lv_conf.h index dfcd5f9..2f7a968 100644 --- a/lv_conf.h +++ b/lv_conf.h @@ -10,12 +10,12 @@ // Without this, colors appear pixelated/glitchy #define LV_COLOR_16_SWAP 1 -// Memory: use stdlib malloc (PSRAM-aware on ESP32-S3) +// Memory: route all LVGL allocations to PSRAM via heap_caps #define LV_MEM_CUSTOM 1 -#define LV_MEM_CUSTOM_INCLUDE -#define LV_MEM_CUSTOM_ALLOC malloc -#define LV_MEM_CUSTOM_FREE free -#define LV_MEM_CUSTOM_REALLOC realloc +#define LV_MEM_CUSTOM_INCLUDE +#define LV_MEM_CUSTOM_ALLOC(size) heap_caps_malloc(size, MALLOC_CAP_SPIRAM) +#define LV_MEM_CUSTOM_FREE heap_caps_free +#define LV_MEM_CUSTOM_REALLOC(p, size) heap_caps_realloc(p, size, MALLOC_CAP_SPIRAM) // Tick: custom (provided by main loop) #define LV_TICK_CUSTOM 1 diff --git a/platformio.ini b/platformio.ini index 77030cb..fdd5320 100644 --- a/platformio.ini +++ b/platformio.ini @@ -22,6 +22,17 @@ build_flags = -DRNS_DEFAULT_ALLOCATOR=RNS_PSRAM_ALLOCATOR -DRNS_CONTAINER_ALLOCATOR=RNS_PSRAM_POOL_ALLOCATOR -DRNS_PSRAM_POOL_BUFFER_SIZE=2048000 + ; Raise microReticulum table caps — all containers go to 2MB PSRAM pool + -DRNS_KNOWN_DESTINATIONS_MAX=500 + -DRNS_HASHLIST_MAX=500 + -DRNS_PATH_TABLE_MAX=500 + -DRNS_ANNOUNCE_TABLE_MAX=500 + -DRNS_RECEIPTS_MAX=64 + -DRNS_QUEUED_ANNOUNCES_MAX=64 + -DRNS_RANDOM_BLOBS_MAX=128 + -DRNS_RANDOM_BLOBS_PERSIST_MAX=64 + -DRNS_RATE_TIMESTAMPS_MAX=32 + -DRNS_PR_TAGS_MAX=128 -DDISPLAY_WIDTH=320 -DDISPLAY_HEIGHT=240 -DLV_CONF_INCLUDE_SIMPLE diff --git a/src/config/Config.h b/src/config/Config.h index d654a9c..f2cedcf 100644 --- a/src/config/Config.h +++ b/src/config/Config.h @@ -5,9 +5,9 @@ // ============================================================================= #define RATDECK_VERSION_MAJOR 1 -#define RATDECK_VERSION_MINOR 5 -#define RATDECK_VERSION_PATCH 11 -#define RATDECK_VERSION_STRING "1.5.11" +#define RATDECK_VERSION_MINOR 6 +#define RATDECK_VERSION_PATCH 0 +#define RATDECK_VERSION_STRING "1.6.0" // --- Feature Flags --- #define HAS_DISPLAY true diff --git a/src/reticulum/LXMFManager.cpp b/src/reticulum/LXMFManager.cpp index 3448cb5..67f0ed7 100644 --- a/src/reticulum/LXMFManager.cpp +++ b/src/reticulum/LXMFManager.cpp @@ -126,7 +126,9 @@ bool LXMFManager::sendDirect(LXMFMessage& msg) { RNS::Destination outDest(recipientId, RNS::Type::Destination::OUT, RNS::Type::Destination::SINGLE, "lxmf", "delivery"); - Serial.printf("[LXMF] outDest hash: %s\n", outDest.hash().toHex().substr(0, 12).c_str()); + Serial.printf("[DIAG] LXMF: outDest=%s msgDest=%s match=%s\n", + outDest.hash().toHex().c_str(), msg.destHash.toHex().c_str(), + (outDest.hash() == msg.destHash) ? "YES" : "NO"); std::vector payload = msg.packFull(_rns->identity()); if (payload.empty()) { Serial.println("[LXMF] packFull returned empty!"); msg.status = LXMFStatus::FAILED; return true; } RNS::Bytes payloadBytes(payload.data(), payload.size());