diff --git a/platformio.ini b/platformio.ini index d5728ee2..85654e71 100644 --- a/platformio.ini +++ b/platformio.ini @@ -48,11 +48,12 @@ default_envs = esp32_4MB_M ; recommended default esp32_4MB_M_debug esp32_4MB_XL + ; esp32_16MB_S ;; experimental, optimized for speed esp32_16MB_M ; esp32_16MB_M_debug ; esp32_16MB_XL esp8266_4MB_S - ; esp8266_4MB_M + esp8266_4MB_M wemos_shield_esp32_4MB_M ; wemos_shield_esp32_4MB_ICS4343x_M ; wemos_shield_esp32_4MB_SPM1423_M @@ -1131,6 +1132,30 @@ build_unflags = ; RAM: [== ] 24.5% (used 80356 bytes from 327680 bytes) ; Flash: [==========] 99.9% (used 1571053 bytes from 1572864 bytes) +;; standard framework build for 16MB flash, optimized for speed +[env:esp32_16MB_S] +extends = esp32_4MB_S_base +board = esp32_16MB +board_build.partitions = tools/WLED_ESP32_16MB.csv ;; WLED standard for 16MB flash: 2MB firmware, 12 MB filesystem +;board_build.partitions = tools/WLED_ESP32_16MB_9MB_FS.csv ;; WLED extended for 16MB flash: 3.2MB firmware, 9 MB filesystem +build_unflags = ${esp32_4MB_S_base.build_unflags} + ${Speed_Flags.build_unflags} ;; to override -Os +build_flags = ${esp32_4MB_S_base.build_flags} + -D WLED_RELEASE_NAME=esp32_16MB_S + ${Speed_Flags.build_flags} ;; optimize for speed instead of size + -D WLEDMM_FASTPATH ;; WLEDMM experimental option. Reduces audio lag (latency), and allows for faster LED framerates. May break compatibility with previous versions. + ${common_mm.animartrix_build_flags} +lib_deps = ${esp32_4MB_S_base.lib_deps} + ${common_mm.animartrix_lib_deps} +; lib_ignore = IRremoteESP8266 ; use with WLED_DISABLE_INFRARED for faster compilation +;; +;; normal build +; RAM: [=== ] 25.8% (used 84588 bytes from 327680 bytes) +; Flash: [======= ] 68.3% (used 1431377 bytes from 2097152 bytes) +;; optimized-for-speed build +; RAM: [=== ] 25.8% (used 84652 bytes from 327680 bytes) +; Flash: [======== ] 78.0% (used 1634829 bytes from 2097152 bytes) + [env:esp32_16MB_M] extends = esp32_4MB_M_base build_flags = ${esp32_4MB_M_base.build_flags} @@ -1239,8 +1264,8 @@ lib_deps = ${esp8266.lib_deps} OneWire@~2.3.5 ; used for USERMOD_FOUR_LINE_DISPLAY and USERMOD_DALLASTEMPERATURE olikraus/U8g2 @ ^2.28.8 ; used for USERMOD_FOUR_LINE_DISPLAY ElectronicCats/MPU6050 @ 0.6.0 ; used for USERMOD_MPU6050_IMU -; RAM: [====== ] 61.5% (used 50344 bytes from 81920 bytes) -; Flash: [======== ] 81.8% (used 854444 bytes from 1044464 bytes) +; RAM: [====== ] 63.0% (used 51632 bytes from 81920 bytes) +; Flash: [========= ] 88.5% (used 924179 bytes from 1044464 bytes) ; Blaz env (for reference purposes) [env:d1_mini_temp] @@ -1400,6 +1425,9 @@ build_flags = ${esp32_4MB_V4_S_base.build_flags} -D WLED_WATCHDOG_TIMEOUT=0 #-D WLED_DISABLE_BROWNOUT_DET -D ARDUINO_USB_CDC_ON_BOOT=0 ; needed for arduino-esp32 >=2.0.4; avoids errors on startup -D WLEDMM_FASTPATH ; WLEDMM experimental option. Reduces audio lag (latency), and allows for faster LED framerates. May break compatibility with previous versions. + ;; ${common_mm.animartrix_build_flags} ;; breaks the build - Internal Compiler Error +lib_deps = ${esp32_4MB_V4_S_base.lib_deps} + ;; ${common_mm.animartrix_lib_deps} board = esp32_16MB board_build.partitions = tools/WLED_ESP32_16MB.csv ;; WLED standard for 16MB flash: 2MB firmware, 12 MB filesystem ;board_build.partitions = tools/WLED_ESP32_16MB_9MB_FS.csv ;; WLED extended for 16MB flash: 3.2MB firmware, 9 MB filesystem @@ -1407,8 +1435,8 @@ board_build.partitions = tools/WLED_ESP32_16MB.csv ;; WLED standard for ; RAM: [=== ] 25.4% (used 83312 bytes from 327680 bytes) ; Flash: [======= ] 73.3% (used 1536317 bytes from 2097152 bytes) ;; optimized-for-speed build -; RAM: [=== ] 25.4% (used 83376 bytes from 327680 bytes) -; Flash: [======== ] 82.9% (used 1739469 bytes from 2097152 bytes) +; RAM: [=== ] 26.1% (used 85396 bytes from 327680 bytes) +; Flash: [======== ] 82.8% (used 1736129 bytes from 2097152 bytes) ; compiled with ESP-IDF 4.4.1 [env:esp32_16MB_V4_M]