diff --git a/platformio.ini b/platformio.ini index 79ccde66..be4ed0b3 100644 --- a/platformio.ini +++ b/platformio.ini @@ -1018,7 +1018,6 @@ build_flags_S = ; -D USERMOD_ARTIFX ;; WLEDMM usermod - temporarily moved into "_M", due to problems in "_S" when compiling with -O2 -D WLEDMM_FASTPATH ;; WLEDMM experimental option. Reduces audio lag (latency), and allows for faster LED framerates. May break compatibility with previous versions. ; -D WLED_DEBUG_HEAP ;; WLEDMM enable heap debugging - ${common_mm.build_disable_sync_interfaces} lib_deps_S = ;; https://github.com/kosme/arduinoFFT#develop @ 1.9.2+sha.419d7b0 ;; used for USERMOD_AUDIOREACTIVE - using "known working" hash @@ -1101,7 +1100,7 @@ platform = ${esp32.platform} upload_speed = 460800 ; or 921600 platform_packages = ${esp32.platform_packages} build_unflags = ${common.build_unflags} -build_flags = ${common.build_flags_esp32} ${common_mm.build_flags_S} +build_flags = ${common.build_flags_esp32} ${common_mm.build_flags_S} ${common_mm.build_disable_sync_interfaces} lib_deps = ${esp32.lib_deps} ${common_mm.lib_deps_S} board_build.partitions = ${esp32.default_partitions} board_build.f_flash = 80000000L ; use full 80MHz speed for flash (default = 40Mhz) @@ -1111,15 +1110,15 @@ monitor_filters = esp32_exception_decoder ;common default for all max environments [esp32_4MB_M_base] extends = esp32_4MB_S_base -build_flags = ${esp32_4MB_S_base.build_flags} ${common_mm.build_flags_M} -build_unflags = ${esp32_4MB_S_base.build_unflags} ${common_mm.build_disable_sync_interfaces} +build_flags = ${common.build_flags_esp32} ${common_mm.build_flags_S} ${common_mm.build_flags_M} ;; we don't want common_mm.build_disable_sync_interfaces, so we cannot inherit from esp32_4MB_S_base +build_unflags = ${esp32_4MB_S_base.build_unflags} lib_deps = ${esp32_4MB_S_base.lib_deps} ${common_mm.lib_deps_M} ; board_build.partitions = tools/WLED_ESP32-wrover_4MB.csv [esp32_4MB_XL_base] extends = esp32_4MB_M_base build_flags = ${esp32_4MB_M_base.build_flags} ${common_mm.build_flags_XL} -build_unflags = ${esp32_4MB_M_base.build_unflags} ${common_mm.build_disable_sync_interfaces} +build_unflags = ${esp32_4MB_M_base.build_unflags} lib_deps = ${esp32_4MB_M_base.lib_deps} ${common_mm.lib_deps_XL} ; board_build.partitions = tools/WLED_ESP32-wrover_4MB.csv @@ -1130,7 +1129,7 @@ upload_speed = 460800 ; or 921600 platform = ${esp32.platformV4} platform_packages = ${esp32.platformV4_packages} build_unflags = ${common.build_unflags} -build_flags = ${common.build_flags} ${common_mm.build_flags_S} ;; do not include ${esp32.build_flagsV4} here !!!! +build_flags = ${common.build_flags} ${common_mm.build_flags_S} ${common_mm.build_disable_sync_interfaces} ;; do not include ${esp32.build_flagsV4} here !!!! -Wno-misleading-indentation -Wno-format-truncation -Wshadow=compatible-local ;; emit warning in case a local variable "shadows" another local one ;-Wstack-usage=2732 ;; warn if a function needs more that 30% of availeable stack ("stack usage might be unbounded", "stack usage is 2824 bytes") @@ -1148,7 +1147,14 @@ board_build.flash_mode = dio ; (dio = dual i/o; more compatible than qio = quad [esp32_4MB_V4_M_base] extends = esp32_4MB_V4_S_base -build_flags = ${esp32_4MB_V4_S_base.build_flags} ${common_mm.build_flags_M} ;; generic, for all variants +build_flags = + ${common.build_flags} ${common_mm.build_flags_S} ;; do not include ${esp32.build_flagsV4} here !!!! + -Wno-misleading-indentation -Wno-format-truncation + -Wshadow=compatible-local ;; emit warning in case a local variable "shadows" another local one + ;-Wstack-usage=2732 ;; warn if a function needs more that 30% of availeable stack ("stack usage might be unbounded", "stack usage is 2824 bytes") + ;-Wsuggest-attribute=const -Wsuggest-attribute=pure ;; ask compiler for hints on attributes + -D WLED_ENABLE_DMX_INPUT + ${common_mm.build_flags_M} ;; generic, for all variants lib_deps = ${esp32_4MB_V4_S_base.lib_deps} ${common_mm.lib_deps_V4_M} esp32_build_flags = ${esp32_4MB_V4_S_base.esp32_build_flags} ${common_mm.build_flags_M} ;; for esp32 only, including specific "V4" flags esp32_lib_deps = ${esp32_4MB_V4_S_base.esp32_lib_deps} ${common_mm.lib_deps_V4_M} @@ -1741,6 +1747,11 @@ lib_deps = ${esp32_4MB_V4_M_base.esp32_lib_deps} ;; Flash: [======== ] 84.6% (used 1607857 bytes from 1900544 bytes) +# ------------------------------------------------------------------------------ +# esp32-S3 environments +# ------------------------------------------------------------------------------ + + [env:esp32S3_8MB_M] extends = esp32_4MB_V4_M_base board = esp32-s3-devkitc-1 @@ -1873,14 +1884,12 @@ board_build.partitions = tools/WLED_ESP32_8MB.csv ; RAM: [=== ] 25.8% (used 84544 bytes from 327680 bytes) ; Flash: [======== ] 78.1% (used 1638737 bytes from 2097152 bytes) - ;; MM for esp32-s3 zero/supermini and lolin S3 mini boards - fastpath, optimize for speed [env:esp32S3_4MB_PSRAM_S] extends = env:esp32S3_8MB_S board = lolin_s3_mini ;; -S3 mini: 4MB flash 2MB PSRAM board_build.partitions = tools/WLED_ESP32_4MB_256KB_FS.csv ;; 1.8MB firmware, 256KB filesystem (esptool erase_flash needed when changing from "standard WLED" partitions) ;; board_build.partitions = tools/WLED_ESP32_4MB_512KB_FS.csv ;; 1.7MB firmware, 500KB filesystem (esptool erase_flash needed when changing from "standard WLED" partitions) - build_flags = ${common.build_flags} ${esp32s3.build_flags} -Wno-misleading-indentation -Wno-format-truncation ${common_mm.build_flags_S} -D WLED_RELEASE_NAME=esp32S3_4MB_S @@ -1909,17 +1918,15 @@ build_flags = ${common.build_flags} ${esp32s3.build_flags} -Wno-misleading-inden ; -D MIC_LOGGER lib_ignore = IRremoteESP8266 ; use with WLED_DISABLE_INFRARED for faster compilation -; RAM: [== ] 20.4% (used 66840 bytes from 327680 bytes) -; Flash: [========= ] 86.5% (used 1644765 bytes from 1900544 bytes) +; RAM: [== ] 20.4% (used 66908 bytes from 327680 bytes) +; Flash: [========= ] 87.1% (used 1655529 bytes from 1900544 bytes) ;; MM for esp32-s3 zero/supermini and lolin S3 mini boards - standard [env:esp32S3_4MB_PSRAM_M] extends = env:esp32S3_8MB_M board = lolin_s3_mini ;; -S3 mini: 4MB flash 2MB PSRAM board_build.partitions = ${esp32.default_partitions} - build_flags = ${common.build_flags} ${esp32s3.build_flags} -Wno-misleading-indentation -Wno-format-truncation - ;; ${common_mm.build_flags_S} ${common_mm.build_flags_M} ${common_mm.build_flags_S} ${common_mm.build_flags_M} -D WLED_RELEASE_NAME=esp32S3_4MB_M -DBOARD_HAS_PSRAM -D WLED_USE_PSRAM_JSON ;; -D WLED_USE_PSRAM @@ -1933,19 +1940,24 @@ build_flags = ${common.build_flags} ${esp32s3.build_flags} -Wno-misleading-inden -D BTNPIN=-1 -D RLYPIN=-1 -D IRPIN=-1 -D AUDIOPIN=-1 -D HW_PIN_SDA=12 -D HW_PIN_SCL=13 -D SR_DMTYPE=1 -D I2S_SDPIN=5 -D I2S_WSPIN=6 -D I2S_CKPIN=4 -D MCLK_PIN=7 - ;; -D WLED_DISABLE_LOXONE ; FLASH 1272 bytes - ;; -D WLED_DISABLE_ALEXA ; RAM 116 bytes; FLASH 13524 bytes - ;; -D WLED_DISABLE_MQTT ; RAM 216 bytes; FLASH 16496 bytes - ;; -D WLED_DISABLE_HUESYNC ;RAM 122 bytes; FLASH 6308 bytes - ;; -D WLED_DISABLE_INFRARED ;RAM 136 bytes; FLASH 24492 bytes + -D WLED_DISABLE_LOXONE ; FLASH 1272 bytes - disabled to stay below 100% + -D WLED_DISABLE_HUESYNC ; RAM 122 bytes; FLASH 6308 bytes - disabled to stay below 100% + -D WLED_DISABLE_INFRARED ; RAM 136 bytes; FLASH 24492 bytes - disabled to stay below 100% + ;; -D WLED_DISABLE_ALEXA ; RAM 116 bytes; FLASH 13524 bytes + ;; -D WLED_DISABLE_MQTT ; RAM 216 bytes; FLASH 16496 bytes ; -D WLED_DEBUG ; -D SR_DEBUG ; -D MIC_LOGGER lib_deps = ${esp32s3.lib_deps} ${common_mm.lib_deps_S} ${common_mm.lib_deps_V4_M} lib_ignore = - ; IRremoteESP8266 ; use with WLED_DISABLE_INFRARED for faster compilation -; RAM: [== ] 18.2% (used 59668 bytes from 327680 bytes) -; Flash: [==========] 97.0% (used 1525125 bytes from 1572864 bytes) + IRremoteESP8266 ; use with WLED_DISABLE_INFRARED for faster compilation +; RAM: [== ] 20.6% (used 67524 bytes from 327680 bytes) +; Flash: [==========] 98.5% (used 1549341 bytes from 1572864 bytes) + + +# ------------------------------------------------------------------------------ +# esp32-S2 environments +# ------------------------------------------------------------------------------ ;; MM for Adafruit QT Py ESP32-S2 -> 4MB flash, PSRAM, and tinyUF2 bootloader @@ -2054,6 +2066,11 @@ monitor_filters = esp32_exception_decoder ; Flash: [======== ] 81.4% (used 1547834 bytes from 1900544 bytes) +# ------------------------------------------------------------------------------ +# esp32-C3 environments +# ------------------------------------------------------------------------------ + + ;; MM environment for generic ESP32-C3 -> 4MB flash, no PSRAM [env:esp32c3dev_4MB_M] extends = esp32_4MB_V4_S_base @@ -2163,11 +2180,15 @@ monitor_filters = esp32_exception_decoder # custom board environments # ------------------------------------------------------------------------------ + +# ------------------------------------------------------------------------------ +# wemos shields +# ------------------------------------------------------------------------------ ;https://www.tindie.com/products/serg74/wled-shield-board-for-addressable-leds/ ;https://www.tindie.com/products/moonmodules/shield-board-for-esp32-for-wled-addressable-leds/ [wemos_shield_esp32_4MB_S_base] extends = esp32_4MB_S_base -build_flags = ${esp32_4MB_S_base.build_flags} +pinout_build_flags = -D ABL_MILLIAMPS_DEFAULT=9500 ; Wemos max 10A -D LEDPIN=16 -D RLYPIN=19 @@ -2182,10 +2203,11 @@ build_flags = ${esp32_4MB_S_base.build_flags} -D PIR_SENSOR_PIN=-1 -D PWM_PIN=-1 ; -D WLED_USE_MY_CONFIG +build_flags = ${esp32_4MB_S_base.build_flags} ${common_mm.build_disable_sync_interfaces} ${wemos_shield_esp32_4MB_S_base.pinout_build_flags} [wemos_shield_esp32_4MB_M_base] extends = wemos_shield_esp32_4MB_S_base -build_flags = ${wemos_shield_esp32_4MB_S_base.build_flags} ${common_mm.build_flags_M} +build_flags = ${esp32_4MB_M_base.build_flags} ${wemos_shield_esp32_4MB_S_base.pinout_build_flags} lib_deps = ${wemos_shield_esp32_4MB_S_base.lib_deps} ${common_mm.lib_deps_M} [wemos_shield_esp32_4MB_XL_base] @@ -2197,13 +2219,15 @@ lib_deps = ${wemos_shield_esp32_4MB_M_base.lib_deps} ${common_mm.lib_deps_XL} extends = wemos_shield_esp32_4MB_S_base build_flags = ${wemos_shield_esp32_4MB_S_base.build_flags} -D WLED_RELEASE_NAME=wemos_shield_esp32_4MB_S +; RAM: [=== ] 25.4% (used 83124 bytes from 327680 bytes) +; Flash: [======== ] 83.4% (used 1311629 bytes from 1572864 bytes) [env:wemos_shield_esp32_4MB_M] extends = wemos_shield_esp32_4MB_M_base build_flags = ${wemos_shield_esp32_4MB_M_base.build_flags} -D WLED_RELEASE_NAME=wemos_shield_esp32_4MB_M -; RAM: [== ] 24.4% (used 79820 bytes from 327680 bytes) -; Flash: [========= ] 88.6% (used 1393421 bytes from 1572864 bytes) +; RAM: [=== ] 26.0% (used 85252 bytes from 327680 bytes) +; Flash: [==========] 97.4% (used 1531865 bytes from 1572864 bytes) [env:wemos_shield_esp32_4MB_ICS4343x_M] extends = wemos_shield_esp32_4MB_M_base @@ -2291,6 +2315,11 @@ 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 + +# ------------------------------------------------------------------------------ +# special boards and controlers +# ------------------------------------------------------------------------------ + ;https://www.athom.tech/blank-1/wled-esp32-music-addressable-led-strip-controller [env:athom_music_esp32_4MB_M] extends = esp32_4MB_M_base