Files
MeshCore-Solo/solo/wio-tracker-l2/idf/sdkconfig
T
JakubandClaude Opus 5.5 38f5db5a61 perf(l2): bigger CPU instruction cache, TLS and BLE buffers in PSRAM
The framework libs are rebuilt for the L2's own ESP-IDF options
(solo/wio-tracker-l2/idf/sdkconfig): a 32 KB instruction cache and
64-byte data cache lines make frames ~35% faster (map 45 -> 30 ms,
settings ~36 -> 22 ms). mbedTLS and the NimBLE host allocate in PSRAM,
so internal RAM ends up with more free than before (103 KB, largest
block 57 KB; was 89.6 / 45).

Wio_Tracker_L2_idf_libs does the rebuild; it has to run before the
firmware env, also in CI. idf/arduino_tinyusb gives the rebuild the
TinyUSB options and the framework's prebuilt library, which it would
otherwise lose.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-01 09:23:50 +02:00

28 lines
1.2 KiB
Plaintext

# ESP-IDF options for the L2's LVGL firmware, over the Arduino framework's own
# (custom_sdkconfig in solo/wio-tracker-l2/platformio.ini; changing this file
# means rebuilding the framework libs: pio run -e Wio_Tracker_L2_idf_libs).
# The reason for all this: a 32 KB instruction cache (the framework ships
# 16 KB) and 64-byte data cache lines. LVGL runs from flash and draws into
# PSRAM; frames draw ~35% faster. Costs 16 KB internal RAM.
CONFIG_ESP32S3_INSTRUCTION_CACHE_32KB=y
CONFIG_ESP32S3_DATA_CACHE_LINE_64B=y
# ...won back, and more: TLS (map downloads, live tiles, OTA) and the BLE
# host keep their buffers in PSRAM.
CONFIG_MBEDTLS_EXTERNAL_MEM_ALLOC=y
CONFIG_BT_NIMBLE_MEM_ALLOC_MODE_EXTERNAL=y
# What the framework's own build sets for octal-PSRAM boards, which a rebuild
# from its generic config would lose: PSRAM up before global constructors
# (MESH_IN_PSRAM needs it), WiFi TX buffers allocated as needed.
CONFIG_SPIRAM_BOOT_HW_INIT=y
CONFIG_SPIRAM_BOOT_INIT=y
CONFIG_SPIRAM_IGNORE_NOTFOUND=y
CONFIG_SPIRAM_PRE_CONFIGURE_MEMORY_PROTECTION=y
# CONFIG_SPIRAM_MEMTEST is not set
CONFIG_ESP_WIFI_DYNAMIC_TX_BUFFER=y
CONFIG_ESP_WIFI_DYNAMIC_TX_BUFFER_NUM=32
CONFIG_ESP_WIFI_RX_BA_WIN=6
CONFIG_LWIP_TCP_OOSEQ_MAX_PBUFS=4