4848; ===================
4949
5050default_envs =
51- esp32_4MB_S ; ; experimental, optimized for speed
52- esp32_4MB_M ; ; esp32 recommended default
53- esp32_4MB_M_eth
54- esp32_4MB_M_debug
55- esp32_4MB_XL
56- ; esp32_16MB_S ;; experimental, optimized for speed
57- esp32_16MB_M ; ; esp32 recommended for boards with 16MB flash
58- esp32_16MB_M_eth
59- ; esp32_16MB_M_debug
60- ; esp32_16MB_XL
61- esp32_pico_4MB_M
51+ ; Netmindz: Disable the non-V4 envs as we only build using V4 now, TBC if we rename thr _V4 to be without and delete existing
52+ ; or maintain the _V4 as we have "trained" our users that certain things are _V4 only plus the bootloader issue if you OTA from V3 to a V4
53+
54+ ; esp32_4MB_S ;; experimental, optimized for speed
55+ ; esp32_4MB_M ;; esp32 recommended default
56+ ; esp32_4MB_M_eth
57+ ; esp32_4MB_M_debug
58+ ; esp32_4MB_XL
59+ ; ; esp32_16MB_S ;; experimental, optimized for speed
60+ ; esp32_16MB_M ;; esp32 recommended for boards with 16MB flash
61+ ; esp32_16MB_M_eth
62+ ; ; esp32_16MB_M_debug
63+ ; ; esp32_16MB_XL
64+ ; esp32_pico_4MB_M
6265 ; ;
63- wemos_shield_esp32_4MB_M
66+ ; wemos_shield_esp32_4MB_M
6467 ; wemos_shield_esp32_4MB_ICS4343x_M
6568 ; wemos_shield_esp32_4MB_SPM1423_M
6669 ; wemos_shield_esp32_4MB_LineIn_M
@@ -126,11 +129,6 @@ extra_configs =
126129# arduino core 2.6.3 = platformIO 2.3.2
127130# arduino core 2.7.0 = platformIO 2.5.0
128131# ------------------------------------------------------------------------------
129- arduino_core_2_6_3 = espressif8266@2.3.3
130- arduino_core_2_7_4 = espressif8266@2.6.2
131- arduino_core_3_0_0 = espressif8266@3.0.0
132- arduino_core_3_2_0 = espressif8266@3.2.0
133- arduino_core_4_1_0 = espressif8266@4.1.0
134132arduino_core_3_1_2 = espressif8266@4.2.1
135133
136134# Development platforms
@@ -145,13 +143,6 @@ platform_packages = platformio/toolchain-xtensa @ ~2.100300.220621 #2.40802.2005
145143 platformio/tool-esptool # @ ~1.413.0
146144 platformio/tool-esptoolpy # @ ~1.30000.0
147145
148- # # previous platform for 8266, in case of problems with the new one
149- # # you'll need makuna/NeoPixelBus@ 2.6.9 for arduino_core_3_2_0, which does not support Ucs890x
150- ; ; platform_wled_default = ${common.arduino_core_3_2_0}
151- ; ; platform_packages = tasmota/framework-arduinoespressif8266 @ 3.20704.7
152- ; ; platformio/toolchain-xtensa @ ~2.40802.200502
153- ; ; platformio/tool-esptool @ ~1.413.0
154- ; ; platformio/tool-esptoolpy @ ~1.30000.0
155146
156147# ------------------------------------------------------------------------------
157148# FLAGS: DEBUG
@@ -212,7 +203,7 @@ build_flags =
212203build_unflags =
213204
214205build_flags_esp8266 = ${common.build_flags} ${esp8266.build_flags}
215- build_flags_esp32 = ${common.build_flags} ${esp32 .build_flags}
206+ build_flags_esp32 = ${common.build_flags} ${esp32_idf_V4 .build_flags}
216207build_flags_esp32_V4 = ${common.build_flags} ${esp32_idf_V4.build_flags}
217208
218209ldscript_1m128k = eagle.flash.1m128.ld
@@ -260,7 +251,9 @@ lib_deps =
260251 ; ; https://github.com/softhack007/FastLED.git#ESP32-C6 ;; patched version needed for -C6
261252 IRremoteESP8266 @ 2.8.2
262253 ; ;makuna/NeoPixelBus @ 2.7.5 ;; WLEDMM will be added in board specific sections
263- https://github.com/Aircoookie/ESPAsyncWebServer.git# v2.2.1 ;; newer with bugfixes and stability improvements
254+ https://github.com/Aircoookie/ESPAsyncWebServer.git# v2.4.0
255+ bitbank2/AnimatedGIF@^1.4.7
256+ https://github.com/Aircoookie/GifDecoder# bc3af18
264257 # For use of the TTGO T-Display ESP32 Module with integrated TFT display uncomment the following line
265258 # TFT_eSPI
266259 # For compatible OLED display uncomment following
@@ -301,7 +294,8 @@ build_flags =
301294 ; -D PIO_FRAMEWORK_ARDUINO_MMU_CACHE16_IRAM48_SECHEAP_SHARED ;; (experimental) adds some extra heap, but may cause slowdown
302295 -D USERMOD_AUDIOREACTIVE
303296 -D NON32XFER_HANDLER ; ; ask forgiveness for PROGMEM misuse
304-
297+ -D WLED_DISABLE_PARTICLESYSTEM2D
298+
305299lib_deps =
306300 # https://github.com/lorol/LITTLEFS.git
307301 ESPAsyncTCP @ 1.2.2
@@ -330,33 +324,12 @@ platform_packages_compat =
330324 platformio/tool-esptool # @ ~1.413.0
331325 platformio/tool-esptoolpy # @ ~1.30000.0
332326
333- ; ; experimental - for using older NeoPixelBus 2.7.9
334- lib_deps_compat =
335- ESPAsyncTCP @ 1.2.2
336- ESPAsyncUDP
337- ESP8266PWM
338- fastled/FastLED @ 3.6.0
339- IRremoteESP8266 @ 2.8.2
340- makuna/NeoPixelBus @ 2.7.9
341- https://github.com/Aircoookie/ESPAsyncWebServer.git# v2.2.1
342327
343328
344329[esp32]
345- # platform = https://github.com/tasmota/platform-espressif32/releases/download/v2.0.2.3/platform-espressif32-2.0.2.3.zip
346- platform = espressif32@3.5.0
347-
348- platform_packages = framework-arduinoespressif32 @ https://github.com/Aircoookie/arduino-esp32.git# 1.0.6.4
349-
350- build_flags = -g
351- -DARDUINO_ARCH_ESP32
352- # -DCONFIG_LITTLEFS_FOR_IDF_3_2
353- -D CONFIG_ASYNC_TCP_USE_WDT =0
354- -D CONFIG_ASYNC_TCP_TASK_STACK_SIZE =9472 ; ; WLEDMM increase stack by 1.25Kb, as audioreactive needs bigger SETTINGS_STACK_BUF_SIZE
355- # use LITTLEFS library by lorol in ESP32 core 1.x.x instead of built-in in 2.x.x
356- -D LOROL_LITTLEFS
357- ; -D WLEDMM_TWOPATH ;; use I2S1 as the second bus --> ~15% faster on "V3" builds - may flicker a bit more
358- ; -D WLEDMM_SLOWPATH ;; don't use I2S for LED bus
359- ; -DARDUINO_USB_CDC_ON_BOOT=0 ;; this flag is mandatory for "classic ESP32" when building with arduino-esp32 >=2.0.3
330+ platform = ${esp32_idf_V4.platform}
331+ platform_packages = ${esp32_idf_V4.platform_packages}
332+ build_flags = ${esp32_idf_V4.build_flags}
360333
361334default_partitions = tools/WLED_ESP32_4MB_1MB_FS.csv ; ; WLED standard for 4MB flash: 1.4MB firmware, 1MB filesystem
362335; default_partitions = tools/WLED_ESP32_4MB_256KB_FS.csv ;; WLEDMM alternative for 4MB flash: 1.8MB firmware, 256KB filesystem (esptool erase_flash needed before changing)
@@ -367,14 +340,7 @@ big_partitions = tools/WLED_ESP32_4MB_256KB_FS.csv ;; 1.8MB firmware, 256KB
367340large_partitions = tools/WLED_ESP32_8MB.csv
368341extreme_partitions = tools/WLED_ESP32_16MB_9MB_FS.csv
369342
370- lib_deps =
371- https://github.com/pbolduc/AsyncTCP.git @ 1.2.0 ; ; WLEDMM this must be first in the list, otherwise Aircoookie/ESPAsyncWebServer pulls in an older version of AsyncTCP !!
372- ; https://github.com/lorol/LITTLEFS.git
373- ; WLEDMM specific: use patched version of lorol LittleFS
374- https://github.com/softhack007/LITTLEFS-threadsafe.git# master
375- makuna/NeoPixelBus @ 2.7.5
376- ; ; makuna/NeoPixelBus @ 2.7.9 ;; experimental
377- ${env.lib_deps}
343+ lib_deps = ${esp32_idf_V4.lib_deps}
378344
379345; ; Compatibility with upstream --> you should prefer using ${common_mm.build_flags_S} and ${common_mm.lib_deps_S}
380346AR_build_flags = ${common_mm.AR_build_flags}
@@ -417,9 +383,6 @@ lib_depsV4 =
417383; ; WLEDMM end
418384
419385[esp32_idf_V4]
420- ; ; experimental build environment for ESP32 using ESP-IDF 4.4.x / arduino-esp32 v2.0.5
421- ; ; very similar to the normal ESP32 flags, but omitting Lorol LittleFS, as littlefs is included in the new framework already.
422- ; ;
423386; ; please note that you can NOT update existing ESP32 installs with a "V4" build. Also updating by OTA will not work properly.
424387; ; You need to completely erase your device (esptool erase_flash) first, then install the "V4" build from VSCode+platformio.
425388
@@ -1071,7 +1034,7 @@ AR_build_flags = -D USERMOD_AUDIOREACTIVE -D UM_AUDIOREACTIVE_USE_NEW_FFT ;; WLE
10711034AR_lib_deps = https://github.com/softhack007/arduinoFFT.git# develop @ 1.9.2 ;; used for USERMOD_AUDIOREACTIVE - optimized version, 10% faster on -S2/-C3
10721035
10731036animartrix_build_flags = -D USERMOD_ANIMARTRIX ; ; WLEDMM usermod: CC BY-NC 3.0 licensed effects by Stefan Petrick
1074- animartrix_lib_deps = https://github.com/netmindz/animartrix.git# 657f754783268b648e1d56b3cd31c810379d0c89 ;; Dirty state fix
1037+ animartrix_lib_deps = https://github.com/netmindz/animartrix.git# bd556cef92a6fee9777c0a7304c9de1a84cba184 ;; init state fix
10751038animartrix_lib_ignore = animartrix ; ; to remove the animartrix lib dependancy (saves a few bytes)
10761039
10771040DMXin_build_flags = -D WLED_ENABLE_DMX_INPUT ; ; WLEDMM DMX physical input - requires ESP-IDF v4.4.x
@@ -1108,6 +1071,7 @@ build_flags_S =
11081071 ; -D USERMOD_ARTIFX ;; WLEDMM usermod - temporarily moved into "_M", due to problems in "_S" when compiling with -O2
11091072 -D WLEDMM_FASTPATH ; ; WLEDMM experimental option. Reduces audio lag (latency), and allows for faster LED framerates. May break compatibility with previous versions.
11101073 ; -D WLED_DEBUG_HEAP ;; WLEDMM enable heap debugging
1074+ -D WLED_ENABLE_GIF
11111075
11121076lib_deps_S =
11131077 ; ; https://github.com/kosme/arduinoFFT#develop @ 1.9.2+sha.419d7b0 ;; used for USERMOD_AUDIOREACTIVE - using "known working" hash
@@ -1613,6 +1577,9 @@ build_flags = ${common.build_flags_esp8266} -D WLED_DISABLE_OTA
16131577 -D WLED_DISABLE_HUESYNC
16141578 -D WLED_DISABLE_ESPNOW ; ; exceeds flash size limits
16151579 -D WLED_DISABLE_INFRARED ; ; exceeds flash size limits
1580+ -D WLED_DISABLE_PARTICLESYSTEM1D ; ; exceeds flash size limit
1581+ -D WLED_DISABLE_PARTICLESYSTEM2D ; ; exceeds flash size limit
1582+
16161583lib_deps = ${esp8266.lib_deps}
16171584lib_ignore = IRremoteESP8266 ; use with WLED_DISABLE_INFRARED for faster compilation
16181585; RAM: [====== ] 60.6% (used 49616 bytes from 81920 bytes)
@@ -1643,12 +1610,36 @@ build_flags = ${esp32_4MB_V4_S_base.esp32_build_flags}
16431610 ; -D SR_DEBUG
16441611 ; -D MIC_LOGGER
16451612 ${common_mm.HUB75_build_flags}
1613+ -D WLED_DISABLE_PARTICLESYSTEM1D ; ; exceeds flash size limit
16461614lib_deps = ${esp32_4MB_V4_S_base.esp32_lib_deps}
16471615 ${common_mm.HUB75_lib_deps}
16481616lib_ignore = IRremoteESP8266 ; use with WLED_DISABLE_INFRARED for faster compilation
16491617; RAM: [=== ] 25.5% (used 83400 bytes from 327680 bytes)
16501618; Flash: [==========] 97.3% (used 1530013 bytes from 1572864 bytes)
16511619
1620+ [env:esp32_4MB_V4_S_eth]
1621+ extends = esp32_4MB_V4_S_base
1622+ build_flags = ${esp32_4MB_V4_S_base.esp32_build_flags}
1623+ -D WLED_RELEASE_NAME =esp32_4MB_V4_S
1624+ -D WLED_WATCHDOG_TIMEOUT =0 # -D WLED_DISABLE_BROWNOUT_DET
1625+ -D ARDUINO_USB_CDC_ON_BOOT =0 ; needed for arduino-esp32 >=2.0.4; avoids errors on startup
1626+ -D WLEDMM_FASTPATH ; WLEDMM experimental option. Reduces audio lag (latency), and allows for faster LED framerates. May break compatibility with previous versions.
1627+ -D WLEDMM_SAVE_FLASH
1628+ -D WLED_DISABLE_LOXONE
1629+ -D WLED_DISABLE_ALEXA
1630+ -D WLED_DISABLE_HUESYNC
1631+ -D WLED_DISABLE_MQTT
1632+ -D WLED_DISABLE_INFRARED
1633+ ; -D WLED_DEBUG
1634+ ; -D SR_DEBUG
1635+ ; -D MIC_LOGGER
1636+ ${common_mm.HUB75_build_flags}
1637+ -D WLED_USE_ETHERNET
1638+ -D WLED_DISABLE_ESPNOW ; ; ESP-NOW requires wifi, may crash with ethernet only
1639+ lib_deps = ${esp32_4MB_V4_S_base.esp32_lib_deps}
1640+ ${common_mm.HUB75_lib_deps}
1641+ lib_ignore = IRremoteESP8266 ; use with WLED_DISABLE_INFRARED for faster compilation
1642+
16521643; ; softhack007: my favourite HUB75 buildenv - fastest possible
16531644[env:esp32_4MB_V4_HUB75_forum]
16541645extends = esp32_4MB_V4_S_base
@@ -2231,6 +2222,8 @@ build_flags = ${common.build_flags} ${esp32s3.build_flags} -Wno-misleading-inden
22312222 ; -D WLED_DEBUG
22322223 ; -D SR_DEBUG
22332224 ; -D MIC_LOGGER
2225+ -D WLED_DISABLE_PARTICLESYSTEM1D ; ; exceeds flash size limit
2226+ -D WLED_DISABLE_PARTICLESYSTEM2D ; ; exceeds flash size limit
22342227lib_deps = ${esp32s3.lib_deps} ${common_mm.lib_deps_S} ${common_mm.lib_deps_V4_M}
22352228lib_ignore =
22362229 IRremoteESP8266 ; use with WLED_DISABLE_INFRARED for faster compilation
@@ -2439,7 +2432,8 @@ build_flags = ${common.build_flags} ${esp32c3.build_flags}
24392432 ; -D HW_PIN_SDA=0 -D HW_PIN_SCL=1 ;; for I2C Qwiic connector
24402433 -D SR_DMTYPE =1 -D I2S_SDPIN =5 -D I2S_WSPIN =6 -D I2S_CKPIN =4 -D MCLK_PIN =7
24412434 ; -D WLED_USE_MY_CONFIG
2442-
2435+ -D WLED_DISABLE_PARTICLESYSTEM1D ; ; exceeds flash size limit
2436+ -D WLED_DISABLE_PARTICLESYSTEM2D ; ; exceeds flash size limit
24432437lib_deps = ${esp32c3.lib_deps} ${common_mm.lib_deps_S} ${common_mm.lib_deps_V4_M}
24442438lib_ignore =
24452439 ; IRremoteESP8266 ; use with WLED_DISABLE_INFRARED for faster compilation
@@ -2463,6 +2457,8 @@ build_flags = ${env:esp32c3dev_4MB_M.build_flags}
24632457 -D WLED_DISABLE_BROWNOUT_DET ; ; the board only has a 500mA LDO, better to disable brownout detection
24642458 -D WLED_DISABLE_ADALIGHT ; ; to disable serial protocols for boards with CDC USB (Serial RX will receive junk commands, unless its pulled down by resistor)
24652459 -D HW_PIN_SDA =0 -D HW_PIN_SCL =1 ; ; avoid pin conflicts
2460+ -D WLED_DISABLE_PARTICLESYSTEM1D ; ; exceeds flash size limit
2461+ -D WLED_DISABLE_PARTICLESYSTEM2D ; ; exceeds flash size limit
24662462; RAM: [== ] 24.6% (used 80556 bytes from 327680 bytes)
24672463; Flash: [==========] 97.3% (used 1530346 bytes from 1572864 bytes)
24682464
@@ -2489,7 +2485,8 @@ build_flags = ${env:esp32c3dev_4MB_M.build_flags}
24892485 -D WLED_DISABLE_BROWNOUT_DET ; ; the board only has a 500mA LDO, better to disable brownout detection
24902486 -D WLED_DISABLE_ADALIGHT ; ; to disable serial protocols for boards with CDC USB (Serial RX will receive junk commands, unless its pulled down by resistor)
24912487 -D HW_PIN_SDA =0 -D HW_PIN_SCL =1 ; ; avoid pin conflicts
2492-
2488+ -D WLED_DISABLE_PARTICLESYSTEM1D ; ; exceeds flash size limit
2489+ -D WLED_DISABLE_PARTICLESYSTEM2D ; ; exceeds flash size limit
24932490; RAM: [== ] 24.0% (used 78676 bytes from 327680 bytes)
24942491; Flash: [==========] 96.4% (used 1516068 bytes from 1572864 bytes)
24952492
@@ -2725,7 +2722,7 @@ build_flags = ${esp32_4MB_S_base.build_flags}
27252722[env:esp32_pico_4MB_M]
27262723extends = esp32_4MB_M_base
27272724board = pico32
2728- board_build.flash_mode = dout ; ; (dout = dual out; more compatible than qio = quad i/o)
2725+ board_build.flash_mode = dio ; ; (dout = dual out; more compatible than qio = quad i/o)
27292726upload_speed = 256000 ; ; or 115200 ;; or 460800 ; or 921600 (slower speeds are better when flashing without a soldered connection)
27302727
27312728build_flags = ${esp32_4MB_M_base.build_flags}
@@ -2815,7 +2812,7 @@ build_flags = ${common.build_flags} ${esp32s3.build_flags} -Wno-misleading-inden
28152812 ; Serial debug enabled -DARDUINO_USB_MODE=1 -DARDUINO_USB_CDC_ON_BOOT=1 -DARDUINO_USB_MSC_ON_BOOT=0 -DARDUINO_USB_DFU_ON_BOOT=1 ;; for Hardware-CDC USB mode
28162813 -D ARDUINO_USB_CDC_ON_BOOT =0
28172814 -D WLED_DISABLE_ADALIGHT ; ; disables serial protocols - recommended for Hardware-CDC USB (Serial RX will receive junk commands when RX pin is unconnected, unless its pulled down by resistor)
2818- ${common_mm.animartrix_build_flags}
2815+ ; ${common_mm.animartrix_build_flags}
28192816 ${common_mm.build_disable_sync_interfaces}
28202817 -D LOLIN_WIFI_FIX ; ; try this in case Wifi does not work
28212818 -D WLED_WATCHDOG_TIMEOUT =0 -D CONFIG_ASYNC_TCP_USE_WDT =0
@@ -2825,7 +2822,7 @@ build_flags = ${common.build_flags} ${esp32s3.build_flags} -Wno-misleading-inden
28252822 ${common_mm.HUB75_build_flags}
28262823 -D DEFAULT_LED_TYPE =101
28272824lib_deps = ${esp32s3.lib_deps} ${common_mm.lib_deps_S} ; ; ;; do not include ${esp32.lib_depsV4} !!!!
2828- ${common_mm.animartrix_lib_deps}
2825+ ; ${common_mm.animartrix_lib_deps}
28292826 ${common_mm.HUB75_lib_deps}
28302827
28312828lib_ignore = IRremoteESP8266 ; use with WLED_DISABLE_INFRARED for faster compilation
0 commit comments