Re-enable nightly build for esp01 (1MB). The board is no longer supported officially, but if users want to try, let them try.
3314 lines
161 KiB
INI
3314 lines
161 KiB
INI
; PlatformIO Project Configuration File
|
|
; Please visit documentation: https://docs.platformio.org/page/projectconf.html
|
|
|
|
[platformio]
|
|
# ------------------------------------------------------------------------------
|
|
# ENVIRONMENTS
|
|
#
|
|
# Please uncomment one of the lines below to select your board(s)
|
|
# (use `platformio_override.ini` when building for your own board; see `platformio_override.ini.sample` for an example)
|
|
# ------------------------------------------------------------------------------
|
|
|
|
# CI binaries
|
|
;; default_envs = nodemcuv2, esp8266_2m, esp01_1m_full, esp32dev, esp32_eth # ESP32 variant builds are temporarily excluded from CI due to toolchain issues on the GitHub Actions Linux environment
|
|
; default_envs = nodemcuv2, esp8266_2m, esp01_1m_full, esp32dev, esp32_eth, esp32dev_audioreactive, lolin_s2_mini, esp32c3dev, esp32s3dev_8MB, esp32s3dev_8MB_PSRAM_opi
|
|
|
|
# Release binaries
|
|
; default_envs = nodemcuv2, esp8266_2m, esp01_1m_full, esp32dev, esp32_eth, lolin_s2_mini, esp32c3dev, esp32s3dev_8MB
|
|
|
|
# Build everything
|
|
; default_envs = esp32dev, esp8285_4CH_MagicHome, codm-controller-0_6-rev2, codm-controller-0_6, esp32s2_saola, d1_mini_5CH_Shojo_PCB, d1_mini, sp501e, nodemcuv2, esp32_eth, anavi_miracle_controller, esp07, esp01_1m_full, m5atom, h803wf, d1_mini_ota, heltec_wifi_kit_8, esp8285_H801, d1_mini_debug, wemos_shield_esp32, elekstube_ips
|
|
|
|
# Single binaries (uncomment your board)
|
|
; default_envs = elekstube_ips
|
|
; default_envs = nodemcuv2
|
|
; default_envs = esp8266_2m
|
|
; default_envs = esp01_1m_full
|
|
; default_envs = esp07
|
|
; default_envs = d1_mini
|
|
; default_envs = heltec_wifi_kit_8
|
|
; default_envs = h803wf
|
|
; default_envs = d1_mini_debug
|
|
; default_envs = d1_mini_ota
|
|
; default_envs = esp32dev
|
|
; default_envs = esp8285_4CH_MagicHome
|
|
; default_envs = esp8285_H801
|
|
; default_envs = d1_mini_5CH_Shojo_PCB
|
|
; default_envs = wemos_shield_esp32
|
|
; default_envs = m5atom
|
|
; default_envs = esp32_eth
|
|
; default_envs = esp32dev_qio80
|
|
; default_envs = esp32_eth_ota1mapp
|
|
; default_envs = esp32s2_saola
|
|
; default_envs = esp32c3dev
|
|
; default_envs = lolin_s2_mini
|
|
; default_envs = esp32s3dev_16MB_PSRAM_opi
|
|
|
|
; MoonModules entries
|
|
; ===================
|
|
|
|
default_envs =
|
|
; 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
|
|
; 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
|
|
|
|
; esp32_4MB_S ;; experimental, optimized for speed
|
|
; esp32_4MB_M ;; esp32 recommended default
|
|
; esp32_4MB_M_eth
|
|
; esp32_4MB_M_debug
|
|
; esp32_4MB_XL
|
|
; ; esp32_16MB_S ;; experimental, optimized for speed
|
|
; esp32_16MB_M ;; esp32 recommended for boards with 16MB flash
|
|
; esp32_16MB_M_eth
|
|
; ; esp32_16MB_M_debug
|
|
; ; esp32_16MB_XL
|
|
; esp32_pico_4MB_M
|
|
;;
|
|
; wemos_shield_esp32_4MB_M
|
|
; wemos_shield_esp32_4MB_ICS4343x_M
|
|
; wemos_shield_esp32_4MB_SPM1423_M
|
|
; wemos_shield_esp32_4MB_LineIn_M
|
|
; wemos_shield_esp32_16MB_M
|
|
; wemos_shield_esp32_16MB_ICS4343x_M
|
|
; wemos_shield_esp32_16MB_SPM1423_M
|
|
; wemos_shield_esp32_16MB_SPM1423_XL
|
|
; wemos_shield_esp32_16MB_LineIn_M
|
|
;;
|
|
esp32_4MB_V4_M ;; esp32 4MB standard - HUB75 not included
|
|
esp32dev_compat ;; legacy
|
|
esp32_pico_4MB_V4_S ;; PICO D4 board
|
|
esp32_4MB_V4_S_HUB75 ;; esp32 4MB - HUB75 supported
|
|
esp32_4MB_V4_HUB75_forum ;; esp32 4MB - HUB75 supported (forum pinout)
|
|
esp32_4MB_M_eth ;; esp32 4MB with ethernet support
|
|
esp32_4MB_V4_S_eth ;; esp32 4MB "V4" build with ethernet support
|
|
; esp32_4MB_PSRAM_REV3_S ;; WROVER-E experimental, optimized for WROVER-E with "revision3" chip
|
|
esp32_4MB_PSRAM_S ;; esp32 WROVER with PSRAM; HUB75 supported
|
|
esp32_16MB_V4_S ;; esp32 16MB - HUB75 supported, optimized for speed
|
|
esp32_16MB_V4_M ;; esp32 16MB - HUB75 supported
|
|
esp32_16MB_V4_M_debug ;; esp32 16MB - for out-of-the-box debugging
|
|
;;
|
|
esp32S3_4MB_S ;; experimental, for HD-WF2 (HUB75 supported)
|
|
esp32S3_8MB_S ;; experimental, optimized for speed, HUB75 supported
|
|
;; esp32S3_8MB_M ;; HUB75 supported
|
|
esp32S3_4MB_PSRAM_S ;; for lolin s3 mini, S3 zero, S3 super mini - optimized for speed (no HUB75 support)
|
|
esp32S3_4MB_PSRAM_M ;; for lolin s3 mini, S3 zero, S3 super mini (no HUB75 support)
|
|
esp32S3_8MB_PSRAM_M ;; for S3 with 8MB flash, HUB75 supported
|
|
esp32S3_16MB_PSRAM_M_HUB75 ;; for S3 with 16MB flash, HUB75 supported (MOONHUB HUB75 adapter board)
|
|
esp32S3_WROOM-2_M ;; for S3 WROOM-2; HUB75 supported
|
|
;;
|
|
esp32s2_PSRAM_S ;; OTA-compatible with upstream
|
|
esp32s2_PSRAM_M ;; for lolin S2 mini
|
|
;; esp32s2_tinyUF2_PSRAM_S ;; experimental - only for adafruit -S2 boards with tinyUF2 bootloader !!!
|
|
;;
|
|
esp32c3dev_2MB_M ;; experimental - 2MB Flash, no OTA
|
|
esp32c3dev_4MB_M ;; experimental
|
|
esp32c3mini_dio_4MB_M ;; for boards that need "dio" flash mode (instead of qio)
|
|
;; seeed_esp32c3_4MB_S ;; experimental
|
|
;;
|
|
esp8266_2MB_S
|
|
esp8266_4MB_S ;; recommended for 8266 with audio sync
|
|
esp8266_4MB_M
|
|
; esp8266pro_16MB_S
|
|
esp8266pro_16MB_M
|
|
esp01_1MB_S
|
|
;;
|
|
;; special boards
|
|
abc_wled_controller_v43_V4_S
|
|
athom_music_esp32_4MB_V4_M
|
|
adafruit_matrixportal_esp32s3 ;; HUB75 supported, uses standard bootloader
|
|
; adafruit_matrixportal_esp32s3_tinyUF2 ;; supports the adafruit "tinyUF2" bootloader
|
|
|
|
; Go to MoonModules environments for environments
|
|
|
|
|
|
src_dir = ./wled00
|
|
data_dir = ./wled00/data
|
|
build_cache_dir = ~/.platformio/buildcache
|
|
extra_configs =
|
|
platformio_override.ini
|
|
|
|
[common]
|
|
# ------------------------------------------------------------------------------
|
|
# PLATFORM:
|
|
# !! DO NOT confuse platformio's ESP8266 development platform with Arduino core for ESP8266
|
|
#
|
|
# arduino core 2.6.3 = platformIO 2.3.2
|
|
# arduino core 2.7.0 = platformIO 2.5.0
|
|
# ------------------------------------------------------------------------------
|
|
arduino_core_3_1_2 = espressif8266@4.2.1
|
|
|
|
# Development platforms
|
|
arduino_core_develop = https://github.com/platformio/platform-espressif8266#develop
|
|
arduino_core_git = https://github.com/platformio/platform-espressif8266#feature/stage
|
|
|
|
# Platform to use for ESP8266
|
|
platform_wled_default = ${common.arduino_core_3_1_2}
|
|
# We use 2.7.4.7 for all, includes PWM flicker fix and Wstring optimization
|
|
#platform_packages = tasmota/framework-arduinoespressif8266 @ 3.20704.7
|
|
platform_packages = platformio/toolchain-xtensa @ ~2.100300.220621 #2.40802.200502
|
|
platformio/tool-esptool #@ ~1.413.0
|
|
platformio/tool-esptoolpy #@ ~1.30000.0
|
|
|
|
|
|
# ------------------------------------------------------------------------------
|
|
# FLAGS: DEBUG
|
|
# esp8266 : see https://docs.platformio.org/en/latest/platforms/espressif8266.html#debug-level
|
|
# esp32 : see https://docs.platformio.org/en/latest/platforms/espressif32.html#debug-level
|
|
# ------------------------------------------------------------------------------
|
|
debug_flags = -D DEBUG=1 -D WLED_DEBUG
|
|
-DDEBUG_ESP_WIFI -DDEBUG_ESP_HTTP_CLIENT -DDEBUG_ESP_HTTP_UPDATE -DDEBUG_ESP_HTTP_SERVER -DDEBUG_ESP_UPDATER -DDEBUG_ESP_OTA -DDEBUG_TLS_MEM ;; for esp8266
|
|
-DARDUINOJSON_DEBUG=1 ;; WLEDMM: this enables some debug asserts in arduinoJSON
|
|
# if needed (for memleaks etc) also add; -DDEBUG_ESP_OOM -include "umm_malloc/umm_malloc_cfg.h"
|
|
# -DDEBUG_ESP_CORE is not working right now
|
|
|
|
# ------------------------------------------------------------------------------
|
|
# FLAGS: ldscript (available ldscripts at https://github.com/esp8266/Arduino/tree/master/tools/sdk/ld)
|
|
# ldscript_2m1m (2048 KB) = 1019 KB sketch, 4 KB eeprom, 1004 KB spiffs, 16 KB reserved
|
|
# ldscript_4m1m (4096 KB) = 1019 KB sketch, 4 KB eeprom, 1002 KB spiffs, 16 KB reserved, 2048 KB empty/ota?
|
|
#
|
|
# Available lwIP variants (macros):
|
|
# -DPIO_FRAMEWORK_ARDUINO_LWIP_HIGHER_BANDWIDTH = v1.4 Higher Bandwidth (default)
|
|
# -DPIO_FRAMEWORK_ARDUINO_LWIP2_LOW_MEMORY = v2 Lower Memory
|
|
# -DPIO_FRAMEWORK_ARDUINO_LWIP2_HIGHER_BANDWIDTH = v2 Higher Bandwidth
|
|
# -DPIO_FRAMEWORK_ARDUINO_LWIP2_HIGHER_BANDWIDTH_LOW_FLASH
|
|
#
|
|
# BearSSL performance:
|
|
# When building with -DSECURE_CLIENT=SECURE_CLIENT_BEARSSL, please add `board_build.f_cpu = 160000000` to the environment configuration
|
|
#
|
|
# BearSSL ciphers:
|
|
# When building on core >= 2.5, you can add the build flag -DBEARSSL_SSL_BASIC in order to build BearSSL with a limited set of ciphers:
|
|
# TLS_RSA_WITH_AES_128_CBC_SHA256 / AES128-SHA256
|
|
# TLS_RSA_WITH_AES_256_CBC_SHA256 / AES256-SHA256
|
|
# TLS_RSA_WITH_AES_128_CBC_SHA / AES128-SHA
|
|
# TLS_RSA_WITH_AES_256_CBC_SHA / AES256-SHA
|
|
# This reduces the OTA size with ~45KB, so it's especially useful on low memory boards (512k/1m).
|
|
# ------------------------------------------------------------------------------
|
|
build_flags =
|
|
-Wno-attributes
|
|
-DMQTT_MAX_PACKET_SIZE=1024
|
|
-DSECURE_CLIENT=SECURE_CLIENT_BEARSSL
|
|
-DBEARSSL_SSL_BASIC
|
|
-D CORE_DEBUG_LEVEL=0
|
|
;; WLEDMM espressif docs say NDEBUG is not recommended. see https://docs.espressif.com/projects/esp-idf/en/v4.4.4/esp32/api-guides/performance/speed.html#not-recommended
|
|
-D NDEBUG ;; however it seems neecessary for non-V4 builds, to avoid spurious "assert" crashes inside the wifi core.
|
|
-Wno-attributes ;; silence warnings about unknown attribute 'maybe_unused' in NeoPixelBus
|
|
#build_flags for the IRremoteESP8266 library (enabled decoders have to appear here)
|
|
-D _IR_ENABLE_DEFAULT_=false
|
|
-D DECODE_HASH=true
|
|
-D DECODE_NEC=true
|
|
-D DECODE_SONY=true
|
|
-D DECODE_SAMSUNG=true
|
|
-D DECODE_LG=true
|
|
-D FASTLED_NO_FASTLED
|
|
;-Dregister= # remove warnings in C++17 due to use of deprecated register keyword by the FastLED library ;; warning: this breaks framework code on ESP32-C3 and ESP32-S2
|
|
-DWLED_USE_MY_CONFIG
|
|
; -D USERMOD_SENSORSTOMQTT
|
|
#For ADS1115 sensor uncomment following
|
|
; -D USERMOD_ADS1115
|
|
|
|
build_unflags =
|
|
|
|
build_flags_esp8266 = ${common.build_flags} ${esp8266.build_flags}
|
|
build_flags_esp32 = ${common.build_flags} ${esp32_idf_V4.build_flags}
|
|
build_flags_esp32_V4= ${common.build_flags} ${esp32_idf_V4.build_flags}
|
|
|
|
ldscript_1m128k = eagle.flash.1m128.ld
|
|
ldscript_2m512k = eagle.flash.2m512.ld
|
|
ldscript_2m1m = eagle.flash.2m1m.ld
|
|
ldscript_4m1m = eagle.flash.4m1m.ld
|
|
|
|
;; WLEDMM: additional partion layouts for 8266 "pro" with 8MB or 16MB. On 8266 the max program size is always 1MB
|
|
ldscript_auto = eagle.flash.auto.ld
|
|
ldscript_8m6m = eagle.flash.8m6m.ld
|
|
ldscript_16m14m = eagle.flash.16m14m.ld
|
|
|
|
[scripts_defaults]
|
|
extra_scripts =
|
|
pre:pio-scripts/set_version.py
|
|
pre:pio-scripts/set_nightly_version.py
|
|
pre:pio-scripts/build_ui.py
|
|
pre:pio-scripts/conditional_usb_mode.py
|
|
pre:pio-scripts/set_repo.py
|
|
post:pio-scripts/output_bins.py
|
|
post:pio-scripts/strip-floats.py
|
|
pre:pio-scripts/user_config_copy.py
|
|
; post:pio-scripts/obj-dump.py ;; convenience script to create a disassembly dump of the firmware (hardcore debugging)
|
|
|
|
# ------------------------------------------------------------------------------
|
|
# COMMON SETTINGS:
|
|
# ------------------------------------------------------------------------------
|
|
[env]
|
|
framework = arduino
|
|
board_build.flash_mode = dout
|
|
monitor_speed = 115200
|
|
# slow upload speed (comment this out with a ';' when building for development use)
|
|
upload_speed = 115200
|
|
# fast upload speed (remove ';' when building for development use)
|
|
; upload_speed = 921600
|
|
|
|
# ------------------------------------------------------------------------------
|
|
# LIBRARIES: required dependencies
|
|
# Please note that we don't always use the latest version of a library.
|
|
#
|
|
# The following libraries have been included (and some of them changed) in the source:
|
|
# ArduinoJson@5.13.5, E131@1.0.0(changed), Time@1.5, Timezone@1.2.1
|
|
# ------------------------------------------------------------------------------
|
|
lib_compat_mode = strict
|
|
lib_deps =
|
|
;;fastled/FastLED @ 3.6.0 ;; default from upstream WLED
|
|
fastled/FastLED @ 3.7.1 ;; needed to prevent compiler errors when using newer framework versions
|
|
;; https://github.com/softhack007/FastLED.git#ESP32-C6 ;; patched version needed for -C6
|
|
IRremoteESP8266 @ 2.8.2
|
|
;;makuna/NeoPixelBus @ 2.7.9 ;; WLEDMM will be added in board specific sections
|
|
;;makuna/NeoPixelBus @ 2.8.3
|
|
https://github.com/Aircoookie/ESPAsyncWebServer.git#v2.4.2
|
|
bitbank2/AnimatedGIF@^1.4.7
|
|
https://github.com/Aircoookie/GifDecoder.git#bc3af189b6b1e06946569f6b4287f0b79a860f8e
|
|
#For use of the TTGO T-Display ESP32 Module with integrated TFT display uncomment the following line
|
|
#TFT_eSPI
|
|
#For compatible OLED display uncomment following
|
|
#U8g2 #@ ~2.33.15
|
|
#For Dallas sensor uncomment following
|
|
#OneWire @ ~2.3.7
|
|
#For BME280 sensor uncomment following
|
|
#BME280 @ ~3.0.0
|
|
; adafruit/Adafruit BMP280 Library @ 2.1.0
|
|
; adafruit/Adafruit CCS811 Library @ 1.0.4
|
|
; adafruit/Adafruit Si7021 Library @ 1.4.0
|
|
#For ADS1115 sensor uncomment following
|
|
; adafruit/Adafruit BusIO @ 1.13.2
|
|
; adafruit/Adafruit ADS1X15 @ 2.4.0
|
|
|
|
extra_scripts = ${scripts_defaults.extra_scripts}
|
|
|
|
[esp8266]
|
|
build_unflags = ${common.build_unflags}
|
|
-D WLED_ENABLE_GIF ;; GIF support not possible - 8266 does not have enough RAM
|
|
build_flags =
|
|
-DESP8266
|
|
-DFP_IN_IROM
|
|
;-Wno-deprecated-declarations
|
|
;-Wno-register ;; leaves some warnings when compiling C files: command-line option '-Wno-register' is valid for C++/ObjC++ but not for C
|
|
;-Dregister= # remove warnings in C++17 due to use of deprecated register keyword by the FastLED library ;; warning: this can be dangerous
|
|
-Wno-misleading-indentation
|
|
; NONOSDK22x_190703 = 2.2.2-dev(38a443e)
|
|
-DPIO_FRAMEWORK_ARDUINO_ESPRESSIF_SDK22x_190703
|
|
; lwIP 2 - Higher Bandwidth no Features
|
|
; -DPIO_FRAMEWORK_ARDUINO_LWIP2_HIGHER_BANDWIDTH_LOW_FLASH
|
|
; lwIP 1.4 - Higher Bandwidth (Aircoookie has)
|
|
-DPIO_FRAMEWORK_ARDUINO_LWIP_HIGHER_BANDWIDTH
|
|
; VTABLES in Flash
|
|
-DVTABLES_IN_FLASH
|
|
; restrict to minimal mime-types
|
|
-DMIMETYPE_MINIMAL
|
|
; other special-purpose framework flags (see https://docs.platformio.org/en/latest/platforms/espressif8266.html)
|
|
; -D PIO_FRAMEWORK_ARDUINO_MMU_CACHE16_IRAM48 ;; in case of linker errors like "section `.text1' will not fit in region `iram1_0_seg'"
|
|
; -D PIO_FRAMEWORK_ARDUINO_MMU_CACHE16_IRAM48_SECHEAP_SHARED ;; (experimental) adds some extra heap, but may cause slowdown
|
|
-D USERMOD_AUDIOREACTIVE
|
|
-D NON32XFER_HANDLER ;; ask forgiveness for PROGMEM misuse
|
|
-D WLED_DISABLE_PARTICLESYSTEM2D
|
|
-D WLED_DISABLE_PIXELFORGE ;; not enought space in flash
|
|
-D WLED_USE_SHARED_RMT ;; don't use the RMTHI driver (not compatible with esp8266)
|
|
|
|
;; special library dependencies for 8266 (workaround for upsteam #5136) - replaces env.lib_deps
|
|
lib8266_deps =
|
|
fastled/FastLED @ 3.6.0 ;; default from upstream WLED
|
|
IRremoteESP8266 @ 2.8.2
|
|
https://github.com/Aircoookie/ESPAsyncWebServer.git#v2.2.1 ;; use proven version for 8266
|
|
;; bitbank2/AnimatedGIF@^1.4.7
|
|
;; https://github.com/Aircoookie/GifDecoder.git#bc3af189b6b1e06946569f6b4287f0b79a860f8e
|
|
|
|
lib_deps =
|
|
#https://github.com/lorol/LITTLEFS.git
|
|
ESPAsyncTCP @ 1.2.2
|
|
ESPAsyncUDP
|
|
;; makuna/NeoPixelBus @ 2.6.9 ;; WLEDMM use if you have problems with 2.7.5
|
|
makuna/NeoPixelBus @ 2.7.5
|
|
${esp8266.lib8266_deps} ;; use proven library versions for 8266
|
|
lib_ignore =
|
|
NeoESP32RmtHI
|
|
|
|
;; compatibilty flags - same as 0.14.0 which seems to work better on some 8266 boards. Not using PIO_FRAMEWORK_ARDUINO_MMU_CACHE16_IRAM48
|
|
build_flags_compat =
|
|
-DESP8266
|
|
-DFP_IN_IROM
|
|
;;-Wno-deprecated-declarations
|
|
-Wno-misleading-indentation
|
|
;;-Wno-attributes ;; silence warnings about unknown attribute 'maybe_unused' in NeoPixelBus
|
|
-DPIO_FRAMEWORK_ARDUINO_ESPRESSIF_SDK22x_190703
|
|
-DPIO_FRAMEWORK_ARDUINO_LWIP_HIGHER_BANDWIDTH
|
|
-DVTABLES_IN_FLASH
|
|
-DMIMETYPE_MINIMAL
|
|
-DWLED_SAVE_IRAM ;; needed to prevent linker error
|
|
-D WLED_USE_SHARED_RMT ;; don't use the RMTHI driver (not compatible with esp8266)
|
|
|
|
;; this platform version was used for WLED 0.14.0
|
|
platform_compat = espressif8266@4.2.0
|
|
platform_packages_compat =
|
|
platformio/toolchain-xtensa @ ~2.100300.220621 #2.40802.200502
|
|
platformio/tool-esptool #@ ~1.413.0
|
|
platformio/tool-esptoolpy #@ ~1.30000.0
|
|
|
|
|
|
;; old V3 platform for esp32. Can be a fallback option when hitting flash size limits
|
|
[esp32_legacy]
|
|
platform = espressif32@3.5.0
|
|
platform_packages = framework-arduinoespressif32 @ https://github.com/Aircoookie/arduino-esp32.git#1.0.6.4
|
|
build_unflags = ${common.build_unflags}
|
|
-Wshadow=compatible-local ;; not supported by older compilers
|
|
;; -D CORE_DEBUG_LEVEL=0 -DNDEBUG ;; enable core debugging
|
|
build_flags = -g
|
|
-Wno-unused-variable -Wno-unused-function ;; removes noise
|
|
-DARDUINO_ARCH_ESP32
|
|
-D CONFIG_ASYNC_TCP_USE_WDT=0
|
|
-D CONFIG_ASYNC_TCP_TASK_STACK_SIZE=9472 ;; WLEDMM increase stack by 1.25Kb, as audioreactive needs bigger SETTINGS_STACK_BUF_SIZE
|
|
-D CONFIG_ASYNC_TCP_STACK_SIZE=9472
|
|
-D LOROL_LITTLEFS ;; use LITTLEFS library by lorol in ESP32 core 1.x.x instead of built-in in 2.x.x
|
|
-D WLED_USE_SHARED_RMT ;; don't use the RMTHI driver (not compatible with esp-idf v3.x)
|
|
;; -D CORE_DEBUG_LEVEL=5 ;; enable core debug messages
|
|
;; -DDEBUG -DWLED_DEBUG ;; enable WLED debug messages
|
|
lib_deps =
|
|
esp32async/AsyncTCP @ 3.4.7
|
|
; https://github.com/lorol/LITTLEFS.git
|
|
https://github.com/softhack007/LITTLEFS-threadsafe.git#master ;; WLEDMM specific: patched version of lorol LittleFS with improved thread safety
|
|
makuna/NeoPixelBus @ 2.7.5
|
|
;; makuna/NeoPixelBus @ 2.7.9 ;; experimental
|
|
${env.lib_deps}
|
|
lib_ignore =
|
|
NeoESP32RmtHI
|
|
monitor_filters = esp32_exception_decoder
|
|
board_build.partitions = ${esp32.default_partitions} ;; default partioning for 4MB Flash - can be overridden in build envs
|
|
default_partitions = ${esp32.default_partitions} ;; backwards compatibility
|
|
board_build.f_flash = 80000000L
|
|
board_build.flash_mode = dout ;; avoid dio/quot/qio - these are broken in arduino-esp32 1.0.6.x
|
|
;;board_build.flash_mode = dio
|
|
; RAM: [== ] 24.2% (used 79284 bytes from 327680 bytes)
|
|
; Flash: [========= ] 93.1% (used 1464961 bytes from 1572864 bytes)
|
|
|
|
;; standard platform for esp32
|
|
[esp32]
|
|
platform = ${esp32_idf_V4.platform} ;; default = tasmota (= default from esp32_idf_V4)
|
|
platform_packages = ${esp32_idf_V4.platform_packages}
|
|
build_flags = ${esp32_idf_V4.build_flags}
|
|
|
|
default_partitions = tools/WLED_ESP32_4MB_1MB_FS.csv ;; WLED standard for 4MB flash: 1.4MB firmware, 1MB filesystem
|
|
;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)
|
|
|
|
tiny_partitions = tools/WLED_ESP32_2MB_noOTA.csv
|
|
extended_partitions = tools/WLED_ESP32_4MB_700k_FS.csv
|
|
big_partitions = tools/WLED_ESP32_4MB_256KB_FS.csv ;; 1.8MB firmware, 256KB filesystem, coredump support
|
|
large_partitions = tools/WLED_ESP32_8MB.csv
|
|
extreme_partitions = tools/WLED_ESP32_16MB_9MB_FS.csv
|
|
|
|
lib_deps = ${esp32_idf_V4.lib_deps}
|
|
monitor_filters = esp32_exception_decoder
|
|
|
|
;; Compatibility with upstream --> you should prefer using ${common_mm.build_flags_S} and ${common_mm.lib_deps_S}
|
|
AR_build_flags = ${common_mm.AR_build_flags}
|
|
AR_lib_deps = ${common_mm.AR_lib_deps} ;; optimized version, 10% faster on -S2/-C3
|
|
board_build.partitions = ${esp32.default_partitions} ;; default partioning for 4MB Flash - can be overridden in build envs
|
|
board_build.f_flash = 80000000L
|
|
board_build.flash_mode = dio
|
|
|
|
;; WLEDMM begin
|
|
|
|
;; tasmota platform - reduces firmaware size by ~280KB
|
|
platformTasmota = https://github.com/tasmota/platform-espressif32/releases/download/2023.06.02/platform-espressif32.zip ;; Tasmota Arduino Core 2.0.9 with IPv6 support, based on IDF 4.4.4
|
|
platform_packagesTasmota =
|
|
|
|
;; ** For compiling with latest Frameworks (IDF4.4.x and arduino-esp32 v2.0.x) **
|
|
;;; previous standard V4 platform
|
|
platformV4_pre = espressif32@5.2.0
|
|
platformV4_packages_pre =
|
|
toolchain-riscv32-esp @ 8.4.0+2021r2-patch5 ; required for platform version < 5.3.0, remove this line when upgrading to platform >=5.3.0
|
|
;;; standard V4 platform
|
|
platformV4 = espressif32@ ~6.3.2
|
|
platformV4_packages = platformio/framework-arduinoespressif32 @ 3.20009.0 ;; select arduino-esp32 v2.0.9 (arduino-esp32 2.0.10 thru 2.0.14 are buggy so avoid them)
|
|
|
|
;;; experimental: latest V4 platform with latest arduino-esp32 2.0.14 + ESP-IDF 4.4.6 (may or may not work)
|
|
platformV4_xp = espressif32@ ~6.5.0
|
|
platformV4_packages_xp = platformio/framework-arduinoespressif32 @ 3.20014.231204 ;; arduino-esp32 2.0.14
|
|
|
|
build_flagsV4 = -g
|
|
-DARDUINO_ARCH_ESP32 -DESP32
|
|
-DCONFIG_LITTLEFS_FOR_IDF_3_2 -DLFS_THREADSAFE
|
|
-D CONFIG_ASYNC_TCP_USE_WDT=0
|
|
-D CONFIG_ASYNC_TCP_TASK_STACK_SIZE=9472 ;; WLEDMM increase stack by 1.25Kb, as audioreactive needs bigger SETTINGS_STACK_BUF_SIZE
|
|
-D CONFIG_ASYNC_TCP_STACK_SIZE=9472 ;; *sigh* newer asyncTCP uses this instead of .._TASK_..
|
|
; -D WLEDMM_TWOPATH ;; use I2S1 as the second bus --> slightly faster on some setups
|
|
; -D WLEDMM_SLOWPATH ;; don't use I2S for LED bus
|
|
; -DARDUINO_USB_CDC_ON_BOOT=0 ;; mandatory for "classic ESP32" when building with arduino-esp32 >=2.0.3
|
|
-D NO_GFX ; Disable the use of Adafruit_GFX by the HUB75 driver
|
|
|
|
;;; V4.4.x libraries (without LOROL_LITTLEFS; with newer NeoPixelBus)
|
|
lib_depsV4 =
|
|
esp32async/AsyncTCP @ 3.4.7
|
|
makuna/NeoPixelBus @ 2.7.9 ;; experimental
|
|
${common_mm.HUB75_lib_deps}
|
|
${env.lib_deps}
|
|
|
|
|
|
;; WLEDMM end
|
|
|
|
[esp32_idf_V4]
|
|
;; please note that you can NOT update existing ESP32 installs with a "V4" build. Also updating by OTA will not work properly.
|
|
;; You need to completely erase your device (esptool erase_flash) first, then install the "V4" build from VSCode+platformio.
|
|
;; uses arduino-esp32 v2.0.9 (arduino-esp32 2.0.10 thru 2.0.14 are buggy so avoid them)
|
|
|
|
;; standard platform - RECOMMENDED for debugging! The tasmota platform has removed all kernel error reporting code
|
|
;; platform = espressif32@ ~6.3.2
|
|
;; platform_packages = platformio/framework-arduinoespressif32 @ 3.20009.0 ;; select arduino-esp32 v2.0.9 (arduino-esp32 2.0.10 thru 2.0.14 are buggy so avoid them)
|
|
|
|
;; Tasmota Arduino Core 2.0.9 with IPv6 support, based on IDF 4.4.4. Warning: all kernel error asserts removed
|
|
platform = ${esp32.platformTasmota}
|
|
platform_packages = ${esp32.platform_packagesTasmota}
|
|
|
|
build_unflags = ${common.build_unflags}
|
|
build_flags = -g
|
|
-Wshadow=compatible-local ;; emit warning in case a local variable "shadows" another local one
|
|
-DARDUINO_ARCH_ESP32 -DESP32
|
|
#-DCONFIG_LITTLEFS_FOR_IDF_3_2
|
|
-D CONFIG_ASYNC_TCP_USE_WDT=0
|
|
-D CONFIG_ASYNC_TCP_TASK_STACK_SIZE=9472 ;; WLEDMM increase stack by 1.25Kb, as audioreactive needs bigger SETTINGS_STACK_BUF_SIZE
|
|
-D CONFIG_ASYNC_TCP_STACK_SIZE=9472 ;; *sigh* newer asyncTCP uses this instead of .._TASK_..
|
|
-DARDUINO_USB_CDC_ON_BOOT=0 ;; this flag is mandatory for "classic ESP32" when building with arduino-esp32 >=2.0.3
|
|
; -D WLEDMM_TWOPATH ;; use I2S1 as the second bus --> slightly faster on some setups
|
|
; -D WLEDMM_SLOWPATH ;; don't use I2S for LED bus
|
|
default_partitions = tools/WLED_ESP32_4MB_1MB_FS.csv
|
|
lib_deps =
|
|
esp32async/AsyncTCP @ 3.4.7
|
|
makuna/NeoPixelBus @ 2.7.9 ;; experimental
|
|
${env.lib_deps}
|
|
board_build.partitions = ${esp32.default_partitions} ;; default partioning for 4MB Flash - can be overridden in build envs
|
|
monitor_filters = esp32_exception_decoder
|
|
board_build.f_flash = 80000000L
|
|
board_build.flash_mode = dio
|
|
|
|
[esp32s2]
|
|
;; generic definitions for all ESP32-S2 boards
|
|
;; platform = espressif32@5.2.0
|
|
;; platform_packages =
|
|
;; toolchain-riscv32-esp @ 8.4.0+2021r2-patch5
|
|
;; toolchain-xtensa-esp32s2 @ 8.4.0+2021r2-patch5
|
|
;; standard espressif platform
|
|
;; platform = espressif32@ ~6.3.2
|
|
;; platform_packages = platformio/framework-arduinoespressif32 @ 3.20009.0 ;; select arduino-esp32 v2.0.9 (arduino-esp32 2.0.10 thru 2.0.14 are buggy so avoid them)
|
|
;; inherit tasmota platform from esp32_idf_V4
|
|
platform = ${esp32_idf_V4.platform}
|
|
platform_packages = ${esp32_idf_V4.platform_packages}
|
|
board_build.flash_mode = dio ;; prevents build error: sdkconfig.h: No such file or directory
|
|
|
|
build_flags = -g
|
|
-DARDUINO_ARCH_ESP32 -DESP32 ;; WLEDMM
|
|
-DARDUINO_ARCH_ESP32S2
|
|
-DCONFIG_IDF_TARGET_ESP32S2=1
|
|
-DCONFIG_LITTLEFS_FOR_IDF_3_2 -DLFS_THREADSAFE ;; WLEDMM
|
|
-D CONFIG_ASYNC_TCP_USE_WDT=0
|
|
-D CONFIG_ASYNC_TCP_TASK_STACK_SIZE=8614 ;; WLEDMM increase stack by 1Kb, as audioreactive needs bigger SETTINGS_STACK_BUF_SIZE
|
|
-D CONFIG_ASYNC_TCP_STACK_SIZE=8614 ;; *sigh* newer asyncTCP uses this instead of .._TASK_..
|
|
-DARDUINO_USB_MSC_ON_BOOT=0 -DARDUINO_USB_DFU_ON_BOOT=0
|
|
-DCO
|
|
-DARDUINO_USB_MODE=0 ;; this flag is mandatory for ESP32-S2 !
|
|
;; please make sure that the following flags are properly set (to 0 or 1) by your board.json, or included in your custom platformio_override.ini entry:
|
|
;; ARDUINO_USB_CDC_ON_BOOT
|
|
; -D WLED_USE_SHARED_RMT ;; un-comment to use the standard RMT driver instead of RMTHI
|
|
|
|
lib_deps =
|
|
esp32async/AsyncTCP @ 3.4.7
|
|
makuna/NeoPixelBus @ 2.7.9 ;; experimental - reduces LED glitches on -S2
|
|
${env.lib_deps}
|
|
board_build.partitions = ${esp32.default_partitions} ;; default partioning for 4MB Flash - can be overridden in build envs
|
|
monitor_filters = esp32_exception_decoder
|
|
|
|
[esp32c3]
|
|
;; generic definitions for all ESP32-C3 boards
|
|
;; inherit tasmota platform from esp32_idf_V4
|
|
platform = ${esp32_idf_V4.platform}
|
|
platform_packages = ${esp32_idf_V4.platform_packages}
|
|
build_unflags = ${common.build_unflags}
|
|
build_flags = -g
|
|
-DARDUINO_ARCH_ESP32 -DESP32 ;; WLEDMM
|
|
-DARDUINO_ARCH_ESP32C3
|
|
-DCONFIG_IDF_TARGET_ESP32C3=1
|
|
-DCONFIG_LITTLEFS_FOR_IDF_3_2 -DLFS_THREADSAFE ;; WLEDMM
|
|
-D CONFIG_ASYNC_TCP_USE_WDT=0
|
|
-D CONFIG_ASYNC_TCP_TASK_STACK_SIZE=9472 ;; WLEDMM increase stack by 1.25Kb, as audioreactive needs bigger SETTINGS_STACK_BUF_SIZE
|
|
-D CONFIG_ASYNC_TCP_STACK_SIZE=9472 ;; *sigh* newer asyncTCP uses this instead of .._TASK_..
|
|
-DCO
|
|
-DARDUINO_USB_MODE=1 ;; this flag is mandatory for ESP32-C3
|
|
;; please make sure that the following flags are properly set (to 0 or 1) by your board.json, or included in your custom platformio_override.ini entry:
|
|
;; ARDUINO_USB_CDC_ON_BOOT
|
|
-D WLED_USE_SHARED_RMT ;; don't use the RMTHI driver (not compatible with -C3)
|
|
|
|
lib_deps =
|
|
esp32async/AsyncTCP @ 3.4.7
|
|
makuna/NeoPixelBus @ 2.7.9 ;; experimental
|
|
${env.lib_deps}
|
|
lib_ignore =
|
|
NeoESP32RmtHI
|
|
board_build.partitions = ${esp32.default_partitions} ;; default partioning for 4MB Flash - can be overridden in build envs
|
|
monitor_filters = esp32_exception_decoder
|
|
|
|
[esp32s3]
|
|
;; generic definitions for all ESP32-S3 boards
|
|
;; inherit tasmota platform from esp32_idf_V4
|
|
platform = ${esp32_idf_V4.platform}
|
|
platform_packages = ${esp32_idf_V4.platform_packages}
|
|
build_unflags = ${common.build_unflags}
|
|
build_flags = -g
|
|
-DESP32
|
|
-DARDUINO_ARCH_ESP32
|
|
-DARDUINO_ARCH_ESP32S3
|
|
-DCONFIG_IDF_TARGET_ESP32S3=1
|
|
-DCONFIG_LITTLEFS_FOR_IDF_3_2 -DLFS_THREADSAFE ;; WLEDMM
|
|
-DWLEDMM_NO_SERIAL_WAIT ;; WLEDMM don't wait for serial on -S3 (unless WLED_DEBUG is set)
|
|
-D CONFIG_ASYNC_TCP_USE_WDT=0
|
|
-D CONFIG_ASYNC_TCP_TASK_STACK_SIZE=9472 ;; WLEDMM increase stack by 1.25Kb, as audioreactive needs bigger SETTINGS_STACK_BUF_SIZE
|
|
-D CONFIG_ASYNC_TCP_STACK_SIZE=9472 ;; *sigh* newer asyncTCP uses this instead of .._TASK_..
|
|
-DARDUINO_USB_MSC_ON_BOOT=0 -DARDUINO_DFU_ON_BOOT=0
|
|
-DCO
|
|
;; please make sure that the following flags are properly set (to 0 or 1) by your board.json, or included in your custom platformio_override.ini entry:
|
|
;; ARDUINO_USB_MODE, ARDUINO_USB_CDC_ON_BOOT
|
|
;-D WLED_USE_SHARED_RMT ;; un-comment to use the standard RMT driver instead of RMTHI
|
|
lib_deps =
|
|
esp32async/AsyncTCP @ 3.4.7
|
|
makuna/NeoPixelBus @ 2.7.9 ;; experimental
|
|
${env.lib_deps}
|
|
board_build.partitions = ${esp32.large_partitions} ;; default partioning for 8MB flash - can be overridden in build envs
|
|
monitor_filters = esp32_exception_decoder
|
|
|
|
|
|
# ------------------------------------------------------------------------------
|
|
# WLED BUILDS
|
|
# ------------------------------------------------------------------------------
|
|
|
|
[env:nodemcuv2]
|
|
board = nodemcuv2
|
|
platform = ${common.platform_wled_default}
|
|
platform_packages = ${common.platform_packages}
|
|
board_build.ldscript = ${common.ldscript_4m1m}
|
|
build_unflags = ${esp8266.build_unflags}
|
|
build_flags = ${common.build_flags_esp8266} -D WLED_RELEASE_NAME=ESP_8266 #-DWLED_DISABLE_2D
|
|
lib_deps = ${esp8266.lib_deps}
|
|
lib_ignore = ${esp8266.lib_ignore}
|
|
monitor_filters = esp8266_exception_decoder
|
|
|
|
[env:nodemcuv2_160]
|
|
extends = env:nodemcuv2
|
|
board_build.f_cpu = 160000000L
|
|
build_flags = ${common.build_flags_esp8266} -D WLED_RELEASE_NAME=ESP_8266_160 #-DWLED_DISABLE_2D
|
|
|
|
[env:esp8266_2m]
|
|
board = esp_wroom_02
|
|
platform = ${common.platform_wled_default}
|
|
platform_packages = ${common.platform_packages}
|
|
board_build.ldscript = ${common.ldscript_2m512k}
|
|
build_unflags = ${esp8266.build_unflags}
|
|
build_flags = ${common.build_flags_esp8266} -D WLED_RELEASE_NAME=ESP02
|
|
lib_deps = ${esp8266.lib_deps}
|
|
lib_ignore = ${esp8266.lib_ignore}
|
|
|
|
[env:esp8266_2m_160]
|
|
extends = env:esp8266_2m
|
|
board_build.f_cpu = 160000000L
|
|
build_flags = ${common.build_flags_esp8266} -D WLED_RELEASE_NAME=ESP02_160
|
|
|
|
;WLEDMM: see below
|
|
; [env:esp01_1m_full]
|
|
; board = esp01_1m
|
|
; platform = ${common.platform_wled_default}
|
|
; platform_packages = ${common.platform_packages}
|
|
; board_build.ldscript = ${common.ldscript_1m128k}
|
|
; build_unflags = ${common.build_unflags}
|
|
; build_flags = ${common.build_flags_esp8266} -D WLED_RELEASE_NAME=ESP01 -D WLED_DISABLE_OTA
|
|
; ; -D WLED_USE_UNREAL_MATH ;; may cause wrong sunset/sunrise times, but saves 7064 bytes FLASH and 975 bytes RAM
|
|
; lib_deps = ${esp8266.lib_deps}
|
|
; [env:esp01_1m_full_160]
|
|
; extends = env:esp01_1m_full
|
|
; board_build.f_cpu = 160000000L
|
|
; build_flags = ${common.build_flags_esp8266} -D WLED_RELEASE_NAME=ESP01_160 -D WLED_DISABLE_OTA
|
|
; ; -D WLED_USE_UNREAL_MATH ;; may cause wrong sunset/sunrise times, but saves 7064 bytes FLASH and 975 bytes RAM
|
|
|
|
[env:esp07]
|
|
board = esp07
|
|
platform = ${common.platform_wled_default}
|
|
platform_packages = ${common.platform_packages}
|
|
board_build.ldscript = ${common.ldscript_4m1m}
|
|
build_unflags = ${esp8266.build_unflags}
|
|
build_flags = ${common.build_flags_esp8266}
|
|
lib_deps = ${esp8266.lib_deps}
|
|
lib_ignore = ${esp8266.lib_ignore}
|
|
|
|
[env:d1_mini]
|
|
board = d1_mini
|
|
platform = ${common.platform_wled_default}
|
|
platform_packages = ${common.platform_packages}
|
|
upload_speed = 921600
|
|
board_build.ldscript = ${common.ldscript_4m1m}
|
|
build_unflags = ${esp8266.build_unflags}
|
|
build_flags = ${common.build_flags_esp8266}
|
|
lib_deps = ${esp8266.lib_deps}
|
|
lib_ignore = ${esp8266.lib_ignore}
|
|
monitor_filters = esp8266_exception_decoder
|
|
|
|
[env:heltec_wifi_kit_8]
|
|
board = d1_mini
|
|
platform = ${common.platform_wled_default}
|
|
platform_packages = ${common.platform_packages}
|
|
board_build.ldscript = ${common.ldscript_4m1m}
|
|
build_unflags = ${esp8266.build_unflags}
|
|
build_flags = ${common.build_flags_esp8266}
|
|
lib_deps = ${esp8266.lib_deps}
|
|
lib_ignore = ${esp8266.lib_ignore}
|
|
|
|
[env:h803wf]
|
|
board = d1_mini
|
|
platform = ${common.platform_wled_default}
|
|
platform_packages = ${common.platform_packages}
|
|
board_build.ldscript = ${common.ldscript_4m1m}
|
|
build_unflags = ${esp8266.build_unflags}
|
|
build_flags = ${common.build_flags_esp8266} -D LEDPIN=1 -D WLED_DISABLE_INFRARED
|
|
lib_deps = ${esp8266.lib_deps}
|
|
lib_ignore = ${esp8266.lib_ignore}
|
|
|
|
;; two aliases for lazy users
|
|
[env:esp32dev]
|
|
extends = env:esp32dev_V4
|
|
[env:esp32_wrover]
|
|
extends = env:esp32_4MB_PSRAM_S
|
|
|
|
;; legacy build for OTA compatibility with upstream 0.15.x, slow but safe
|
|
[env:esp32dev_compat]
|
|
extends = esp32_legacy
|
|
board = esp32dev
|
|
platform = ${esp32_legacy.platform}
|
|
platform_packages = ${esp32_legacy.platform_packages}
|
|
build_unflags = ${esp32_legacy.build_unflags}
|
|
build_flags = ${common.build_flags} ${esp32_legacy.build_flags} -D WLED_RELEASE_NAME=ESP32_compat #-D WLED_DISABLE_BROWNOUT_DET
|
|
${esp32.AR_build_flags}
|
|
;;-D WLED_ENABLE_PIXART ;; 8KB Flash
|
|
-D WLED_ENABLE_PIXELFORGE -DWLED_ENABLE_GIF ;; 30KB flash
|
|
;;-D WLED_ENABLE_FULL_FONTS ;; 10KB flash
|
|
lib_deps = ${esp32_legacy.lib_deps}
|
|
${esp32.AR_lib_deps}
|
|
board_build.partitions = ${esp32_legacy.default_partitions}
|
|
monitor_filters = esp32_exception_decoder
|
|
;; RAM: [== ] 23.2% (used 75944 bytes from 327680 bytes)
|
|
;; Flash: [========= ] 88.5% (used 1391917 bytes from 1572864 bytes)
|
|
|
|
;; legacy build for OTA compatibility with upstream 0.15.x, faster due to qio mode
|
|
[env:esp32dev_qio80_compat]
|
|
extends = esp32_legacy
|
|
board = esp32dev
|
|
platform = ${esp32_legacy.platform}
|
|
platform_packages = ${esp32_legacy.platform_packages}
|
|
build_unflags = ${esp32_legacy.build_unflags}
|
|
build_flags = ${common.build_flags} ${esp32_legacy.build_flags} -D WLED_RELEASE_NAME=ESP32_qio80_compat #-D WLED_DISABLE_BROWNOUT_DET
|
|
${esp32.AR_build_flags}
|
|
lib_deps = ${esp32_legacy.lib_deps}
|
|
${esp32.AR_lib_deps}
|
|
board_build.partitions = ${esp32_legacy.default_partitions}
|
|
board_build.f_flash = 80000000L
|
|
board_build.flash_mode = qio
|
|
monitor_filters = esp32_exception_decoder
|
|
|
|
[env:esp32dev_V4]
|
|
board = esp32dev
|
|
platform = ${esp32_idf_V4.platform}
|
|
platform_packages = ${esp32_idf_V4.platform_packages}
|
|
build_unflags = ${common.build_unflags}
|
|
build_flags = ${common.build_flags} ${esp32_idf_V4.build_flags} -D WLED_RELEASE_NAME=ESP32_V4 #-D WLED_DISABLE_BROWNOUT_DET
|
|
${esp32.AR_build_flags}
|
|
lib_deps = ${esp32_idf_V4.lib_deps}
|
|
${esp32.AR_lib_deps}
|
|
monitor_filters = esp32_exception_decoder
|
|
board_build.partitions = ${esp32_idf_V4.default_partitions}
|
|
board_build.f_flash = 80000000L
|
|
board_build.flash_mode = dio
|
|
|
|
;; alias name for env:esp32_4MB_M_eth; improves compatibility with old platformio_override.ini entries
|
|
[env:esp32_eth]
|
|
extends = env:esp32_4MB_M_eth
|
|
|
|
;; legacy build for OTA compatibility with upstream 0.15.x
|
|
;; --> use [env:esp32_4MB_M_eth] (4MB) or [env:esp32_16MB_M_eth]
|
|
[env:esp32_eth_compat]
|
|
extends = esp32_legacy
|
|
board = esp32-poe
|
|
platform = ${esp32_legacy.platform}
|
|
platform_packages = ${esp32_legacy.platform_packages}
|
|
upload_speed = 921600
|
|
build_unflags = ${esp32_legacy.build_unflags}
|
|
build_flags = ${common.build_flags} ${esp32_legacy.build_flags} -D WLED_RELEASE_NAME=ESP32_Ethernet_compat -D RLYPIN=-1
|
|
-D WLED_USE_ETHERNET -D BTNPIN=-1 -D RLYPIN=-1 -D IRPIN=-1
|
|
-D LEDPIN=4
|
|
-D WLED_DISABLE_ESPNOW ;; ESP-NOW requires wifi, may crash with ethernet only
|
|
;;-D WLED_ENABLE_PIXART ;; 8KB Flash
|
|
-D WLED_ENABLE_PIXELFORGE -DWLED_ENABLE_GIF ;; 30KB flash
|
|
;;-D WLED_ENABLE_FULL_FONTS ;; 10KB flash
|
|
${esp32.AR_build_flags}
|
|
lib_deps = ${esp32_legacy.lib_deps}
|
|
${esp32.AR_lib_deps}
|
|
board_build.partitions = ${esp32_legacy.default_partitions}
|
|
|
|
;; WLEDMM: use WLEDMM build environments
|
|
;;[env:esp32s2_saola]
|
|
;;board = esp32-s2-saola-1
|
|
;;platform = https://github.com/tasmota/platform-espressif32/releases/download/v2.0.2.2/platform-tasmota-espressif32-2.0.2.zip
|
|
;;platform_packages =
|
|
;;framework = arduino
|
|
;;board_build.partitions = tools/WLED_ESP32_4MB_1MB_FS.csv
|
|
;;board_build.flash_mode = qio
|
|
;;upload_speed = 460800
|
|
;;build_unflags = ${common.build_unflags}
|
|
;;build_flags = ${common.build_flags} ${esp32s2.build_flags} #-D WLED_RELEASE_NAME=S2_saola
|
|
;; ;-DLOLIN_WIFI_FIX ;; try this in case Wifi does not work
|
|
;; -DARDUINO_USB_CDC_ON_BOOT=1
|
|
;; lib_deps = ${esp32s2.lib_deps}
|
|
|
|
;; WLEDMM: use WLEDMM build environments
|
|
;; [env:esp32_wrover]
|
|
;; extends = esp32_idf_V4
|
|
;; platform = ${esp32_idf_V4.platform}
|
|
;; platform_packages = ${esp32_idf_V4.platform_packages}
|
|
;; board = ttgo-t7-v14-mini32
|
|
;; board_build.f_flash = 80000000L
|
|
;; board_build.flash_mode = qio
|
|
;; board_build.partitions = ${esp32.extended_partitions}
|
|
;; build_unflags = ${common.build_unflags}
|
|
;; build_flags = ${common.build_flags_esp32_V4} -D WLED_RELEASE_NAME=ESP32_WROVER
|
|
;; -DBOARD_HAS_PSRAM -mfix-esp32-psram-cache-issue ;; Older ESP32 (rev.<3) need a PSRAM fix (increases static RAM used) https://docs.espressif.com/projects/esp-idf/en/stable/esp32/api-guides/external-ram.html
|
|
;; -D LEDPIN=25
|
|
;; ; ${esp32.AR_build_flags}
|
|
;; lib_deps = ${esp32_idf_V4.lib_deps}
|
|
;; ; ${esp32.AR_lib_deps}
|
|
|
|
[env:esp32c3dev]
|
|
extends = esp32c3
|
|
platform = ${esp32c3.platform}
|
|
platform_packages = ${esp32c3.platform_packages}
|
|
framework = arduino
|
|
board = esp32-c3-devkitm-1
|
|
board_build.partitions = ${esp32.default_partitions}
|
|
build_flags = ${common.build_flags} ${esp32c3.build_flags} -D WLED_RELEASE_NAME=ESP32_C3
|
|
-D WLED_WATCHDOG_TIMEOUT=0
|
|
-DLOLIN_WIFI_FIX ; seems to work much better with this
|
|
-DARDUINO_USB_CDC_ON_BOOT=1 ;; for virtual CDC USB
|
|
;-DARDUINO_USB_CDC_ON_BOOT=0 ;; for serial-to-USB chip
|
|
upload_speed = 460800
|
|
build_unflags = ${common.build_unflags}
|
|
lib_deps = ${esp32c3.lib_deps}
|
|
board_build.flash_mode = dio ;; some boards do not boot with the faster "qio" mode
|
|
; RAM: [== ] 24.0% (used 78624 bytes from 327680 bytes)
|
|
; Flash: [========= ] 91.7% (used 1441933 bytes from 1572864 bytes)
|
|
|
|
;; WLEDMM: use WLEDMM build environments
|
|
;; [env:esp32s3dev_8MB]
|
|
;; ESP32-S3-DevKitC-1 development board, with 8MB FLASH, no PSRAM (flash_mode: qio)
|
|
;; board = esp32-s3-devkitc-1
|
|
;; platform = ${esp32s3.platform}
|
|
;; platform_packages = ${esp32s3.platform_packages}
|
|
;; upload_speed = 921600 ; or 460800
|
|
;; build_unflags = ${common.build_unflags}
|
|
;; build_flags = ${common.build_flags} ${esp32s3.build_flags} -D WLED_RELEASE_NAME=ESP32_S3_8MB
|
|
;; -D CONFIG_LITTLEFS_FOR_IDF_3_2 -D WLED_WATCHDOG_TIMEOUT=0
|
|
;; -D ARDUINO_USB_CDC_ON_BOOT=0 ;; -D ARDUINO_USB_MODE=1 ;; for boards with serial-to-USB chip
|
|
;; ;-D ARDUINO_USB_CDC_ON_BOOT=1 ;; -D ARDUINO_USB_MODE=1 ;; for boards with USB-OTG connector only (USBCDC or "TinyUSB")
|
|
;; ;-D WLED_DEBUG
|
|
;; lib_deps = ${esp32s3.lib_deps}
|
|
;; ${esp32.AR_lib_deps}
|
|
;; board_build.partitions = ${esp32.large_partitions}
|
|
;; board_build.f_flash = 80000000L
|
|
;; board_build.flash_mode = qio
|
|
;; ; board_build.flash_mode = dio ;; try this if you have problems at startup
|
|
;; monitor_filters = esp32_exception_decoder
|
|
|
|
;; only for testing.
|
|
;; [env:esp32s3dev_8MB_PSRAM_opi]
|
|
;; ESP32-S3 development board, with 8MB FLASH and >= 8MB PSRAM (memory_type: qio_opi)
|
|
;; board = esp32-s3-devkitc-1 ;; generic dev board; the next lines add PSRAM support
|
|
;; board_build.flash_mode = qio
|
|
;; board_build.arduino.memory_type = qio_opi ;; use with PSRAM: 8MB or 16MB
|
|
;; platform = ${esp32s3.platform}
|
|
;; platform_packages = ${esp32s3.platform_packages}
|
|
;; upload_speed = 921600
|
|
;; build_unflags = ${common.build_unflags}
|
|
;; ; -DCORE_DEBUG_LEVEL=0
|
|
;; ;;-DNDEBUG ;; removing this flag leads to a massive flood of runtime warnings from NeoPixelBus 2.7.9
|
|
;; build_flags = ${common.build_flags} ${esp32s3.build_flags}
|
|
;; ; -DCORE_DEBUG_LEVEL=5
|
|
;; ;;-DWLED_DEBUG ; -DDEBUG
|
|
;; ; -D WLED_USE_SHARED_RMT ;; RMTHI causes interrupt watchdog reset - needs more investigation
|
|
;; -D ARDUINO_USB_CDC_ON_BOOT=0 -D ARDUINO_USB_MODE=1 ;; for boards with serial-to-USB chip
|
|
;; ;;-D ARDUINO_USB_CDC_ON_BOOT=1 -D ARDUINO_USB_MODE=1 ;; for boards with USB-OTG connector only (USBCDC or "TinyUSB")
|
|
;; -D WLED_RELEASE_NAME=ESP32_S3_PSRAM_opi
|
|
;; -D BOARD_HAS_PSRAM -D WLED_USE_PSRAM ; tells WLED that PSRAM shall be used
|
|
;; -D WLED_USE_PSRAM_JSON -D ALL_JSON_TO_PSRAM ; WLEDMM --> force all JSON stuff into PSRAM; gives more free heap
|
|
;; lib_deps = ${esp32s3.lib_deps}
|
|
;; ${esp32.AR_lib_deps}
|
|
;; board_build.partitions = ${esp32.large_partitions}
|
|
;; board_build.f_flash = 80000000L
|
|
;; monitor_filters = esp32_exception_decoder
|
|
|
|
;; [env:esp32s3dev_16MB_PSRAM_opi]
|
|
;; extends = env:esp32s3dev_8MB_PSRAM_opi
|
|
;; board_build.partitions = tools/WLED_ESP32_16MB.csv
|
|
;; board_upload.flash_size = 16MB
|
|
|
|
;; [env:esp32s3dev_8MB_PSRAM_qspi]
|
|
;; ESP32-TinyS3 development board, with 8MB FLASH and PSRAM (memory_type: qio_qspi)
|
|
;; extends = env:esp32s3dev_8MB_PSRAM_opi
|
|
;; ;board = um_tinys3 ; -> needs workaround from https://github.com/Aircoookie/WLED/pull/2905#issuecomment-1328049860
|
|
;; board = esp32-s3-devkitc-1 ;; generic dev board; the next line adds PSRAM support
|
|
;; board_build.arduino.memory_type = qio_qspi ;; use with PSRAM: 2MB or 4MB
|
|
|
|
[env:esp8285_4CH_MagicHome]
|
|
board = esp8285
|
|
platform = ${common.platform_wled_default}
|
|
platform_packages = ${common.platform_packages}
|
|
board_build.ldscript = ${common.ldscript_1m128k}
|
|
build_unflags = ${esp8266.build_unflags}
|
|
build_flags = ${common.build_flags_esp8266} -D WLED_DISABLE_OTA
|
|
lib_deps = ${esp8266.lib_deps}
|
|
lib_ignore = ${esp8266.lib_ignore}
|
|
|
|
[env:esp8285_H801]
|
|
board = esp8285
|
|
platform = ${common.platform_wled_default}
|
|
platform_packages = ${common.platform_packages}
|
|
board_build.ldscript = ${common.ldscript_1m128k}
|
|
build_unflags = ${esp8266.build_unflags}
|
|
build_flags = ${common.build_flags_esp8266} -D WLED_DISABLE_OTA
|
|
lib_deps = ${esp8266.lib_deps}
|
|
lib_ignore = ${esp8266.lib_ignore}
|
|
|
|
[env:d1_mini_5CH_Shojo_PCB]
|
|
board = d1_mini
|
|
platform = ${common.platform_wled_default}
|
|
platform_packages = ${common.platform_packages}
|
|
board_build.ldscript = ${common.ldscript_4m1m}
|
|
build_unflags = ${esp8266.build_unflags}
|
|
build_flags = ${common.build_flags_esp8266} -D WLED_USE_SHOJO_PCB
|
|
lib_deps = ${esp8266.lib_deps}
|
|
lib_ignore = ${esp8266.lib_ignore}
|
|
|
|
# ------------------------------------------------------------------------------
|
|
# DEVELOPMENT BOARDS
|
|
# ------------------------------------------------------------------------------
|
|
|
|
[env:d1_mini_debug]
|
|
board = d1_mini
|
|
build_type = debug
|
|
platform = ${common.platform_wled_default}
|
|
platform_packages = ${common.platform_packages}
|
|
board_build.ldscript = ${common.ldscript_4m1m}
|
|
build_unflags = ${esp8266.build_unflags}
|
|
build_flags = ${common.build_flags_esp8266} ${common.debug_flags}
|
|
lib_deps = ${esp8266.lib_deps}
|
|
lib_ignore = ${esp8266.lib_ignore}
|
|
|
|
[env:d1_mini_ota]
|
|
board = d1_mini
|
|
upload_protocol = espota
|
|
# exchange for your WLED IP
|
|
upload_port = "10.10.1.27"
|
|
platform = ${common.platform_wled_default}
|
|
platform_packages = ${common.platform_packages}
|
|
board_build.ldscript = ${common.ldscript_4m1m}
|
|
build_unflags = ${esp8266.build_unflags}
|
|
build_flags = ${common.build_flags_esp8266}
|
|
lib_deps = ${esp8266.lib_deps}
|
|
lib_ignore = ${esp8266.lib_ignore}
|
|
|
|
[env:anavi_miracle_controller]
|
|
board = d1_mini
|
|
platform = ${common.platform_wled_default}
|
|
platform_packages = ${common.platform_packages}
|
|
board_build.ldscript = ${common.ldscript_4m1m}
|
|
build_unflags = ${esp8266.build_unflags}
|
|
build_flags = ${common.build_flags_esp8266} -D LEDPIN=12 -D IRPIN=-1 -D RLYPIN=2
|
|
lib_deps = ${esp8266.lib_deps}
|
|
lib_ignore = ${esp8266.lib_ignore}
|
|
|
|
[env:lolin_s2_mini]
|
|
platform = ${esp32s2.platform}
|
|
platform_packages = ${esp32s2.platform_packages}
|
|
board = lolin_s2_mini
|
|
board_build.partitions = ${esp32.default_partitions}
|
|
board_build.flash_mode = dio ;; prevents build error: sdkconfig.h: No such file or directory
|
|
build_unflags = ${common.build_unflags} #-DARDUINO_USB_CDC_ON_BOOT=1
|
|
;; board_build.flash_mode = qio
|
|
;; board_build.f_flash = 80000000L
|
|
build_flags = ${common.build_flags} ${esp32s2.build_flags} -D WLED_RELEASE_NAME=ESP32_S2
|
|
-DBOARD_HAS_PSRAM
|
|
-DARDUINO_USB_CDC_ON_BOOT=1 # try disabling and enabling unflag above in case of board-specific issues, will disable Serial
|
|
-DARDUINO_USB_MSC_ON_BOOT=0
|
|
-DARDUINO_USB_DFU_ON_BOOT=0
|
|
-DLOLIN_WIFI_FIX ; seems to work much better with this
|
|
-D WLED_USE_PSRAM
|
|
-D WLED_USE_PSRAM_JSON -DALL_JSON_TO_PSRAM ; WLEDMM --> force all JSON stuff into PSRAM; gives more free heap
|
|
; -D WLED_USE_UNREAL_MATH ;; may cause wrong sunset/sunrise times, but saves 6792 bytes FLASH
|
|
-D WLED_WATCHDOG_TIMEOUT=0
|
|
-D CONFIG_ASYNC_TCP_USE_WDT=0
|
|
-D LEDPIN=16
|
|
-D BTNPIN=18
|
|
-D RLYPIN=9
|
|
-D IRPIN=7
|
|
-D HW_PIN_SCL=35
|
|
-D HW_PIN_SDA=33
|
|
-D HW_PIN_CLOCKSPI=7
|
|
-D HW_PIN_MOSISPI=11 ;WLEDMM renamed from HW_PIN_DATASPI
|
|
-D HW_PIN_MISOSPI=9
|
|
; -D STATUSLED=15
|
|
lib_deps = ${esp32s2.lib_deps}
|
|
|
|
# ------------------------------------------------------------------------------
|
|
# custom board configurations
|
|
# ------------------------------------------------------------------------------
|
|
|
|
;; WLEDMM: use [env:esp32c3dev_2MB_M] (WLEDMM build environment)
|
|
;; [env:esp32c3dev_2MB]
|
|
;; ;; for ESP32-C3 boards with 2MB flash (instead of 4MB).
|
|
;; ;; this board need a specific partition file. OTA not possible.
|
|
;; extends = esp32c3
|
|
;; platform = ${esp32c3.platform}
|
|
;; platform_packages = ${esp32c3.platform_packages}
|
|
;; board = esp32-c3-devkitm-1
|
|
;; build_flags = ${common.build_flags} ${esp32c3.build_flags} #-D WLED_RELEASE_NAME=ESP32_C3
|
|
;; -D WLED_WATCHDOG_TIMEOUT=0
|
|
;; -D WLED_DISABLE_OTA
|
|
;; ; -DARDUINO_USB_CDC_ON_BOOT=1 ;; for virtual CDC USB
|
|
;; -DARDUINO_USB_CDC_ON_BOOT=0 ;; for serial-to-USB chip
|
|
;; build_unflags = ${common.build_unflags}
|
|
;; upload_speed = 115200
|
|
;; lib_deps = ${esp32c3.lib_deps}
|
|
;; board_build.partitions = tools/WLED_ESP32_2MB_noOTA.csv
|
|
;; board_build.flash_mode = dio
|
|
;; board_upload.flash_size = 2MB
|
|
;; board_upload.maximum_size = 2097152
|
|
|
|
;WLEDMM: see below
|
|
; [env:wemos_shield_esp32]
|
|
; board = esp32dev
|
|
; platform = ${esp32.platform}
|
|
; platform_packages = ${esp32.platform_packages}
|
|
; upload_speed = 460800
|
|
; build_unflags = ${common.build_unflags}
|
|
; build_flags = ${common.build_flags_esp32}
|
|
; -D LEDPIN=16
|
|
; -D RLYPIN=19
|
|
; -D BTNPIN=17
|
|
; -D IRPIN=18
|
|
; -U WLED_USE_MY_CONFIG
|
|
; -D USERMOD_DALLASTEMPERATURE
|
|
; -D USERMOD_FOUR_LINE_DISPLAY
|
|
; -D TEMPERATURE_PIN=23
|
|
; -D USE_ALT_DISPlAY ; new versions of USERMOD_FOUR_LINE_DISPLAY and USERMOD_ROTARY_ENCODER_UI
|
|
; -D USERMOD_AUDIOREACTIVE
|
|
; lib_deps = ${esp32.lib_deps}
|
|
; OneWire@~2.3.5
|
|
; olikraus/U8g2 @ ^2.28.8
|
|
; https://github.com/blazoncek/arduinoFFT.git
|
|
; board_build.partitions = ${esp32.default_partitions}
|
|
|
|
[env:m5atom]
|
|
board = esp32dev
|
|
build_unflags = ${common.build_unflags}
|
|
build_flags = ${common.build_flags_esp32} -D LEDPIN=27 -D BTNPIN=39
|
|
lib_deps = ${esp32.lib_deps}
|
|
platform = ${esp32.platform}
|
|
platform_packages = ${esp32.platform_packages}
|
|
board_build.partitions = ${esp32.default_partitions}
|
|
|
|
[env:sp501e]
|
|
board = esp_wroom_02
|
|
platform = ${common.platform_wled_default}
|
|
board_build.ldscript = ${common.ldscript_2m512k}
|
|
build_flags = ${common.build_flags_esp8266} -D LEDPIN=3 -D BTNPIN=1
|
|
build_unflags = ${esp8266.build_unflags}
|
|
lib_deps = ${esp8266.lib_deps}
|
|
lib_ignore = ${esp8266.lib_ignore}
|
|
|
|
[env:sp511e]
|
|
board = esp_wroom_02
|
|
platform = ${common.platform_wled_default}
|
|
board_build.ldscript = ${common.ldscript_2m512k}
|
|
build_flags = ${common.build_flags_esp8266} -D LEDPIN=3 -D BTNPIN=2 -D IRPIN=5 -D WLED_MAX_BUTTONS=3
|
|
build_unflags = ${esp8266.build_unflags}
|
|
lib_deps = ${esp8266.lib_deps}
|
|
lib_ignore = ${esp8266.lib_ignore}
|
|
|
|
[env:Athom_RGBCW] ;7w and 5w(GU10) bulbs
|
|
board = esp8285
|
|
platform = ${common.platform_wled_default}
|
|
platform_packages = ${common.platform_packages}
|
|
board_build.ldscript = ${common.ldscript_2m512k}
|
|
build_unflags = ${esp8266.build_unflags}
|
|
build_flags = ${common.build_flags_esp8266} -D WLED_RELEASE_NAME=ESP_8266 -D BTNPIN=-1 -D RLYPIN=-1 -D DATA_PINS=4,12,14,13,5
|
|
-D DEFAULT_LED_TYPE=TYPE_ANALOG_5CH -D WLED_DISABLE_INFRARED -D WLED_MAX_CCT_BLEND=0
|
|
lib_deps = ${esp8266.lib_deps}
|
|
lib_ignore = ${esp8266.lib_ignore}
|
|
|
|
|
|
[env:Athom_15w_RGBCW] ;15w bulb
|
|
board = esp8285
|
|
platform = ${common.platform_wled_default}
|
|
platform_packages = ${common.platform_packages}
|
|
board_build.ldscript = ${common.ldscript_2m512k}
|
|
build_unflags = ${esp8266.build_unflags}
|
|
build_flags = ${common.build_flags_esp8266} -D WLED_RELEASE_NAME=ESP_8266 -D BTNPIN=-1 -D RLYPIN=-1 -D DATA_PINS=4,12,14,5,13
|
|
-D DEFAULT_LED_TYPE=TYPE_ANALOG_5CH -D WLED_DISABLE_INFRARED -D WLED_MAX_CCT_BLEND=0 -D WLED_USE_IC_CCT
|
|
lib_deps = ${esp8266.lib_deps}
|
|
lib_ignore = ${esp8266.lib_ignore}
|
|
|
|
|
|
[env:Athom_3Pin_Controller] ;small controller with only data
|
|
board = esp8285
|
|
platform = ${common.platform_wled_default}
|
|
platform_packages = ${common.platform_packages}
|
|
board_build.ldscript = ${common.ldscript_2m512k}
|
|
build_unflags = ${esp8266.build_unflags}
|
|
build_flags = ${common.build_flags_esp8266} -D WLED_RELEASE_NAME=ESP_8266 -D BTNPIN=0 -D RLYPIN=-1 -D LEDPIN=1 -D WLED_DISABLE_INFRARED
|
|
lib_deps = ${esp8266.lib_deps}
|
|
lib_ignore = ${esp8266.lib_ignore}
|
|
|
|
|
|
[env:Athom_4Pin_Controller] ; With clock and data interface
|
|
board = esp8285
|
|
platform = ${common.platform_wled_default}
|
|
platform_packages = ${common.platform_packages}
|
|
board_build.ldscript = ${common.ldscript_2m512k}
|
|
build_unflags = ${esp8266.build_unflags}
|
|
build_flags = ${common.build_flags_esp8266} -D WLED_RELEASE_NAME=ESP_8266 -D BTNPIN=0 -D RLYPIN=12 -D LEDPIN=1 -D WLED_DISABLE_INFRARED
|
|
lib_deps = ${esp8266.lib_deps}
|
|
lib_ignore = ${esp8266.lib_ignore}
|
|
|
|
|
|
[env:Athom_5Pin_Controller] ;Analog light strip controller
|
|
board = esp8285
|
|
platform = ${common.platform_wled_default}
|
|
platform_packages = ${common.platform_packages}
|
|
board_build.ldscript = ${common.ldscript_2m512k}
|
|
build_unflags = ${esp8266.build_unflags}
|
|
build_flags = ${common.build_flags_esp8266} -D WLED_RELEASE_NAME=ESP_8266 -D BTNPIN=0 -D RLYPIN=-1 DATA_PINS=4,12,14,13 -D WLED_DISABLE_INFRARED
|
|
lib_deps = ${esp8266.lib_deps}
|
|
lib_ignore = ${esp8266.lib_ignore}
|
|
|
|
|
|
[env:MY9291]
|
|
board = esp01_1m
|
|
platform = ${common.platform_wled_default}
|
|
platform_packages = ${common.platform_packages}
|
|
board_build.ldscript = ${common.ldscript_1m128k}
|
|
build_unflags = ${esp8266.build_unflags}
|
|
build_flags = ${common.build_flags_esp8266} -D WLED_RELEASE_NAME=ESP01 -D WLED_DISABLE_OTA -D USERMOD_MY9291
|
|
lib_deps = ${esp8266.lib_deps}
|
|
lib_ignore = ${esp8266.lib_ignore}
|
|
|
|
# ------------------------------------------------------------------------------
|
|
# codm pixel controller board configurations
|
|
# codm-controller-0_6 can also be used for the TYWE3S controller
|
|
# ------------------------------------------------------------------------------
|
|
|
|
[env:codm-controller-0_6]
|
|
board = esp_wroom_02
|
|
platform = ${common.platform_wled_default}
|
|
platform_packages = ${common.platform_packages}
|
|
board_build.ldscript = ${common.ldscript_2m512k}
|
|
build_unflags = ${esp8266.build_unflags}
|
|
build_flags = ${common.build_flags_esp8266}
|
|
lib_deps = ${esp8266.lib_deps}
|
|
lib_ignore = ${esp8266.lib_ignore}
|
|
|
|
[env:codm-controller-0_6-rev2]
|
|
board = esp_wroom_02
|
|
platform = ${common.platform_wled_default}
|
|
platform_packages = ${common.platform_packages}
|
|
board_build.ldscript = ${common.ldscript_4m1m}
|
|
build_unflags = ${esp8266.build_unflags}
|
|
build_flags = ${common.build_flags_esp8266}
|
|
lib_deps = ${esp8266.lib_deps}
|
|
lib_ignore = ${esp8266.lib_ignore}
|
|
|
|
# ------------------------------------------------------------------------------
|
|
# EleksTube-IPS
|
|
# ------------------------------------------------------------------------------
|
|
[env:elekstube_ips]
|
|
board = esp32dev
|
|
platform = ${esp32.platform}
|
|
platform_packages = ${esp32.platform_packages}
|
|
upload_speed = 921600
|
|
build_flags = ${common.build_flags_esp32} -D WLED_DISABLE_BROWNOUT_DET -D WLED_DISABLE_INFRARED
|
|
-D USERMOD_RTC
|
|
-D USERMOD_ELEKSTUBE_IPS
|
|
-D LEDPIN=12
|
|
-D RLYPIN=27
|
|
-D BTNPIN=34
|
|
-D DEFAULT_LED_COUNT=6
|
|
# Display config
|
|
-D ST7789_DRIVER
|
|
-D TFT_WIDTH=135
|
|
-D TFT_HEIGHT=240
|
|
-D CGRAM_OFFSET
|
|
-D TFT_SDA_READ
|
|
-D TFT_MOSI=23
|
|
-D TFT_SCLK=18
|
|
-D TFT_DC=25
|
|
-D TFT_RST=26
|
|
-D SPI_FREQUENCY=40000000
|
|
-D USER_SETUP_LOADED
|
|
monitor_filters = esp32_exception_decoder
|
|
lib_deps =
|
|
${esp32.lib_deps}
|
|
TFT_eSPI @ ^2.3.70
|
|
board_build.partitions = ${esp32.default_partitions}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
# ------------------------------------------------------------------------------
|
|
# MoonModules environments
|
|
# see https://mm.kno.wled.ge/moonmodules/platformio-entries/
|
|
# ------------------------------------------------------------------------------
|
|
|
|
; shared build flags and lib deps for minimum and maximum environment
|
|
[common_mm]
|
|
|
|
build_disable_sync_interfaces =
|
|
-D WLED_DISABLE_LOXONE
|
|
-D WLED_DISABLE_ALEXA
|
|
-D WLED_DISABLE_HUESYNC
|
|
-D WLED_DISABLE_MQTT
|
|
-D WLED_DISABLE_INFRARED
|
|
-D WLED_DISABLE_ADALIGHT ;; WLEDMM this board does not have a serial-to-USB chip. Better to disable serial protocols, to avoid crashes (see upstream #3128)
|
|
-D WLED_DISABLE_ESPNOW ;; ESP-NOW requires wifi, may crash with ethernet only
|
|
|
|
AR_build_flags = -D USERMOD_AUDIOREACTIVE -D UM_AUDIOREACTIVE_USE_NEW_FFT ;; WLEDMM audioreactive usermod, licensed under EUPL-1.2
|
|
AR_lib_deps = https://github.com/softhack007/arduinoFFT.git#develop @ 1.9.2 ;; used for USERMOD_AUDIOREACTIVE - optimized version, 10% faster on -S2/-C3
|
|
|
|
animartrix_build_flags = -D USERMOD_ANIMARTRIX ;; WLEDMM usermod: CC BY-NC 3.0 licensed effects by Stefan Petrick
|
|
animartrix_lib_deps = https://github.com/netmindz/animartrix.git#bd556cef92a6fee9777c0a7304c9de1a84cba184 ;; init state fix
|
|
animartrix_lib_ignore = animartrix ;; to remove the animartrix lib dependancy (saves a few bytes)
|
|
|
|
DMXin_build_flags = -D WLED_ENABLE_DMX_INPUT ;; WLEDMM DMX physical input - requires ESP-IDF v4.4.x
|
|
DMXin_lib_deps = https://github.com/someweisguy/esp_dmx.git#47db25d8c515e76fabcf5fc5ab0b786f98eeade0 ;; for DMX_INPUT
|
|
DMXin_lib_ignore = esp_dmx ;; to remove the esp-dmx lib dependancy (saves a few bytes)
|
|
|
|
HUB75_build_flags =
|
|
-D WLED_ENABLE_HUB75MATRIX ;; - requires ESP-IDF v4.4.x
|
|
;-D SPIRAM_FRAMEBUFFER ;; ONLY SUPPORTED ON ESP32-S3 VARIANTS WITH OCTAL (not quad) SPIRAM/PSRAM
|
|
-D NO_GFX ;; Disable the use of Adafruit_GFX by the HUB75 driver
|
|
-D NO_FAST_FUNCTIONS ;; If you are not using AdafruitGFX than you probably do not need this either, save memory/code size
|
|
-D NO_CIE1931 ;; Do not use LED brightness compensation described in CIE 1931. We use FastLED dimming already
|
|
-D S3_LCD_DIV_NUM=20 ;; Attempt to fix wifi performance issue when panel active with S3 chips
|
|
-D WLEDMM_SLOWPATH ;; WLEDMM: do not use I2S for driving ws2812 LEDs (HUB75 driver needs I2S#1)
|
|
;; HUB75_lib_deps = https://github.com/mrcodetastic/ESP32-HUB75-MatrixPanel-DMA.git#aa28e2a9 ;; S3_LCD_DIV_NUM fix
|
|
HUB75_lib_deps = https://github.com/softhack007/ESP32-HUB75-MatrixPanel-DMA_sh7.git#fix_dangling_pointer ;; S3 bugfix for crash in ~MatrixPanel_I2S_DMA()
|
|
HUB75_lib_ignore = ESP32 HUB75 LED MATRIX PANEL DMA Display ;; to remove the HUB75 lib dependancy (saves a few bytes)
|
|
|
|
NetDebug_build_flags =
|
|
;; WLEDMM: only setting WLED_DEBUG_HOST is enough, ip and port can be defined in sync settings as well
|
|
-D WLED_DEBUG_HOST='"192.168.x.x"' ;; to send debug messages over network to host 192.168.x.y - FQDN is also possible
|
|
-D WLED_DEBUG_PORT=1768 ;; port for network debugging. default = 7868
|
|
|
|
|
|
build_flags_S =
|
|
-Wall -Wformat -Woverflow -Wuninitialized -Winit-self -Warray-bounds ; enables more warnings
|
|
-Wno-attributes -Wno-unused-variable -Wno-unused-function -Wno-deprecated-declarations ;disables some stupid warnings
|
|
;-D WLED_DISABLE_BROWNOUT_DET ; enable if you get "brownout detected" errors at startup
|
|
-D WLED_USE_MY_CONFIG
|
|
; -D WLED_DISABLE_2D ;; un-comment to build a firmware without 2D matrix support
|
|
; -D WLED_USE_CIE_BRIGHTNESS_TABLE ;; experimental: use different color / brightness lookup table
|
|
${common_mm.AR_build_flags} ; use latest (upstream) FFTLib, instead of older library modified by blazoncek. Slightly faster, more accurate, needs 2KB RAM extra
|
|
-D USERMOD_AUTO_PLAYLIST
|
|
; -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
|
|
-D WLED_ENABLE_GIF
|
|
; -D WLED_ENABLE_FULL_FONTS ;; uncomment for (limited) unicode support in scrolling text - warning: increases firmware size by 6848 bytes
|
|
|
|
lib_deps_S =
|
|
;; https://github.com/kosme/arduinoFFT#develop @ 1.9.2+sha.419d7b0 ;; used for USERMOD_AUDIOREACTIVE - using "known working" hash
|
|
${common_mm.AR_lib_deps} ;; used for USERMOD_AUDIOREACTIVE - optimized version, 10% faster on -S2/-C3
|
|
|
|
build_flags_M =
|
|
-D USERMOD_ARTIFX ; WLEDMM usermod - temporarily moved into "_M", due to problems in "_S" when compiling with -O2
|
|
-D WLED_MAX_USERMODS=25 ; default only 4-6, also for _XL configs takes 25 pointers in memory
|
|
;; -D ARDUINO_USB_CDC_ON_BOOT=0 ; needed for arduino-esp32 >=2.0.4 ewowi to softhack: move to build_flags_S? - We need a different solution
|
|
-D WLED_USE_MY_CONFIG ; include custom my_config.h ewowi to softhack: redundant as also in build_flags_S?
|
|
-D USERMOD_DALLASTEMPERATURE
|
|
-D USE_ALT_DISPLAY ; new versions of USERMOD_FOUR_LINE_DISPLAY and USERMOD_ROTARY_ENCODER_UI
|
|
-D USERMOD_FOUR_LINE_DISPLAY
|
|
-D USERMOD_ROTARY_ENCODER_UI
|
|
-D USERMOD_AUTO_SAVE
|
|
-D WLED_ENABLE_FULL_FONTS ;; enables (limited) unicode support in scrolling text - warning: increases firmware size by 6848 bytes
|
|
;;-D WLED_ENABLE_PIXART ;; 8KB Flash
|
|
-D WLED_ENABLE_PIXELFORGE ;; 12KB Flash
|
|
|
|
${common_mm.animartrix_build_flags}
|
|
${common_mm.NetDebug_build_flags}
|
|
|
|
lib_deps_M =
|
|
;https://github.com/blazoncek/OneWire.git ; includes bugfixes for inconsistent readings
|
|
OneWire@~2.3.5 ; used for USERMOD_FOUR_LINE_DISPLAY and USERMOD_DALLASTEMPERATURE
|
|
olikraus/U8g2 @ ^2.28.8 ; used for USERMOD_FOUR_LINE_DISPLAY
|
|
${common_mm.animartrix_lib_deps}
|
|
|
|
lib_deps_V4_M =
|
|
;https://github.com/blazoncek/OneWire.git ; includes bugfixes for inconsistent readings
|
|
paulstoffregen/OneWire@ ^2.3.7 ; used for USERMOD_DALLASTEMPERATURE -> need newer release with bugfixes for -S3; still requires TEMPERATURE_PIN < 46
|
|
olikraus/U8g2@ ^2.34.5 ; used for USERMOD_FOUR_LINE_DISPLAY -> need newer version with bugfixes for arduino-esp32 v2.0.4 (Wire initialization)
|
|
${common_mm.animartrix_lib_deps}
|
|
|
|
build_flags_XL =
|
|
-D WLEDMM_SAVE_FLASH
|
|
-D USERMOD_WEATHER ; WLEDMM usermod
|
|
-D USERMOD_MPU6050_IMU ; gyro/accelero for USERMOD_GAMES (ONLY WORKS IF USERMOD_FOUR_LINE_DISPLAY NOT INCLUDED - I2C SHARING BUG)
|
|
-D USERMOD_GAMES ; WLEDMM usermod
|
|
-D USERMOD_BATTERY ;; enable Battery usermod
|
|
-D USERMOD_BATTERY_USE_LIPO ;; use new "discharging curve" for LiPo cells
|
|
-D USERMOD_BH1750
|
|
-D USERMOD_ANIMATED_STAIRCASE
|
|
-D USERMOD_RTC ;; experimental
|
|
; -D USERMOD_SENSORSTOMQTT ;; experimental ewowi causes error: fatal error: Adafruit_Sensor.h: No such file or directory
|
|
-D USERMOD_ANALOG_CLOCK
|
|
-D USERMOD_MULTI_RELAY
|
|
-D USERMOD_PIRSWITCH
|
|
-D USERMOD_PWM_FAN
|
|
; -D USERMOD_PING_PONG_CLOCK ;; Removed as dots is confusing
|
|
; -D USERMOD_BUZZER ;; Removed as it grabs gpio32 (pin needed by audioreactive)
|
|
-D USERMOD_SN_PHOTORESISTOR
|
|
-D USERMOD_BME280
|
|
-D USERMOD_DHT
|
|
; -D USERMOD_SHT ;; experimental
|
|
-D USERMOD_VL53L0X_GESTURES
|
|
-D WLED_ENABLE_PIXART
|
|
${common_mm.animartrix_build_flags}
|
|
|
|
lib_deps_XL =
|
|
ElectronicCats/MPU6050 @ 0.6.0 ; used for USERMOD_MPU6050_IMU
|
|
claws/BH1750 @^1.2.0 ; used for USERMOD_BH1750
|
|
; adafruit/Adafruit BMP280 Library @ 2.1.0 ;; experimental for usermod USERMOD_SENSORSTOMQTT
|
|
; adafruit/Adafruit CCS811 Library @ 1.0.4 ;; experimental for usermod USERMOD_SENSORSTOMQTT
|
|
; adafruit/Adafruit Si7021 Library @ 1.4.0 ;; experimental for usermod USERMOD_SENSORSTOMQTT
|
|
BME280@~3.0.0 ; for usermod USERMOD_BME280
|
|
https://github.com/alwynallan/DHT_nonblocking ; for usermod USERMOD_DHT
|
|
; robtillaart/SHT85 @ ~0.4.0 ;; for usermod USERMOD_SHT
|
|
pololu/VL53L0X @ ^1.3.0 ; for usermod USERMOD_VL53L0X_GESTURES
|
|
|
|
; end of common
|
|
|
|
; base entries (without WLED_RELEASE_NAME)
|
|
|
|
; common defaults for all MM environments
|
|
[esp32_4MB_S_base]
|
|
extends = esp32_legacy
|
|
board = esp32dev
|
|
;; legacy V3 platform
|
|
platform = ${esp32_legacy.platform}
|
|
platform_packages = ${esp32_legacy.platform_packages}
|
|
build_unflags = ${esp32_legacy.build_unflags}
|
|
build_flags = ${common.build_flags} ${esp32_legacy.build_flags} ${common_mm.build_flags_S} ${common_mm.build_disable_sync_interfaces}
|
|
lib_deps = ${esp32_legacy.lib_deps} ${common_mm.lib_deps_S}
|
|
lib_ignore =
|
|
${common_mm.DMXin_lib_ignore} ;; requires V4 framework
|
|
${esp32_legacy.lib_ignore}
|
|
upload_speed = 460800 ; or 921600
|
|
;; new V4 platform
|
|
;;platform = ${esp32.platform}
|
|
;;platform_packages = ${esp32.platform_packages}
|
|
;;build_unflags = ${common.build_unflags}
|
|
;;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)
|
|
board_build.flash_mode = dio ; (dio = dual i/o; more compatible than qio = quad i/o)
|
|
monitor_filters = esp32_exception_decoder
|
|
|
|
;common default for all max environments
|
|
[esp32_4MB_M_base]
|
|
extends = esp32_4MB_S_base
|
|
build_flags = ${common.build_flags} ${esp32_legacy.build_flags} ${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}
|
|
${common_mm.animartrix_build_flags} ;; exceeds flash limits in V3 builds
|
|
-DUSERMOD_ARTIFX ;; exceeds flash limits in V3 builds
|
|
lib_deps = ${esp32_4MB_S_base.lib_deps} ${common_mm.lib_deps_M}
|
|
lib_ignore = ${esp32_4MB_S_base.lib_ignore}
|
|
${common_mm.animartrix_lib_ignore}
|
|
[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}
|
|
lib_deps = ${esp32_4MB_M_base.lib_deps} ${common_mm.lib_deps_XL}
|
|
|
|
;common default for all V4 min environments, including -S3, -S2, -C3
|
|
[esp32_4MB_V4_S_base]
|
|
board = esp32dev
|
|
upload_speed = 460800 ; or 921600
|
|
;;platform = ${esp32.platform} ;; "V4" = tasmota = standard
|
|
;;platform_packages = ${esp32.platform_packages}
|
|
;; softhack007: back to standard espressif platform, due to bad UX when OTA updating a previous versions - slow, unresponsive, wifi lost, out of RAM
|
|
platform = ${esp32.platformV4}
|
|
platform_packages = ${esp32.platformV4_packages}
|
|
build_unflags = ${common.build_unflags}
|
|
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")
|
|
;-Wsuggest-attribute=const -Wsuggest-attribute=pure ;; ask compiler for hints on attributes
|
|
${common_mm.DMXin_build_flags}
|
|
lib_deps = ${common_mm.lib_deps_S} ;; do not include ${esp32.lib_depsV4} here !!!!
|
|
${common_mm.DMXin_lib_deps}
|
|
esp32_build_flags = ${esp32.build_flagsV4} ${esp32_4MB_V4_S_base.build_flags} ;; this is for esp32 only, including specific "V4" flags
|
|
esp32_lib_deps = ${esp32.lib_depsV4} ${esp32_4MB_V4_S_base.lib_deps} ;; this is for esp32 only, including specific "V4" flags
|
|
;;board_build.partitions = ${esp32.default_partitions}
|
|
board_build.partitions = ${esp32.extended_partitions} ;; 1.65MB firmware, 700KB filesystem
|
|
board_build.f_flash = 80000000L ; use full 80MHz speed for flash (default = 40Mhz)
|
|
board_build.flash_mode = dio ; (dio = dual i/o; more compatible than qio = quad i/o)
|
|
;lib_ignore = IRremoteESP8266 ; use with WLED_DISABLE_INFRARED for faster compilation
|
|
monitor_filters = esp32_exception_decoder ; used to show crash details
|
|
|
|
[esp32_4MB_V4_M_base]
|
|
extends = esp32_4MB_V4_S_base
|
|
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}
|
|
board_build.partitions = ${esp32_4MB_V4_S_base.board_build.partitions}
|
|
;board_build.flash_mode = qio ; (dio = dual i/o; more compatible than qio = quad i/o)
|
|
|
|
[Shield_ICS4343x]
|
|
build_flags =
|
|
-D SR_DMTYPE=1 -D I2S_SDPIN=32 -D I2S_WSPIN=15 -D I2S_CKPIN=14 ; for regular I2S microphone
|
|
-D SR_SQUELCH=10 -D SR_GAIN=30 -D SR_FREQ_PROF=5 ; ICS-43434 specific
|
|
|
|
[Shield_SPM1423]
|
|
build_flags =
|
|
-D SR_DMTYPE=5 -D I2S_SDPIN=32 -D I2S_WSPIN=15 -D I2S_CKPIN=-1 ; for I2S PDM microphone
|
|
-D SR_SQUELCH=3 -D SR_GAIN=75 -D SR_FREQ_PROF=7 ; SPM1423 specific
|
|
|
|
[Athom_PDMmic]
|
|
build_flags =
|
|
-D SR_DMTYPE=51 -D I2S_SDPIN=32 -D I2S_WSPIN=15 -D I2S_CKPIN=-1 ; for I2S PDM microphone Legacy mode!
|
|
-D SR_SQUELCH=10 -D SR_GAIN=40 -D SR_FREQ_PROF=7 ; SPM1423 specific
|
|
|
|
[Shield_LineIn]
|
|
build_unflags =
|
|
-D BTNPIN=17 ;; remove - its in conflict with on-shield rotary
|
|
-D ENCODER_SW_PIN=5 ;; remove - its in conflict with on-shield rotary
|
|
-D BTNPIN=0 ;; remove - its in conflict with MCLK pin
|
|
build_flags =
|
|
-D BTNPIN=-1
|
|
-D SR_DMTYPE=4 -D MCLK_PIN=0 -D I2S_SDPIN=26 -D I2S_WSPIN=25 -D I2S_CKPIN=27 ; for audio Line-In shield, final version
|
|
-D SR_LINE_DETECT=34 ; line-in plug insert detection sensor (future support)
|
|
-D SR_SQUELCH=8 -D SR_GAIN=40 -D SR_FREQ_PROF=1 ; CS5343 Line-In specific
|
|
-D ENCODER_DT_PIN=35 -D ENCODER_CLK_PIN=39 -D ENCODER_SW_PIN=17 ; on-shield rotary encoder
|
|
|
|
[Debug_Flags]
|
|
build_flags =
|
|
-DDEBUG=1 ;; enable some debug assertions in the platform core
|
|
; -D WLED_DEBUG_HEAP ;; WLEDMM enable heap debugging
|
|
-D WLED_DEBUG ; lots of generic debug messages
|
|
-D SR_DEBUG ; some extra debug messages from audioreactive
|
|
; -D MIC_LOGGER ; for sound input monitoring & debugging (use arduino serial plotter)
|
|
; NetDebug moved to build_flags_M
|
|
|
|
[Speed_Flags]
|
|
build_flags =
|
|
-O2 ;; optimize for performance instead of size
|
|
;-ffast-math ;; gives a few (2-5) percent speedup on ESP32-S3, but causes slight slowdown on classic ESP32
|
|
-funsafe-math-optimizations ;; less dangerous than -ffast-math; still allows the compiler to exploit FMA and reciprocals (10% faster on -S3)
|
|
;; -mtarget-align ;; this one is included in -O2, so its not necessary to explicitly add it
|
|
-free -fipa-pta ;; these are very useful, too
|
|
-fno-jump-tables -fno-tree-switch-conversion ;; needed
|
|
-freorder-blocks -Wwrite-strings -fstrict-volatile-bitfields ;; needed
|
|
build_flags_V4 = ${Speed_Flags.build_flags} -fsingle-precision-constant ;; old framework does not like this flag
|
|
build_unflags =
|
|
-Os ;; to disable standard optimization for size
|
|
|
|
; end of base entries
|
|
|
|
|
|
; bin entries (with WLED_RELEASE_NAME)
|
|
;; ESP32, 4MB, optimized for speed, basic features and audioreactive only
|
|
[env:esp32_4MB_S]
|
|
extends = esp32_4MB_S_base
|
|
build_unflags = ${esp32_4MB_S_base.build_unflags}
|
|
${Speed_Flags.build_unflags} ;; to override -Os
|
|
build_flags = ${esp32_4MB_S_base.build_flags}
|
|
${Speed_Flags.build_flags} ;; -O2 -> optimize for speed instead of size
|
|
-D WLED_RELEASE_NAME=esp32_4MB_S
|
|
-D WLEDMM_FASTPATH ; WLEDMM experimental option. Reduces audio lag (latency), and allows for faster LED framerates. May break compatibility with previous versions.
|
|
;-D WLEDMM_SAVE_FLASH
|
|
;WLEDMM: disable the next line if you don't need "net Debug". It will free ~2% of flash
|
|
${common_mm.NetDebug_build_flags}
|
|
;; optimized-for-speed build
|
|
; RAM: [== ] 23.6% (used 77188 bytes from 327680 bytes)
|
|
; Flash: [========= ] 93.8% (used 1475997 bytes from 1572864 bytes)
|
|
|
|
[env:esp32_4MB_M]
|
|
extends = esp32_4MB_M_base
|
|
build_flags = ${esp32_4MB_M_base.build_flags}
|
|
-D WLED_RELEASE_NAME=esp32_4MB_M
|
|
-D WLEDMM_SAVE_FLASH
|
|
; RAM: [== ] 24.2% (used 79196 bytes from 327680 bytes)
|
|
; Flash: [==========] 97.4% (used 1532425 bytes from 1572864 bytes)
|
|
|
|
[env:esp32_4MB_M_eth]
|
|
extends = esp32_4MB_M_base
|
|
;;board_build.partitions = ${esp32.default_partitions}
|
|
board_build.partitions = ${esp32.extended_partitions} ;; 1.65MB firmware, 700KB filesystem
|
|
build_flags = ${esp32_4MB_M_base.build_flags}
|
|
-D WLED_RELEASE_NAME=esp32_4MB_M_eth
|
|
-D WLED_USE_ETHERNET
|
|
-D RLYPIN=-1 -D BTNPIN=-1 -D IRPIN=-1 ;; Prevent clash
|
|
-D LEDPIN=4 ;; safe default
|
|
-D WLED_DISABLE_ESPNOW ;; ESP-NOW requires wifi, may crash with ethernet only
|
|
-D WLEDMM_SAVE_FLASH
|
|
;-D WLED_DISABLE_ALEXA
|
|
;-D WLED_DISABLE_HUESYNC ;; Over the limits ?
|
|
;-D WLED_DISABLE_LOXONE ;; Over the limits
|
|
;-D WLED_DISABLE_MQTT
|
|
-D WLED_DISABLE_INFRARED ;; Over the limit
|
|
-D WLED_DISABLE_PARTICLESYSTEM1D ;; exceeds flash size limit
|
|
-D WLED_DISABLE_PARTICLESYSTEM2D ;; exceeds flash size limit
|
|
; RAM: [== ] 24.1% (used 78904 bytes from 327680 bytes)
|
|
; Flash: [==========] 98.5% (used 1548489 bytes from 1572864 bytes
|
|
|
|
[env:esp32_4MB_XL]
|
|
extends = esp32_4MB_XL_base
|
|
build_flags = ${esp32_4MB_XL_base.build_flags}
|
|
-D WLED_RELEASE_NAME=esp32_4MB_XL
|
|
;-D WLED_DISABLE_ALEXA
|
|
;-D WLED_DISABLE_HUESYNC ;; Over the limits ?
|
|
-D WLED_DISABLE_LOXONE ;; Over the limits
|
|
;-D WLED_DISABLE_MQTT
|
|
;-D WLED_DISABLE_INFRARED
|
|
-D WLEDMM_SAVE_FLASH ;; a humble attempt to save a few extra bytes
|
|
build_unflags = ${esp32_4MB_XL_base.build_unflags}
|
|
board_build.partitions = tools/WLED_ESP32_4MB_256KB_FS.csv
|
|
; RAM: [== ] 24.5% (used 80140 bytes from 327680 bytes)
|
|
; Flash: [========= ] 85.8% (used 1630789 bytes from 1900544 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 = ${esp32.extreme_partitions} ;; 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}
|
|
-D WLED_ENABLE_GIF ;; 28KB Flash
|
|
-D WLED_ENABLE_PIXART ;; 8KB Flash
|
|
-D WLED_ENABLE_PIXELFORGE ;; 12KB Flash
|
|
lib_deps = ${esp32_4MB_S_base.lib_deps}
|
|
${common_mm.animartrix_lib_deps}
|
|
; lib_ignore = IRremoteESP8266 ; use with WLED_DISABLE_INFRARED for faster compilation
|
|
;; optimized-for-speed build
|
|
; RAM: [== ] 23.7% (used 77524 bytes from 327680 bytes)
|
|
; Flash: [======= ] 72.9% (used 1528541 bytes from 2097152 bytes)
|
|
|
|
[env:esp32_16MB_M]
|
|
extends = esp32_4MB_M_base
|
|
build_flags = ${esp32_4MB_M_base.build_flags}
|
|
-D WLED_RELEASE_NAME=esp32_16MB_M
|
|
-D WLED_ENABLE_PIXART ;; 8KB Flash
|
|
-D WLED_ENABLE_PIXELFORGE ;; 12KB Flash
|
|
board = esp32_16MB
|
|
;board_build.partitions = tools/WLED_ESP32_16MB.csv ;; WLED standard for 16MB flash: 2MB firmware, 12 MB filesystem
|
|
board_build.partitions = ${esp32.extreme_partitions} ;; WLED extended for 16MB flash: 3.2MB firmware, 9 MB filesystem
|
|
;lib_ignore = IRremoteESP8266 ; use with WLED_DISABLE_INFRARED for faster compilation
|
|
; RAM: [== ] 24.2% (used 79196 bytes from 327680 bytes)
|
|
; Flash: [======= ] 73.6% (used 1542905 bytes from 2097152 bytes)
|
|
|
|
[env:esp32_4MB_M_debug]
|
|
extends = esp32_4MB_M_base
|
|
build_unflags = ${common.build_unflags}
|
|
-D CORE_DEBUG_LEVEL=0
|
|
-D USERMOD_ANIMARTRIX ;; Tips our memory usage over the limit
|
|
|
|
build_flags = ${esp32_4MB_M_base.build_flags}
|
|
${Debug_Flags.build_flags}
|
|
-D CORE_DEBUG_LEVEL=2 ;; 2=warning
|
|
-D WLED_RELEASE_NAME=esp32_4MB_M_debug
|
|
monitor_filters = esp32_exception_decoder
|
|
; RAM: [== ] 24.1% (used 79060 bytes from 327680 bytes)
|
|
; Flash: [==========] 99.3% (used 1561969 bytes from 1572864 bytes)
|
|
|
|
[env:esp32_16MB_M_debug]
|
|
extends = esp32_4MB_M_base
|
|
build_unflags = ${common.build_unflags}
|
|
-D CORE_DEBUG_LEVEL=0
|
|
-D NDEBUG
|
|
build_flags = ${esp32_4MB_M_base.build_flags}
|
|
${Debug_Flags.build_flags}
|
|
; -D WLED_DEBUG_HEAP ;; WLEDMM enable heap debugging (needs newer framework versions)
|
|
-D CORE_DEBUG_LEVEL=2 ;; 2=warning
|
|
-D WLED_RELEASE_NAME=esp32_16MB_M_debug
|
|
monitor_filters = esp32_exception_decoder
|
|
board = esp32_16MB
|
|
;board_build.partitions = tools/WLED_ESP32_16MB.csv ;; WLED standard for 16MB flash: 2MB firmware, 12 MB filesystem
|
|
board_build.partitions = ${esp32.extreme_partitions} ;; WLED extended for 16MB flash: 3.2MB firmware, 9 MB filesystem
|
|
; RAM: [== ] 24.3% (used 79468 bytes from 327680 bytes)
|
|
; Flash: [======== ] 76.7% (used 1609205 bytes from 2097152 bytes)
|
|
|
|
[env:esp32_16MB_XL]
|
|
extends = esp32_4MB_XL_base
|
|
build_flags = ${esp32_4MB_XL_base.build_flags}
|
|
-D WLED_RELEASE_NAME=esp32_16MB_XL
|
|
board = esp32_16MB
|
|
;board_build.partitions = tools/WLED_ESP32_16MB.csv ;; WLED standard for 16MB flash: 2MB firmware, 12 MB filesystem
|
|
board_build.partitions = ${esp32.extreme_partitions} ;; WLED extended for 16MB flash: 3.2MB firmware, 9 MB filesystem
|
|
;lib_ignore = IRremoteESP8266 ; use with WLED_DISABLE_INFRARED for faster compilation
|
|
; RAM: [== ] 24.5% (used 80140 bytes from 327680 bytes)
|
|
; Flash: [======== ] 77.8% (used 1631929 bytes from 2097152 bytes)
|
|
|
|
[env:esp32_16MB_M_eth]
|
|
extends = esp32_4MB_M_base
|
|
;board_build.partitions = tools/WLED_ESP32_16MB.csv ;; WLED standard for 16MB flash: 2MB firmware, 12 MB filesystem
|
|
board_build.partitions = ${esp32.extreme_partitions} ;; WLED extended for 16MB flash: 3.2MB firmware, 9 MB filesystem
|
|
board = esp32_16MB-poe ;; needed for ethernet boards (selects "esp32-poe" as variant)
|
|
build_flags = ${esp32_4MB_M_base.build_flags}
|
|
-D WLED_RELEASE_NAME=esp32_16MB_M_eth ; This will be included in the firmware.bin filename
|
|
-D WLED_ENABLE_PIXART ;; 8KB Flash
|
|
-D WLED_ENABLE_PIXELFORGE ;; 12KB Flash
|
|
-D WLED_USE_ETHERNET
|
|
-D WLED_DISABLE_ESPNOW ;; ESP-NOW requires wifi, may crash with ethernet only
|
|
-D BTNPIN=-1 -D RLYPIN=-1 -D IRPIN=-1
|
|
-D LEDPIN=4
|
|
; RAM: [== ] 24.2% (used 79388 bytes from 327680 bytes)
|
|
; Flash: [======= ] 73.8% (used 1548525 bytes from 2097152 bytes)
|
|
|
|
|
|
[env:esp8266_2MB_S]
|
|
extends = env:esp8266_2m
|
|
upload_speed = 460800 ;115200
|
|
board_build.f_cpu = 160000000L ;; we want 160Mhz (default = 80Mhz)
|
|
build_flags = ${common.build_flags_esp8266}
|
|
-D WLED_RELEASE_NAME=esp8266_2MB_S
|
|
-D WLED_USE_UNREAL_MATH ;; may cause some wrong sunset/sunrise times, but saves 7064 bytes FLASH and 975 bytes RAM
|
|
-D WLEDMM_SAVE_FLASH
|
|
-D WLED_DISABLE_ALEXA
|
|
-D WLED_DISABLE_HUESYNC
|
|
-D WLED_DISABLE_ESPNOW ;; might help in case of WiFi connectivity problems
|
|
-D WLED_DISABLE_LOXONE ; FLASH 1272 bytes
|
|
-D WLED_DISABLE_PARTICLESYSTEM1D ;; exceeds flash size limit
|
|
-D WLED_DISABLE_PARTICLESYSTEM2D ;; exceeds flash size limit
|
|
;; -D WLED_DISABLE_MQTT ; RAM 216 bytes; FLASH 16496 bytes
|
|
;; -D WLED_DISABLE_INFRARED ;RAM 136 bytes; FLASH 24492 bytes
|
|
; -D WLED_DISABLE_2D
|
|
; -UWLED_USE_MY_CONFIG
|
|
${common_mm.NetDebug_build_flags}
|
|
; -D WLED_DEBUG
|
|
; monitor_filters = esp8266_exception_decoder
|
|
;; lib_ignore = IRremoteESP8266 ; use with WLED_DISABLE_INFRARED for faster compilation
|
|
; RAM: [====== ] 61.3% (used 50224 bytes from 81920 bytes)
|
|
; Flash: [========= ] 87.6% (used 915303 bytes from 1044464 bytes)
|
|
|
|
[env:esp8266_4MB_S]
|
|
extends = env:d1_mini
|
|
upload_speed = 460800 ;115200
|
|
board_build.f_cpu = 160000000L ;; we want 160Mhz (default = 80Mhz)
|
|
build_flags = ${common.build_flags_esp8266}
|
|
-D WLED_RELEASE_NAME=esp8266_4MB_S
|
|
-D WLED_DISABLE_ALEXA
|
|
-D WLED_DISABLE_HUESYNC
|
|
-D WLED_DISABLE_ESPNOW ;; might help in case of WiFi connectivity problems
|
|
-D WLED_DISABLE_LOXONE ; FLASH 1272 bytes
|
|
;; -D WLED_DISABLE_MQTT ; RAM 216 bytes; FLASH 16496 bytes
|
|
;; -D WLED_DISABLE_INFRARED ;RAM 136 bytes; FLASH 24492 bytes
|
|
; -D WLED_DISABLE_2D
|
|
;; -D WLED_DISABLE_PARTICLESYSTEM1D
|
|
-D WLED_DISABLE_PARTICLESYSTEM2D ;; exceeds flash size limit
|
|
-D WLEDMM_SAVE_FLASH
|
|
-D WLED_USE_UNREAL_MATH
|
|
; -UWLED_USE_MY_CONFIG
|
|
${common_mm.NetDebug_build_flags}
|
|
; -D WLED_DEBUG
|
|
; monitor_filters = esp8266_exception_decoder
|
|
;; lib_ignore = IRremoteESP8266 ; use with WLED_DISABLE_INFRARED for faster compilation
|
|
; RAM: [====== ] 61.3% (used 50220 bytes from 81920 bytes)
|
|
; Flash: [========= ] 89.5% (used 934483 bytes from 1044464 bytes)
|
|
[env:esp8266_4MB_M]
|
|
extends = env:d1_mini
|
|
upload_speed = 460800 ;115200
|
|
board_build.f_cpu = 160000000L ;; we want 160Mhz (default = 80Mhz)
|
|
build_flags = ${common.build_flags_esp8266}
|
|
-D WLED_RELEASE_NAME=esp8266_4MB_M
|
|
-D WLED_DISABLE_ALEXA
|
|
-D WLED_DISABLE_HUESYNC
|
|
-D WLED_DISABLE_LOXONE
|
|
-D WLEDMM_SAVE_FLASH
|
|
-D WLED_USE_UNREAL_MATH
|
|
;; -D WLED_DISABLE_PARTICLESYSTEM1D
|
|
;; -D WLED_DISABLE_PARTICLESYSTEM2D ;; exceeds flash size limit
|
|
; -D USERMOD_AUDIOREACTIVE
|
|
; -UWLED_USE_MY_CONFIG
|
|
; -D USERMOD_PIRSWITCH
|
|
; -D USERMOD_DALLASTEMPERATURE ;; disabled because it hangs during usermod setup on -S3 (autodetect broken?)
|
|
; -D USERMOD_MULTI_RELAY
|
|
-D USE_ALT_DISPLAY ; new versions of USERMOD_FOUR_LINE_DISPLAY and USERMOD_ROTARY_ENCODER_UI
|
|
-D WLED_MAX_USERMODS=5 ; default only 4 on ESP8266
|
|
-D USERMOD_FOUR_LINE_DISPLAY
|
|
-D USERMOD_MPU6050_IMU ; gyro/accelero for USERMOD_GAMES (ONLY WORKS IF USERMOD_FOUR_LINE_DISPLAY NOT INCLUDED - I2C SHARING BUG)
|
|
-D USERMOD_GAMES ; WLEDMM usermod
|
|
; -D USERMOD_ARTIFX ; this is compiling but not working due to low memory on 8266
|
|
-D USERMOD_BATTERY ;; enable Battery usermod
|
|
-D USERMOD_BATTERY_USE_LIPO ;; use new "discharging curve" for LiPo cells
|
|
${common_mm.NetDebug_build_flags}
|
|
; -D WLED_DEBUG
|
|
monitor_filters = esp8266_exception_decoder
|
|
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
|
|
lib_ignore = ${esp8266.lib_ignore}
|
|
; RAM: [====== ] 63.0% (used 51608 bytes from 81920 bytes)
|
|
; Flash: [========= ] 94.9% (used 991039 bytes from 1044464 bytes)
|
|
|
|
; Blaz env (for reference purposes)
|
|
[env:d1_mini_temp]
|
|
extends = env:d1_mini
|
|
board_build.filesystem = littlefs
|
|
build_flags = ${common.build_flags_esp8266} -D WLED_RELEASE_NAME=ESP_8266
|
|
-D WLED_DISABLE_ALEXA
|
|
-D WLED_DISABLE_HUESYNC
|
|
-D WLED_DISABLE_LOXONE
|
|
-D WLED_ENABLE_SIMPLE_UI
|
|
-D USERMOD_FOUR_LINE_DISPLAY
|
|
-D USE_ALT_DISPlAY
|
|
-D USERMOD_DALLASTEMPERATURE
|
|
-D TEMPERATURE_PIN=13 # (D7)
|
|
-D LEDPIN=2 # (D4)
|
|
-D RLYPIN=12 # (D6)
|
|
-D BTNPIN=0 # (D3)
|
|
-D IRPIN=14 # (D5)
|
|
-D USERMOD_MULTI_RELAY
|
|
-D MULTI_RELAY_MAX_RELAYS=2
|
|
-D USERMOD_PIRSWITCH
|
|
-D PIR_SENSOR_PIN=16
|
|
-D PIR_SENSOR_OFF_SEC=60
|
|
-UWLED_USE_MY_CONFIG
|
|
lib_deps = ${esp8266.lib_deps}
|
|
paulstoffregen/OneWire@~2.3.7 ;WLEDMM Softhack, we need this as well (instead of 2.3.5)?
|
|
olikraus/U8g2 # @~2.33.15
|
|
Wire ; WLEDMM ewowi, needed?
|
|
lib_ignore = ${esp8266.lib_ignore}
|
|
|
|
[env:esp8266pro_16MB_S]
|
|
extends = env:d1_mini
|
|
board = d1_mini_pro ;; "D1 mini pro": ESP8266EX, 160MHz, 80KB RAM, 16MB Flash
|
|
board_build.f_cpu = 160000000L ;; we want 160Mhz (default = 80Mhz)
|
|
;board_build.f_flash = 80000000L ;; for 80Mhz flash speed, in case your chip can handle it (default = 40Mhz)
|
|
board_build.flash_mode = qio ;; quad IO - fastest speed, in case your chip can handle it.
|
|
;;board_build.flash_mode = dout ;; use if your esp8266 becomes unstable with "qio"
|
|
board_build.ldscript = ${common.ldscript_16m14m} ;; 16MB flash, use 14MB for LittleFS
|
|
|
|
upload_speed = 460800 ;115200
|
|
build_flags = ${common.build_flags_esp8266}
|
|
-D WLED_RELEASE_NAME=esp8266pro_16MB_S
|
|
-D WLED_WATCHDOG_TIMEOUT=0
|
|
-D WLED_DISABLE_ALEXA
|
|
-D WLED_DISABLE_HUESYNC
|
|
; -D WLED_DEBUG ${common.debug_flags} ;; un-comment for debug messages
|
|
;; -D WLED_DISABLE_PARTICLESYSTEM1D
|
|
;; -D WLED_DISABLE_PARTICLESYSTEM2D ;; exceeds flash size limit
|
|
-D WLEDMM_SAVE_FLASH
|
|
;; -D WLED_USE_UNREAL_MATH
|
|
${common_mm.NetDebug_build_flags}
|
|
;; -D WLED_DISABLE_ESPNOW ;; might help in case of WiFi connectivity problems
|
|
; -D WLED_DISABLE_LOXONE ; FLASH 1272 bytes
|
|
; -D WLED_DISABLE_MQTT ; RAM 216 bytes; FLASH 16496 bytes
|
|
; -D WLED_DISABLE_INFRARED ;RAM 136 bytes; FLASH 24492 bytes ewowi: disabled to stay below 100%
|
|
; -D WLED_DISABLE_2D
|
|
; -D USERMOD_AUDIOREACTIVE
|
|
; -D USERMOD_ARTIFX ; to be done
|
|
; -UWLED_USE_MY_CONFIG
|
|
monitor_filters = esp8266_exception_decoder
|
|
; lib_ignore = IRremoteESP8266 ; use with WLED_DISABLE_INFRARED for faster compilation
|
|
; RAM: [====== ] 61.5% (used 50400 bytes from 81920 bytes)
|
|
; Flash: [========= ] 90.1% (used 941059 bytes from 1044464 bytes)
|
|
|
|
[env:esp8266pro_16MB_M]
|
|
extends = env:d1_mini
|
|
board = d1_mini_pro ;; "D1 mini pro": ESP8266EX, 160MHz, 80KB RAM, 16MB Flash
|
|
board_build.f_cpu = 160000000L ;; we want 160Mhz (default = 80Mhz)
|
|
;board_build.f_flash = 80000000L ;; for 80Mhz flash speed, in case your chip can handle it (default = 40Mhz)
|
|
board_build.flash_mode = qio ;; quad IO - fastest speed, in case your chip can handle it.
|
|
;;board_build.flash_mode = dout ;; use if your esp8266 becomes unstable with "qio"
|
|
board_build.ldscript = ${common.ldscript_16m14m} ;; 16MB flash, use 14MB for LittleFS
|
|
|
|
upload_speed = 460800 ;115200
|
|
build_flags = ${common.build_flags_esp8266}
|
|
-D WLED_RELEASE_NAME=esp8266pro_16MB_M
|
|
-D WLED_MAX_USERMODS=5 ; default only 4-6
|
|
-D WLED_DISABLE_ALEXA
|
|
-D WLED_DISABLE_HUESYNC
|
|
-D WLED_DISABLE_LOXONE
|
|
; -D USERMOD_AUDIOREACTIVE
|
|
; -D USERMOD_ARTIFX ; to be done
|
|
-D WLED_DISABLE_ESPNOW ;; might help in case of WiFi connectivity problems
|
|
;; -D WLED_DISABLE_PARTICLESYSTEM1D
|
|
-D WLED_DISABLE_PARTICLESYSTEM2D ;; exceeds flash size limit
|
|
-D WLEDMM_SAVE_FLASH
|
|
;; -D WLED_USE_UNREAL_MATH
|
|
-D USERMOD_PIRSWITCH
|
|
-D USERMOD_DALLASTEMPERATURE ;; disabled because it hangs during usermod setup on -S3 (autodetect broken?)
|
|
-D USERMOD_MULTI_RELAY
|
|
-D USE_ALT_DISPLAY ; new versions of USERMOD_FOUR_LINE_DISPLAY and USERMOD_ROTARY_ENCODER_UI
|
|
-D USERMOD_FOUR_LINE_DISPLAY
|
|
-D USERMOD_MPU6050_IMU ; gyro/accelero for USERMOD_GAMES (ONLY WORKS IF USERMOD_FOUR_LINE_DISPLAY NOT INCLUDED - I2C SHARING BUG)
|
|
-D USERMOD_GAMES ; WLEDMM usermod
|
|
${common_mm.NetDebug_build_flags}
|
|
; -D WLED_DEBUG
|
|
monitor_filters = esp8266_exception_decoder
|
|
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
|
|
lib_ignore = ${esp8266.lib_ignore}
|
|
; RAM: [====== ] 62.9% (used 51508 bytes from 81920 bytes)
|
|
; Flash: [==========] 96.2% (used 1005115 bytes from 1044464 bytes)
|
|
|
|
[env:esp01_1MB_S]
|
|
board = esp01_1m
|
|
platform = ${common.platform_wled_default}
|
|
platform_packages = ${common.platform_packages}
|
|
board_build.ldscript = ${common.ldscript_1m128k}
|
|
build_unflags = ${esp8266.build_unflags}
|
|
build_flags = ${common.build_flags_esp8266} -D WLED_DISABLE_OTA
|
|
-D WLED_RELEASE_NAME=esp01_1MB_S
|
|
-D WLED_USE_UNREAL_MATH ;; may cause some wrong sunset/sunrise times, but saves 7064 bytes FLASH and 975 bytes RAM
|
|
-D WLED_DISABLE_ALEXA
|
|
-D WLED_DISABLE_HUESYNC
|
|
-D WLED_DISABLE_ESPNOW ;; exceeds flash size limits
|
|
-D WLED_DISABLE_INFRARED ;; exceeds flash size limits
|
|
-D WLED_DISABLE_PARTICLESYSTEM1D ;; exceeds flash size limit
|
|
-D WLED_DISABLE_PARTICLESYSTEM2D ;; exceeds flash size limit
|
|
-D WLEDMM_SAVE_FLASH
|
|
;; -D WLED_DISABLE_LOXONE
|
|
;; -D WLED_DISABLE_MQTT
|
|
;; -D WLED_DISABLE_2D ;; last resort to reduce flash size
|
|
lib_deps = ${esp8266.lib_deps}
|
|
lib_ignore = ${esp8266.lib_ignore}
|
|
IRremoteESP8266 ; use with WLED_DISABLE_INFRARED for faster compilation
|
|
; RAM: [====== ] 60.3% (used 49408 bytes from 81920 bytes)
|
|
; Flash: [==========] 98.6% (used 880331 bytes from 892912 bytes)
|
|
|
|
|
|
# ------------------------------------------------------------------------------
|
|
# MoonModules environments for IDF V4.4.x
|
|
# ------------------------------------------------------------------------------
|
|
;; Warning: the build-in LittleFS (arduino-esp32 2.0.x) seems to be "slightly different" from Lorol LittleFS.
|
|
;; When upgrading to the new framework, it might be necessary to first do a chip erase (make sure you have a backup of cfg.json and presets.json)
|
|
|
|
; compiled with ESP-IDF 4.4.1; HUB75 supported, OTA compatible with upstream
|
|
[env:esp32_4MB_V4_S_HUB75]
|
|
extends = esp32_4MB_V4_S_base
|
|
board_build.partitions = ${esp32.default_partitions} ;; compatible with upstream
|
|
build_unflags = ${esp32_4MB_V4_S_base.build_unflags}
|
|
${common_mm.DMXin_build_flags} ;; exceeds flash size limits
|
|
build_flags = ${esp32_4MB_V4_S_base.esp32_build_flags}
|
|
-D WLED_RELEASE_NAME=esp32_4MB_V4_S_HUB75
|
|
-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.
|
|
-D WLEDMM_SAVE_FLASH
|
|
-D WLED_DISABLE_LOXONE
|
|
-D WLED_DISABLE_ALEXA
|
|
-D WLED_DISABLE_HUESYNC
|
|
-D WLED_DISABLE_MQTT
|
|
-D WLED_DISABLE_INFRARED
|
|
-D WLED_DISABLE_ESPNOW ;; might help in case of WiFi connectivity problems
|
|
-D WLED_ENABLE_PIXELFORGE
|
|
-D WLEDMM_SAVE_FLASH
|
|
; -D WLED_DEBUG
|
|
; -D SR_DEBUG
|
|
; -D MIC_LOGGER
|
|
${common_mm.HUB75_build_flags}
|
|
-D SR_DMTYPE=254 ;; HUB75 driver needs the I2S unit - set AR default mode to 'Network Receive Only' to prevent driver conflicts.
|
|
-D WLED_DISABLE_PARTICLESYSTEM1D ;; exceeds flash size limit
|
|
;; -D WLED_DISABLE_PARTICLESYSTEM2D
|
|
lib_deps = ${esp32_4MB_V4_S_base.esp32_lib_deps}
|
|
${common_mm.HUB75_lib_deps}
|
|
lib_ignore = IRremoteESP8266 ; use with WLED_DISABLE_INFRARED for faster compilation
|
|
${common_mm.DMXin_lib_ignore}
|
|
; RAM: [=== ] 25.5% (used 83396 bytes from 327680 bytes)
|
|
; Flash: [==========] 98.2% (used 1543949 bytes from 1572864 bytes)
|
|
|
|
[env:esp32_4MB_V4_S] ;; legacy alias
|
|
extends = env:esp32_4MB_V4_S_HUB75
|
|
|
|
; standard MM build for classic esp32; HUB75 not included
|
|
[env:esp32_4MB_V4_M]
|
|
extends = esp32_4MB_V4_M_base
|
|
;; needs tasmota framework; will exceed flash limits with default framework
|
|
platform = ${esp32.platform} ;; "V4" tasmota
|
|
platform_packages = ${esp32.platform_packages}
|
|
build_flags = ${esp32_4MB_V4_M_base.esp32_build_flags}
|
|
-D WLED_RELEASE_NAME=esp32_4MB_V4_M
|
|
-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 WLED_ENABLE_PIXELFORGE
|
|
;;-D WLEDMM_SAVE_FLASH
|
|
;;-D WLED_DISABLE_PARTICLESYSTEM1D ;; may exceed flash size limit
|
|
;;-D WLED_DISABLE_PARTICLESYSTEM2D ;; may exceed flash size limit
|
|
lib_deps = ${esp32_4MB_V4_M_base.esp32_lib_deps}
|
|
lib_ignore =
|
|
IRremoteESP8266 ; use with WLED_DISABLE_INFRARED for faster compilation
|
|
${common_mm.HUB75_lib_ignore} ;; over the flash size limit
|
|
;;${common_mm.animartrix_lib_ignore}
|
|
build_unflags = ${esp32_4MB_V4_M_base.build_unflags}
|
|
${common_mm.HUB75_build_flags} ;; over the flash size limit
|
|
;;-D USERMOD_ANIMARTRIX ;; Tips our memory usage over the limit
|
|
;; -D USERMOD_ARTIFX
|
|
;; -D USERMOD_AUTO_SAVE
|
|
;; -D WLED_ENABLE_HUB75MATRIX
|
|
-D WLED_DISABLE_ADALIGHT
|
|
-D WLED_DISABLE_LOXONE ; FLASH 1272 bytes
|
|
-D WLED_DISABLE_ALEXA ; RAM 116 bytes; FLASH 13524 bytes
|
|
-D WLED_DISABLE_HUESYNC ;RAM 122 bytes; FLASH 6308 bytes
|
|
-D WLED_DISABLE_MQTT ; RAM 216 bytes; FLASH 16496 bytes
|
|
;;-D WLED_DISABLE_INFRARED ;RAM 136 bytes; FLASH 24492 bytes
|
|
; RAM: [== ] 24.3% (used 79660 bytes from 327680 bytes)
|
|
; Flash: [========= ] 87.7% (used 1494213 bytes from 1703936 bytes)
|
|
|
|
[env:esp32_4MB_V4_S_eth]
|
|
extends = esp32_4MB_V4_S_base
|
|
;;board_build.partitions = ${esp32.default_partitions}
|
|
board_build.partitions = ${esp32.extended_partitions} ;; 1.65MB firmware, 700KB filesystem
|
|
build_flags = ${esp32_4MB_V4_S_base.esp32_build_flags}
|
|
-D WLED_RELEASE_NAME=esp32_4MB_V4_S_eth
|
|
-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.
|
|
-D WLEDMM_SAVE_FLASH
|
|
-D WLED_DISABLE_LOXONE
|
|
-D WLED_DISABLE_ALEXA
|
|
-D WLED_DISABLE_HUESYNC
|
|
-D WLED_DISABLE_MQTT
|
|
-D WLED_DISABLE_INFRARED
|
|
-D WLED_ENABLE_PIXELFORGE
|
|
; -D WLED_DEBUG
|
|
; -D SR_DEBUG
|
|
; -D MIC_LOGGER
|
|
${common_mm.HUB75_build_flags}
|
|
-D SR_DMTYPE=254 ;; HUB75 driver needs the I2S unit - set AR default mode to 'Network Receive Only' to prevent driver conflicts.
|
|
-D WLED_USE_ETHERNET
|
|
-D WLED_DISABLE_ESPNOW ;; ESP-NOW requires wifi, may crash with ethernet only
|
|
-D BTNPIN=-1 -D RLYPIN=-1 -D IRPIN=-1
|
|
-D LEDPIN=4
|
|
lib_deps = ${esp32_4MB_V4_S_base.esp32_lib_deps}
|
|
${common_mm.HUB75_lib_deps}
|
|
lib_ignore = IRremoteESP8266 ; use with WLED_DISABLE_INFRARED for faster compilation
|
|
; RAM: [=== ] 25.6% (used 84048 bytes from 327680 bytes)
|
|
; Flash: [==========] 96.1% (used 1637085 bytes from 1703936 bytes)
|
|
|
|
[env:esp32_16MB_V4_M_eth]
|
|
extends = esp32_4MB_V4_M_base
|
|
;board_build.partitions = tools/WLED_ESP32_16MB.csv ;; WLED standard for 16MB flash: 2MB firmware, 12 MB filesystem
|
|
board_build.partitions = ${esp32.extreme_partitions} ;; WLED extended for 16MB flash: 3.2MB firmware, 9 MB filesystem
|
|
board = esp32_16MB-poe ;; needed for ethernet boards (selects "esp32-poe" as variant)
|
|
build_unflags = ${esp32_4MB_V4_M_base.build_unflags}
|
|
${Speed_Flags.build_unflags} ;; to override -Os
|
|
-D WLED_DISABLE_ADALIGHT
|
|
-D WLED_DISABLE_LOXONE ; FLASH 1272 bytes
|
|
-D WLED_DISABLE_ALEXA ; RAM 116 bytes; FLASH 13524 bytes
|
|
-D WLED_DISABLE_HUESYNC ;RAM 122 bytes; FLASH 6308 bytes
|
|
-D WLED_DISABLE_MQTT ; RAM 216 bytes; FLASH 16496 bytes
|
|
;;-D WLED_DISABLE_INFRARED ;RAM 136 bytes; FLASH 24492 bytes
|
|
build_flags = ${esp32_4MB_V4_M_base.esp32_build_flags}
|
|
-D WLED_RELEASE_NAME=esp32_16MB_V4_M_eth ; This will be included in the firmware.bin filename
|
|
${Speed_Flags.build_flags_V4} ;; -O2 -> optimize for speed instead of size
|
|
-D WLED_ENABLE_PIXART ;; 8KB Flash
|
|
-D WLED_ENABLE_PIXELFORGE ;; 12KB Flash
|
|
;; ${common_mm.HUB75_build_flags} ;; not enough pins for HUB75
|
|
;; -D SR_DMTYPE=254 ;; HUB75 driver needs the I2S unit - set AR default mode to 'Network Receive Only' to prevent driver conflicts.
|
|
-D WLED_USE_ETHERNET
|
|
-D WLED_DISABLE_ESPNOW ;; ESP-NOW requires wifi, may crash with ethernet only
|
|
-D BTNPIN=-1 -D RLYPIN=-1 -D IRPIN=-1
|
|
-D LEDPIN=4
|
|
lib_deps = ${esp32_4MB_V4_M_base.esp32_lib_deps}
|
|
;; ${common_mm.HUB75_lib_deps}
|
|
${common_mm.animartrix_lib_deps}
|
|
; RAM: [=== ] 26.7% (used 87368 bytes from 327680 bytes)
|
|
; Flash: [======= ] 65.5% (used 2061117 bytes from 3145728 bytes)
|
|
|
|
;; softhack007: my favourite HUB75 buildenv - fastest possible
|
|
[env:esp32_4MB_V4_HUB75_forum]
|
|
extends = esp32_4MB_V4_S_base
|
|
platform_packages = ${esp32_4MB_V4_S_base.platform_packages}
|
|
;; toolchain-xtensa-esp32@~11.2 ;; for trying out newer gcc @11.2.0+2022r1 ;; 25fps -> 30fps;; FastLED 3.7.1 required !!
|
|
|
|
build_unflags = ${esp32_4MB_V4_S_base.build_unflags}
|
|
${Speed_Flags.build_unflags} ;; to override -Os
|
|
;; -D WLED_ENABLE_DMX_INPUT
|
|
-DARDUINO_EVENT_RUNNING_CORE=1
|
|
;;-DCORE_DEBUG_LEVEL=0
|
|
;; -D NDEBUG
|
|
;; -D NO_CIE1931 ;; Do use LED brightness compensation described in CIE 1931
|
|
|
|
build_flags = ${esp32_4MB_V4_S_base.esp32_build_flags}
|
|
;; -Wsuggest-attribute=const -Wsuggest-attribute=pure
|
|
;; -Wmissing-noreturn -Wmissing-return
|
|
;; -Wall -Wextra
|
|
-Wno-unused-value -Wno-format -Wno-type-limits
|
|
-D WLED_RELEASE_NAME=esp32_4MB_V4_HUB75_forum
|
|
${Speed_Flags.build_flags_V4} ;; -O2 -> optimize for speed instead of size
|
|
;; -D DEBUG
|
|
-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.
|
|
-D WLED_DISABLE_LOXONE
|
|
-D WLED_DISABLE_ALEXA
|
|
-D WLED_DISABLE_HUESYNC
|
|
-D WLED_DISABLE_MQTT
|
|
-D WLED_DISABLE_INFRARED
|
|
-D WLED_DISABLE_ADALIGHT
|
|
-D WLED_ENABLE_FULL_FONTS ;; increases firmware size by 6848 bytes
|
|
-D WLED_ENABLE_PIXELFORGE
|
|
;; -D WLED_DEBUG
|
|
;; -D SR_DEBUG
|
|
-D WLED_BOOTUPDELAY=350
|
|
${common_mm.HUB75_build_flags}
|
|
-DESP32_FORUM_PINOUT
|
|
-D SR_DMTYPE=254 ;; HUB75 driver needs the I2S unit - set AR default mode to 'Network Receive Only' to prevent driver conflicts.
|
|
${common_mm.animartrix_build_flags}
|
|
-DARDUINO_EVENT_RUNNING_CORE=0 ;; assign Wifi to core0, to have more CPU on core#1 (arduino loop)
|
|
;;-DARDUINO_RUNNING_CORE=1 ;; should be default, but does not hurt
|
|
-DCONFIG_MBEDTLS_DYNAMIC_BUFFER=1 ;; optional - seems to move more buffers into PSRAM
|
|
;; -D CONFIG_ESP32_REV_MIN=3 ;; disables PSRAM bug workarounds in the core, reducing the code size and improving overall performance.
|
|
-D JSON_BUFFER_SIZE=18432 -D MIN_HEAP_SIZE=6144
|
|
-D MAX_SEGMENT_DATA=40960 ;; default 32767
|
|
-D WLEDMM_SAVE_FLASH
|
|
-D WLED_DISABLE_BROWNOUT_DET
|
|
;;-DCORE_DEBUG_LEVEL=1
|
|
lib_deps = ${esp32_4MB_V4_S_base.esp32_lib_deps}
|
|
${common_mm.HUB75_lib_deps}
|
|
${common_mm.animartrix_lib_deps}
|
|
lib_ignore = IRremoteESP8266 ; use with WLED_DISABLE_INFRARED for faster compilation
|
|
;; ${common_mm.DMXin_lib_ignore}
|
|
|
|
board_build.partitions = ${esp32.big_partitions}
|
|
board_build.f_flash = 80000000L ; use full 80MHz speed for flash (default = 40Mhz)
|
|
board_build.flash_mode = qio ; (dio = dual i/o; more compatible than qio = quad i/o)
|
|
; RAM: [== ] 23.9% (used 78400 bytes from 327680 bytes)
|
|
; Flash: [==========] 98.1% (used 1863653 bytes from 1900544 bytes)
|
|
|
|
;; V4 build for 16MB flash, optimized for speed; HUB75 supported
|
|
[env:esp32_16MB_V4_S]
|
|
extends = esp32_4MB_V4_S_base
|
|
build_unflags = ${esp32_4MB_V4_S_base.build_unflags}
|
|
${Speed_Flags.build_unflags} ;; to override -Os
|
|
build_flags = ${esp32_4MB_V4_S_base.esp32_build_flags}
|
|
${Speed_Flags.build_flags_V4} ;; optimize for speed instead of size
|
|
-D WLED_RELEASE_NAME=esp32_16MB_V4_S
|
|
-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.
|
|
-D WLED_DISABLE_BROWNOUT_DET
|
|
-D JSON_BUFFER_SIZE=18432 -D MIN_HEAP_SIZE=6144
|
|
-D MAX_SEGMENT_DATA=40960 ;; default 32767
|
|
${common_mm.HUB75_build_flags}
|
|
-D SR_DMTYPE=254 ;; HUB75 driver needs the I2S unit - set AR default mode to 'Network Receive Only' to prevent driver conflicts.
|
|
${common_mm.animartrix_build_flags}
|
|
-D WLED_ENABLE_GIF ;; 28KB Flash
|
|
-D WLED_ENABLE_PIXART ;; 8KB Flash
|
|
-D WLED_ENABLE_PIXELFORGE ;; 12KB Flash
|
|
lib_deps = ${esp32_4MB_V4_S_base.esp32_lib_deps}
|
|
${common_mm.HUB75_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 = ${esp32.extreme_partitions} ;; WLED extended for 16MB flash: 3.2MB firmware, 9 MB filesystem
|
|
;; optimized-for-speed build
|
|
; RAM: [== ] 23.7% (used 77704 bytes from 327680 bytes)
|
|
; Flash: [======== ] 84.4% (used 1770341 bytes from 2097152 bytes)
|
|
|
|
; compiled with ESP-IDF 4.4.1; HUB75 included (may have PIN conflicts)
|
|
[env:esp32_16MB_V4_M]
|
|
extends = esp32_4MB_V4_M_base
|
|
build_flags = ${esp32_4MB_V4_M_base.esp32_build_flags}
|
|
-D WLED_RELEASE_NAME=esp32_16MB_V4_M
|
|
-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 WLED_ENABLE_DMX ;; disabled because it does not work with ESP-IDF 4.4.x (buggy driver in SparkFunDMX)
|
|
-D WLED_ENABLE_DMX_INPUT ;; needs more testing
|
|
-D LEDPIN=16 -D RLYPIN=19
|
|
-D AUDIOPIN=-1 -D TEMPERATURE_PIN=23 -D PIR_SENSOR_PIN=-1 -D PWM_PIN=-1
|
|
-D ENCODER_DT_PIN=35 -D ENCODER_CLK_PIN=39 -D ENCODER_SW_PIN=5 ; WLEDMM spec by @SERG74: use 35 and 39 instead of 18 and 19 (conflicts)
|
|
-D FLD_PIN_SCL=-1 -D FLD_PIN_SDA=-1 ; use global!
|
|
-D HW_PIN_SCL=22 -D HW_PIN_SDA=21
|
|
${common_mm.HUB75_build_flags}
|
|
-D SR_DMTYPE=254 ;; HUB75 driver needs the I2S unit - set AR default mode to 'Network Receive Only' to prevent driver conflicts.
|
|
${common_mm.animartrix_build_flags}
|
|
-D WLED_ENABLE_GIF ;; 28KB Flash
|
|
-D WLED_ENABLE_PIXART ;; 8KB Flash
|
|
-D WLED_ENABLE_PIXELFORGE ;; 12KB Flash
|
|
lib_deps = ${esp32_4MB_V4_M_base.esp32_lib_deps}
|
|
${common_mm.HUB75_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 = ${esp32.extreme_partitions} ;; WLED extended for 16MB flash: 3.2MB firmware, 9 MB filesystem
|
|
; RAM: [=== ] 25.7% (used 84104 bytes from 327680 bytes)
|
|
; Flash: [======== ] 80.7% (used 1692269 bytes from 2097152 bytes)
|
|
|
|
[env:esp32_16MB_V4_M_debug]
|
|
extends = esp32_4MB_V4_M_base
|
|
build_unflags = ${common.build_unflags}
|
|
-D CORE_DEBUG_LEVEL=0
|
|
-D NDEBUG
|
|
build_flags = ${esp32_4MB_V4_M_base.esp32_build_flags}
|
|
${Debug_Flags.build_flags}
|
|
-D CORE_DEBUG_LEVEL=4 ;; 0=none, 1=error, 2=warning, 3=info, 4=debug, 5=verbose
|
|
-D WLED_DEBUG_HEAP ;; WLEDMM enable heap debugging
|
|
-D WLED_RELEASE_NAME=esp32_16MB_V4_M_debug
|
|
-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
|
|
lib_deps = ${esp32_4MB_V4_M_base.esp32_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 = ${esp32.extreme_partitions} ;; WLED extended for 16MB flash: 3.2MB firmware, 9 MB filesystem
|
|
monitor_filters = esp32_exception_decoder
|
|
; RAM: [=== ] 26.4% (used 86356 bytes from 327680 bytes)
|
|
; Flash: [======== ] 83.6% (used 1753461 bytes from 2097152 bytes)
|
|
|
|
;; experimental environment for boards with PSRAM (needs ESP-IDF 4.4.1). HUB75 included (may have PIN conflicts)
|
|
[env:esp32_4MB_PSRAM_S]
|
|
extends = esp32_4MB_V4_S_base
|
|
board = lolin_d32_pro
|
|
;board = esp32cam
|
|
;board = ttgo-t7-v14-mini32
|
|
board_build.f_flash = 80000000L
|
|
;;board_build.flash_mode = qio
|
|
board_build.flash_mode = dio
|
|
board_build.partitions = ${esp32.extended_partitions} ;; 1.65MB firmware, 700KB filesystem
|
|
|
|
build_unflags = ${esp32_4MB_V4_S_base.build_unflags}
|
|
-D WLED_ENABLE_DMX
|
|
-D WLED_ENABLE_DMX_INPUT
|
|
; -D WLED_ENABLE_HUB75MATRIX ;; uses a lot of flash
|
|
; -D USERMOD_ANIMARTRIX ;; uses a lot of memory
|
|
build_flags = ${esp32_4MB_V4_S_base.esp32_build_flags}
|
|
-D WLED_RELEASE_NAME=esp32_4MB_PSRAM_S
|
|
-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.
|
|
-D WLEDMM_SAVE_FLASH
|
|
-mfix-esp32-psram-cache-issue ;; Older ESP32 (rev.<3) need a PSRAM fix (increases static RAM used) https://docs.espressif.com/projects/esp-idf/en/stable/esp32/api-guides/external-ram.html
|
|
-D LEDPIN=25 -D DATA_PINS=25 ; avoid pin 16 = PSRAM
|
|
-DBOARD_HAS_PSRAM ;; -D WLED_USE_PSRAM ;; WLED_USE_PSRAM causes major slow-down (slow LEDs) on some ESP32 boards
|
|
-D WLED_USE_PSRAM_JSON -DALL_JSON_TO_PSRAM ; WLEDMM --> force all JSON stuff into PSRAM; gives more free heap
|
|
-D WLED_DISABLE_LOXONE ; FLASH 1272 bytes
|
|
-D WLED_DISABLE_HUESYNC ; RAM 122 bytes; FLASH 6308 bytes
|
|
-D WLED_DISABLE_ALEXA ; RAM 116 bytes; FLASH 13524 bytes
|
|
-D WLED_DISABLE_MQTT ; RAM 216 bytes; FLASH 16496 bytes
|
|
-D WLED_DISABLE_INFRARED ;RAM 136 bytes; FLASH 24492 bytes ewowi: disabled to stay below 100%
|
|
-D WLED_ENABLE_PIXELFORGE
|
|
; -D WLED_DEBUG
|
|
; -D SR_DEBUG
|
|
; -D MIC_LOGGER
|
|
${common_mm.HUB75_build_flags}
|
|
-D SR_DMTYPE=254 ;; HUB75 driver needs the I2S unit - set AR default mode to 'Network Receive Only' to prevent driver conflicts.
|
|
lib_deps = ${esp32_4MB_V4_S_base.esp32_lib_deps}
|
|
${common_mm.HUB75_lib_deps}
|
|
lib_ignore =
|
|
IRremoteESP8266 ; use with WLED_DISABLE_INFRARED for faster compilation
|
|
;; ${common_mm.HUB75_lib_ignore}
|
|
${common_mm.animartrix_lib_ignore}
|
|
${common_mm.DMXin_lib_ignore}
|
|
;; RAM: [== ] 18.0% (used 58916 bytes from 327680 bytes)
|
|
;; Flash: [========= ] 94.2% (used 1605257 bytes from 1703936 bytes)
|
|
|
|
;; similar to 4MB_PSRAM_S, but optimized for WROVER-E (chip revision >= 3) that doesn't need any workarounds for PSRAM any more
|
|
;; tl;dr: its faster on PSRAM. But it will not work on all boards.
|
|
[env:esp32_4MB_PSRAM_REV3_S]
|
|
extends = esp32_4MB_V4_S_base
|
|
;board = esp32cam
|
|
board = lolin_d32_pro
|
|
;board = ttgo-t7-v14-mini32
|
|
board_build.partitions = ${esp32.extended_partitions} ;; 1.65MB firmware, 700KB filesystem
|
|
board_build.f_flash = 80000000L
|
|
board_build.flash_mode = qio
|
|
|
|
build_unflags = ${esp32_4MB_V4_S_base.build_unflags}
|
|
;;${Speed_Flags.build_unflags} ;; to override -Os
|
|
-DARDUINO_EVENT_RUNNING_CORE=1 ;; we want to run wifi on core0, so remove the standard flag
|
|
-mfix-esp32-psram-cache-issue ;; this fix is not needed any more for revision 3
|
|
-mfix-esp32-psram-cache-strategy=memw ;; same as above
|
|
|
|
build_flags = ${esp32_4MB_V4_S_base.esp32_build_flags}
|
|
-DARDUINO_EVENT_RUNNING_CORE=0 ;; assign Wifi to core0, to have more CPU on core#1 (arduino loop)
|
|
-DARDUINO_RUNNING_CORE=1 ;; should be default, but does not hurt
|
|
-DCONFIG_MBEDTLS_DYNAMIC_BUFFER=1 ;; optional - seems to move more buffers into PSRAM
|
|
;;${Speed_Flags.build_flags_V4} ;; optimize for speed instead of size --> over 100% flash, but works with 256KB filesystem (alternative partitions file)
|
|
-D WLEDMM_FASTPATH ; WLEDMM experimental option. Reduces audio lag (latency), and allows for faster LED framerates. May break compatibility with previous versions.
|
|
-D WLEDMM_SAVE_FLASH
|
|
-DBOARD_HAS_PSRAM ;; -D WLED_USE_PSRAM ;; WLED_USE_PSRAM causes major slow-down (slow LEDs) on some ESP32 boards
|
|
-D WLED_USE_PSRAM_JSON -DALL_JSON_TO_PSRAM ; WLEDMM --> force all JSON stuff into PSRAM; gives more free heap
|
|
;;-D CONFIG_ESP32_REV_MIN=3 ;; disables PSRAM bug workarounds in the core, reducing the code size and improving overall performance.
|
|
-D WLED_RELEASE_NAME=esp32_4MB_PSRAM_REV3_S
|
|
-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 LEDPIN=25 -D DATA_PINS=25 ; avoid pin 16 = PSRAM
|
|
-D WLED_DISABLE_LOXONE ; FLASH 1272 bytes
|
|
-D WLED_DISABLE_HUESYNC ; RAM 122 bytes; FLASH 6308 bytes
|
|
-D WLED_DISABLE_ALEXA ; RAM 116 bytes; FLASH 13524 bytes
|
|
; -D WLED_DISABLE_MQTT ; RAM 216 bytes; FLASH 16496 bytes
|
|
-D WLED_DISABLE_INFRARED ;RAM 136 bytes; FLASH 24492 bytes ewowi: disabled to stay below 100%
|
|
;-D WLED_DISABLE_ADALIGHT ;; To disable serial protocols (see upstream #3128)
|
|
; -D WLED_ENABLE_DMX
|
|
; -D WLED_DEBUG
|
|
; -D SR_DEBUG
|
|
; -D MIC_LOGGER
|
|
${common_mm.HUB75_build_flags}
|
|
-D SR_DMTYPE=254 ;; HUB75 driver needs the I2S unit - set AR default mode to 'Network Receive Only' to prevent driver conflicts.
|
|
lib_deps = ${esp32_4MB_V4_S_base.esp32_lib_deps}
|
|
${common_mm.HUB75_lib_deps}
|
|
lib_ignore =
|
|
IRremoteESP8266 ; use with WLED_DISABLE_INFRARED for faster compilation
|
|
${common_mm.animartrix_lib_ignore}
|
|
;; ${common_mm.HUB75_lib_ignore}
|
|
;; RAM: [== ] 18.2% (used 59608 bytes from 327680 bytes)
|
|
;; Flash: [========= ] 94.5% (used 1610657 bytes from 1703936 bytes)
|
|
|
|
|
|
# ------------------------------------------------------------------------------
|
|
# esp32-S3 environments
|
|
# ------------------------------------------------------------------------------
|
|
|
|
|
|
[env:esp32S3_4MB_S] ;; Use for HD-WF2
|
|
extends = esp32_4MB_V4_M_base
|
|
;; use standard espressif platform - tasmota platform seems to have problems when there is no PSRAM (sdkconfig.h file not found)
|
|
platform = ${esp32.platformV4}
|
|
platform_packages = ${esp32.platformV4_packages}
|
|
board = esp32-s3-devkitc-1
|
|
build_unflags =
|
|
-D USERMOD_DALLASTEMPERATURE ;; disabled because it hangs during usermod setup on -S3 (autodetect broken?)
|
|
-D USE_ALT_DISPLAY ;; four line display seems to have problems with I2C - it hangs during usermod setup
|
|
-D USERMOD_FOUR_LINE_DISPLAY ;; see above
|
|
-D USERMOD_ROTARY_ENCODER_UI ;; see above
|
|
-D WLED_ENABLE_DMX ;; disabled because it does not work with ESP-IDF 4.4.x (buggy driver in SparkFunDMX)
|
|
|
|
build_flags = ${common.build_flags} ${esp32s3.build_flags} -Wno-misleading-indentation -Wno-format-truncation
|
|
${common_mm.build_flags_S}
|
|
${common_mm.HUB75_build_flags}
|
|
${common_mm.animartrix_build_flags}
|
|
-D WLED_RELEASE_NAME=esp32S3_4MB_S
|
|
-DARDUINO_USB_MODE=1 -DARDUINO_USB_CDC_ON_BOOT=0 -DARDUINO_USB_MSC_ON_BOOT=0 -DARDUINO_USB_DFU_ON_BOOT=0 ;; for Serial-to-USB chip
|
|
;;-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
|
|
-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)
|
|
-D WLED_WATCHDOG_TIMEOUT=0 -D CONFIG_ASYNC_TCP_USE_WDT=0
|
|
${common_mm.build_disable_sync_interfaces}
|
|
-D WLEDMM_FASTPATH ; WLEDMM experimental option. Reduces audio lag (latency), and allows for faster LED framerates. May break compatibility with previous versions.
|
|
-D WLEDMM_SAVE_FLASH
|
|
; -D WLED_DEBUG
|
|
; -D SR_DEBUG
|
|
lib_deps = ${esp32s3.lib_deps} ${common_mm.lib_deps_S}
|
|
${common_mm.HUB75_lib_deps}
|
|
${common_mm.animartrix_lib_deps}
|
|
board_build.f_flash = 80000000L
|
|
board_build.flash_mode = dio
|
|
board_build.partitions = ${esp32.extended_partitions} ;; 1.65MB firmware, 700KB filesystem
|
|
|
|
|
|
[env:esp32S3_8MB_M]
|
|
extends = esp32_4MB_V4_M_base
|
|
;; use standard espressif platform - tasmota platform seems to have problems when there is no PSRAM (sdkconfig.h file not found)
|
|
platform = ${esp32.platformV4}
|
|
platform_packages = ${esp32.platformV4_packages}
|
|
board = esp32-s3-devkitc-1
|
|
build_unflags =
|
|
-D USERMOD_DALLASTEMPERATURE ;; disabled because it hangs during usermod setup on -S3 (autodetect broken?)
|
|
-D USE_ALT_DISPLAY ;; four line display seems to have problems with I2C - it hangs during usermod setup
|
|
-D USERMOD_FOUR_LINE_DISPLAY ;; see above
|
|
-D USERMOD_ROTARY_ENCODER_UI ;; see above
|
|
-D WLED_ENABLE_DMX ;; disabled because it does not work with ESP-IDF 4.4.x (buggy driver in SparkFunDMX)
|
|
|
|
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.HUB75_build_flags}
|
|
${common_mm.animartrix_build_flags}
|
|
; -DBOARD_HAS_PSRAM -D WLED_USE_PSRAM_JSON -D WLED_USE_PSRAM ;; un-comment in case your board supports PSRAM
|
|
;; -D WLED_USE_PSRAM_JSON -DALL_JSON_TO_PSRAM ; WLEDMM --> force all JSON stuff into PSRAM; gives more free heap
|
|
-D WLED_RELEASE_NAME=esp32S3_8MB_M
|
|
-DARDUINO_USB_MODE=1 -DARDUINO_USB_CDC_ON_BOOT=0 -DARDUINO_USB_MSC_ON_BOOT=0 -DARDUINO_USB_DFU_ON_BOOT=0 ;; for Serial-to-USB chip
|
|
;;-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
|
|
;;-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)
|
|
-D WLED_WATCHDOG_TIMEOUT=0 -D CONFIG_ASYNC_TCP_USE_WDT=0
|
|
; -D U8X8_HAVE_2ND_HW_I2C ;; experimental - tells U8g2 lib that a second HW I2C unit exists
|
|
-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_ENABLE_PIXART ;; 8KB Flash
|
|
-D WLED_ENABLE_PIXELFORGE ;; 12KB Flash
|
|
;;-D WLEDMM_FASTPATH ; WLEDMM experimental option. Reduces audio lag (latency), and allows for faster LED framerates. May break compatibility with previous versions.
|
|
-D LEDPIN=4
|
|
;-D STATUSLED=39
|
|
-D BTNPIN=48
|
|
-D RLYPIN=21
|
|
-D IRPIN=15
|
|
-D HW_PIN_SDA=42 ;; ESP32-S3 default: SDA = 8
|
|
-D HW_PIN_SCL=41 ;; ESP32-S3 default: SCL = 9
|
|
-D AUDIOPIN=-1
|
|
-D SR_DMTYPE=1 -D I2S_SDPIN=16 -D I2S_CKPIN=17 -D I2S_WSPIN=47 -D MCLK_PIN=40
|
|
-D ES7243_SDAPIN=8 -D ES7243_SCLPIN=18
|
|
; -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}
|
|
${common_mm.HUB75_lib_deps}
|
|
${common_mm.animartrix_lib_deps}
|
|
|
|
;lib_ignore = IRremoteESP8266 ; use with WLED_DISABLE_INFRARED for faster compilation
|
|
board_build.partitions = tools/WLED_ESP32_8MB.csv
|
|
board_build.flash_mode = qio
|
|
; RAM: [=== ] 25.4% (used 83320 bytes from 327680 bytes)
|
|
; Flash: [======= ] 70.6% (used 1479573 bytes from 2097152 bytes)
|
|
|
|
;; MM for ESP32-S3 PSRAM development board, with 8MB FLASH and >= 8MB PSRAM (memory_type: qio_opi)
|
|
;; HUB75 supported, but may still hve pin conflicts
|
|
[env:esp32S3_8MB_PSRAM_M]
|
|
extends = esp32_4MB_V4_M_base
|
|
;; we have enough flash - use standard espressif platform instead of tasmota
|
|
platform = ${esp32.platformV4}
|
|
platform_packages = ${esp32.platformV4_packages}
|
|
|
|
board = esp32-s3-devkitc-1 ;; generic S3 dev board; the next line adds PSRAM support
|
|
board_build.arduino.memory_type = qio_opi ;; use with PSRAM: 8MB or 16MB
|
|
;; board_build.arduino.memory_type = qio_qspi ;; use with PSRAM: 2MB or 4MB
|
|
board_build.flash_mode = qio ;; use "dio" if your board gets unstable with "qio"; also change then previous lines accordingly (memory_type)
|
|
|
|
build_unflags = ${env:esp32S3_8MB_M.build_unflags} ;; use the same as "normal" S3 buildenv
|
|
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.HUB75_build_flags}
|
|
-DBOARD_HAS_PSRAM ;; -D WLED_USE_PSRAM ;; your board supports PSRAM
|
|
-D WLED_USE_PSRAM_JSON -DALL_JSON_TO_PSRAM ; WLEDMM --> force all JSON stuff into PSRAM; gives more free heap
|
|
-D WLED_RELEASE_NAME=esp32S3_8MB_PSRAM_M
|
|
-DARDUINO_USB_MODE=1 -DARDUINO_USB_CDC_ON_BOOT=0 -DARDUINO_USB_MSC_ON_BOOT=0 -DARDUINO_USB_DFU_ON_BOOT=0 ;; for Serial-to-USB chip
|
|
;;-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
|
|
;;-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)
|
|
-D WLED_WATCHDOG_TIMEOUT=0 -D CONFIG_ASYNC_TCP_USE_WDT=0
|
|
;;-D WLEDMM_FASTPATH ; WLEDMM experimental option. Reduces audio lag (latency), and allows for faster LED framerates. May break compatibility with previous versions.
|
|
-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_ENABLE_PIXART ;; 8KB Flash
|
|
-D WLED_ENABLE_PIXELFORGE ;; 12KB Flash
|
|
-D LEDPIN=21
|
|
;;-D DATA_PINS=21,48,3 -D PIXEL_COUNTS=30,1,144 ;; just an example: my board has a builtin neopixel on gpio48
|
|
; -D STATUSLED=2
|
|
-D BTNPIN=0 -D RLYPIN=1 -D IRPIN=-1
|
|
-D HW_PIN_SDA=42 -D HW_PIN_SCL=41
|
|
-D AUDIOPIN=-1
|
|
-D SR_DMTYPE=1 -D I2S_SDPIN=14 -D I2S_CKPIN=45 -D I2S_WSPIN=47 -D MCLK_PIN=46
|
|
;;-D ES7243_SDAPIN=8 -D ES7243_SCLPIN=18
|
|
; -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}
|
|
${common_mm.HUB75_lib_deps}
|
|
;lib_ignore = IRremoteESP8266 ; use with WLED_DISABLE_INFRARED for faster compilation
|
|
monitor_filters = esp32_exception_decoder
|
|
board_build.partitions = tools/WLED_ESP32_8MB.csv
|
|
; RAM: [== ] 21.1% (used 69156 bytes from 327680 bytes)
|
|
; Flash: [======== ] 75.9% (used 1591817 bytes from 2097152 bytes)
|
|
|
|
[env:esp32S3_8MB_S]
|
|
;; MM for ESP32-S3 boards - FASTPATH + optimize for speed; ; HUB75 support included (may still have pin conflicts)
|
|
extends = esp32_4MB_V4_M_base
|
|
;; use standard espressif platform - tasmota platform seems to have problems when there is no PSRAM (sdkconfig.h file not found)
|
|
platform = ${esp32.platformV4}
|
|
platform_packages = ${esp32.platformV4_packages}
|
|
board = esp32-s3-devkitc-1 ;; generic S3 dev board
|
|
board_build.flash_mode = qio ;; use "dio" if your board gets unstable with "qio"
|
|
build_unflags = ${env:esp32S3_8MB_M.build_unflags} ;; use the same as "normal" S3 buildenv
|
|
${Speed_Flags.build_unflags} ;; to override -Os
|
|
build_flags = ${common.build_flags} ${esp32s3.build_flags} -Wno-misleading-indentation -Wno-format-truncation
|
|
${common_mm.build_flags_S}
|
|
-D WLED_RELEASE_NAME=esp32S3_8MB_S
|
|
-DARDUINO_USB_MODE=1 -DARDUINO_USB_CDC_ON_BOOT=0 -DARDUINO_USB_MSC_ON_BOOT=0 -DARDUINO_USB_DFU_ON_BOOT=0 ;; for Serial-to-USB chip
|
|
;;-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
|
|
;;-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)
|
|
${Speed_Flags.build_flags_V4} ;; 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.HUB75_build_flags}
|
|
${common_mm.animartrix_build_flags}
|
|
-D WLED_ENABLE_GIF ;; 28KB Flash
|
|
-D WLED_ENABLE_PIXART ;; 8KB Flash
|
|
-D WLED_ENABLE_PIXELFORGE ;; 12KB Flash
|
|
-D WLED_WATCHDOG_TIMEOUT=0 -D CONFIG_ASYNC_TCP_USE_WDT=0
|
|
-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 LEDPIN=4
|
|
;-D STATUSLED=39
|
|
-D BTNPIN=48
|
|
-D RLYPIN=21
|
|
-D IRPIN=15
|
|
-D HW_PIN_SDA=42 ;; ESP32-S3 default: SDA = 8
|
|
-D HW_PIN_SCL=41 ;; ESP32-S3 default: SCL = 9
|
|
-D AUDIOPIN=-1
|
|
-D SR_DMTYPE=1 -D I2S_SDPIN=16 -D I2S_CKPIN=17 -D I2S_WSPIN=47 -D MCLK_PIN=40
|
|
-D ES7243_SDAPIN=8 -D ES7243_SCLPIN=18
|
|
; -D WLED_DEBUG
|
|
; -D SR_DEBUG
|
|
; -D MIC_LOGGER
|
|
lib_deps = ${esp32s3.lib_deps} ${common_mm.lib_deps_S}
|
|
${common_mm.HUB75_lib_deps}
|
|
${common_mm.animartrix_lib_deps}
|
|
lib_ignore = IRremoteESP8266 ; use with WLED_DISABLE_INFRARED for faster compilation
|
|
board_build.partitions = tools/WLED_ESP32_8MB.csv
|
|
;; optimized-for-speed build
|
|
; RAM: [=== ] 26.0% (used 85328 bytes from 327680 bytes)
|
|
; Flash: [======== ] 79.9% (used 1674885 bytes from 2097152 bytes)
|
|
|
|
|
|
;; for S3 with 16MB flash, octal PSRAM,
|
|
;; MOONHUB HUB75 adapter board
|
|
[env:esp32S3_16MB_PSRAM_M_HUB75]
|
|
extends = env:esp32S3_8MB_PSRAM_M
|
|
;; we have enough flash - use standard espressif platform instead of tasmota
|
|
platform = ${esp32.platformV4}
|
|
platform_packages = ${esp32.platformV4_packages}
|
|
board = lilygo-t7-s3
|
|
board_build.arduino.memory_type = qio_opi
|
|
board_build.flash_mode = qio
|
|
|
|
build_unflags = ${env:esp32S3_8MB_PSRAM_M.build_unflags}
|
|
-D WLED_RELEASE_NAME=esp32S3_8MB_M
|
|
-D LEDPIN=21
|
|
${Speed_Flags.build_unflags} ;; to override -Os
|
|
|
|
build_flags = ${common.build_flags} ${esp32s3.build_flags} -Wno-misleading-indentation -Wno-format-truncation
|
|
${common_mm.build_flags_S} ${common_mm.build_flags_M}
|
|
${Speed_Flags.build_flags_V4} ;; optimize for speed
|
|
${common_mm.HUB75_build_flags}
|
|
-D MOONHUB_S3_PINOUT ;; HUB75 pinout
|
|
${common_mm.animartrix_build_flags}
|
|
-D WLED_ENABLE_GIF ;; 28KB Flash
|
|
-D WLED_ENABLE_PIXART ;; 8KB Flash
|
|
-D WLED_ENABLE_PIXELFORGE ;; 12KB Flash
|
|
-D WLED_RELEASE_NAME=esp32S3_16MB_PSRAM_M_HUB75
|
|
-D WLEDMM_FASTPATH
|
|
-D WLED_DISABLE_BROWNOUT_DET
|
|
;; -D JSON_BUFFER_SIZE=18432 ;; default 54000
|
|
-D MIN_HEAP_SIZE=6144 ;; default 8192
|
|
-D MAX_SEGMENT_DATA=40960 ;; default 32767
|
|
-DBOARD_HAS_PSRAM ;; -D WLED_USE_PSRAM ;; your board supports PSRAM
|
|
-D WLED_USE_PSRAM_JSON -DALL_JSON_TO_PSRAM ; WLEDMM --> force all JSON stuff into PSRAM; gives more free heap
|
|
-DARDUINO_USB_MODE=1 -DARDUINO_USB_CDC_ON_BOOT=0 -DARDUINO_USB_MSC_ON_BOOT=0 -DARDUINO_USB_DFU_ON_BOOT=0 ;; for Serial-to-USB chip
|
|
;; -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
|
|
-D WLED_WATCHDOG_TIMEOUT=0 -D CONFIG_ASYNC_TCP_USE_WDT=0
|
|
;; -DUSERMOD_BATTERY_MEASUREMENT_PIN=2 ;; battery voltage pin
|
|
;; -D STATUSLED=17 ;; onboard LED
|
|
-D LEDPIN=14 -D BTNPIN=0 -D RLYPIN=15 -D IRPIN=-1 -D AUDIOPIN=-1 ;; defaults that avoid pin conflicts with HUB75
|
|
-D SR_DMTYPE=1 -D I2S_SDPIN=10 -D I2S_CKPIN=11 -D I2S_WSPIN=12 -D MCLK_PIN=-1 ;; I2S mic
|
|
|
|
lib_deps = ${esp32s3.lib_deps} ${common_mm.lib_deps_S} ${common_mm.lib_deps_V4_M}
|
|
${common_mm.HUB75_lib_deps}
|
|
${common_mm.animartrix_lib_deps}
|
|
;lib_ignore = IRremoteESP8266 ; use with WLED_DISABLE_INFRARED for faster compilation
|
|
|
|
board_build.partitions = ${esp32.extreme_partitions}
|
|
board_upload.flash_size = 16MB
|
|
board_upload.maximum_size =16777216
|
|
; RAM: [== ] 19.1% (used 62712 bytes from 327680 bytes)
|
|
; Flash: [====== ] 60.1% (used 1891929 bytes from 3145728 bytes)
|
|
|
|
|
|
;; MM for ESP32-S3 WROOM-2, a.k.a. ESP32-S3 DevKitC-1 v1.1
|
|
;; with 16MB FLASH and >= 8MB PSRAM (memory_type: opi_opi)
|
|
;; includes HUB75 and AnimArtix
|
|
[env:esp32S3_WROOM-2_M]
|
|
extends = env:esp32S3_8MB_PSRAM_M
|
|
;; tasmota platform
|
|
;; platform = ${esp32s3.platform}
|
|
;; platform_packages = ${esp32s3.platform_packages}
|
|
;; we have enough flash - use standard espressif platform instead of tasmota
|
|
platform = ${esp32.platformV4}
|
|
platform_packages = ${esp32.platformV4_packages}
|
|
board_build.flash_mode = dout ;; dummy value - bootloader will switch to "opi"
|
|
board_build.arduino.memory_type = opi_opi
|
|
board = esp32s3camlcd ;; this is the only standard board with "opi_opi"
|
|
board_upload.flash_size = 16MB
|
|
board_upload.maximum_size =16777216
|
|
board_build.partitions = ${esp32.extreme_partitions}
|
|
build_unflags = ${env:esp32S3_8MB_PSRAM_M.build_unflags}
|
|
-D WLED_RELEASE_NAME=esp32S3_8MB_M
|
|
-D LEDPIN=21
|
|
${Speed_Flags.build_unflags} ;; to override -Os
|
|
build_flags = ${common.build_flags} ${esp32s3.build_flags} -Wno-misleading-indentation -Wno-format-truncation
|
|
${common_mm.build_flags_S} ${common_mm.build_flags_M}
|
|
${Speed_Flags.build_flags_V4} ;; optimize for speed
|
|
${common_mm.HUB75_build_flags}
|
|
${common_mm.animartrix_build_flags}
|
|
-D WLED_ENABLE_PIXART ;; 8KB Flash
|
|
-D WLED_ENABLE_PIXELFORGE ;; 12KB Flash
|
|
-D WLED_RELEASE_NAME=esp32S3_WROOM-2_M
|
|
-D WLEDMM_FASTPATH
|
|
-DBOARD_HAS_PSRAM ;; -D WLED_USE_PSRAM ;; your board supports PSRAM
|
|
-D WLED_USE_PSRAM_JSON -DALL_JSON_TO_PSRAM ; WLEDMM --> force all JSON stuff into PSRAM; gives more free heap
|
|
-DARDUINO_USB_MODE=1 -DARDUINO_USB_CDC_ON_BOOT=0 -DARDUINO_USB_MSC_ON_BOOT=0 -DARDUINO_USB_DFU_ON_BOOT=0 ;; for Serial-to-USB chip
|
|
;;-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
|
|
-D WLED_WATCHDOG_TIMEOUT=0 -D CONFIG_ASYNC_TCP_USE_WDT=0
|
|
;; -D LEDPIN=38 ;; buildin LED
|
|
;; -D BTNPIN=0 -D RLYPIN=16 -D IRPIN=17 -D AUDIOPIN=-1
|
|
-D LEDPIN=12 -D BTNPIN=0 -D RLYPIN=-1 -D IRPIN=-1 -D AUDIOPIN=-1 ;; to avoid pin conflict with HUB75
|
|
-D SR_DMTYPE=1 -D I2S_SDPIN=13 -D I2S_CKPIN=14 -D I2S_WSPIN=15 -D MCLK_PIN=4 ;; I2S mic
|
|
lib_deps = ${esp32s3.lib_deps} ${common_mm.lib_deps_S} ${common_mm.lib_deps_V4_M}
|
|
${common_mm.HUB75_lib_deps}
|
|
${common_mm.animartrix_lib_deps}
|
|
|
|
;; MM for ESP32-S3 WROOM-2 with 32MB flash and PSRAM
|
|
[env:esp32S3_WROOM-2_M_32MB]
|
|
extends = env:esp32S3_WROOM-2_M
|
|
board_build.partitions = tools/WLED_ESP32_32MB.csv
|
|
board_upload.flash_size = 32MB
|
|
board_upload.maximum_size = 33554432
|
|
;; replace WLED_RELEASE_NAME, keep everything else
|
|
build_unflags = ${env:esp32S3_WROOM-2_M.build_unflags}
|
|
-D WLED_RELEASE_NAME=esp32S3_WROOM-2_M
|
|
build_flags = ${env:esp32S3_WROOM-2_M.build_flags}
|
|
-D WLED_RELEASE_NAME=esp32S3_WROOM-2_M_32MB
|
|
|
|
|
|
;; 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
|
|
platform = ${esp32s3.platform}
|
|
platform_packages = ${esp32s3.platform_packages}
|
|
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_unflags = ${common.build_unflags}
|
|
-D WLED_ENABLE_HUB75MATRIX ;; board does not have enough pins for HUB75
|
|
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_PSRAM_S
|
|
-DBOARD_HAS_PSRAM ;; -D WLED_USE_PSRAM
|
|
-D WLED_USE_PSRAM_JSON -DALL_JSON_TO_PSRAM ; WLEDMM --> force all JSON stuff into PSRAM; gives more free heap
|
|
-DCONFIG_MBEDTLS_DYNAMIC_BUFFER=1 ;; optional - allows some buffers to use PSRAM
|
|
-DLOLIN_WIFI_FIX -DWLEDMM_WIFI_POWERON_HACK ;; seems to work much better with this
|
|
-DARDUINO_USB_MODE=1 -DARDUINO_USB_CDC_ON_BOOT=0 -DARDUINO_USB_MSC_ON_BOOT=0 -DARDUINO_USB_DFU_ON_BOOT=1 ;; for Serial-to-USB chip
|
|
;;-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
|
|
-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)
|
|
${Speed_Flags.build_flags_V4} ;; 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.
|
|
;; -D WLEDMM_SAVE_FLASH
|
|
${common_mm.animartrix_build_flags}
|
|
-D WLED_ENABLE_PIXART ;; 8KB Flash
|
|
-D WLED_ENABLE_PIXELFORGE ;; 12KB Flash
|
|
-D WLED_WATCHDOG_TIMEOUT=0 -D CONFIG_ASYNC_TCP_USE_WDT=0
|
|
-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 LEDPIN=21
|
|
-D BTNPIN=-1 -D RLYPIN=-1 -D IRPIN=-1
|
|
-D HW_PIN_SDA=12 -D HW_PIN_SCL=13
|
|
-D AUDIOPIN=-1
|
|
-D SR_DMTYPE=1 -D I2S_SDPIN=5 -D I2S_WSPIN=6 -D I2S_CKPIN=4 -D MCLK_PIN=7
|
|
; -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}
|
|
${common_mm.animartrix_lib_deps}
|
|
lib_ignore =
|
|
IRremoteESP8266 ; use with WLED_DISABLE_INFRARED for faster compilation
|
|
${common_mm.HUB75_lib_ignore}
|
|
${common_mm.DMXin_lib_ignore}
|
|
; RAM: [== ] 16.1% (used 52912 bytes from 327680 bytes)
|
|
; Flash: [======= ] 66.2% (used 1257281 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
|
|
platform = ${esp32s3.platform}
|
|
platform_packages = ${esp32s3.platform_packages}
|
|
board = lolin_s3_mini ;; -S3 mini: 4MB flash 2MB PSRAM
|
|
board_build.partitions = ${esp32.extended_partitions} ;; 1.65MB firmware, 700KB filesystem
|
|
build_unflags = ${common.build_unflags}
|
|
-D WLED_ENABLE_HUB75MATRIX ;; board does not have enough pins for HUB75
|
|
;;-D USERMOD_ANIMARTRIX ;; not enough flash
|
|
build_flags = ${common.build_flags} ${esp32s3.build_flags} -Wno-misleading-indentation -Wno-format-truncation
|
|
${common_mm.build_flags_S} ${common_mm.build_flags_M}
|
|
-D WLED_RELEASE_NAME=esp32S3_4MB_PSRAM_M
|
|
-DBOARD_HAS_PSRAM ;; -D WLED_USE_PSRAM
|
|
-D WLED_USE_PSRAM_JSON -DALL_JSON_TO_PSRAM ; WLEDMM --> force all JSON stuff into PSRAM; gives more free heap
|
|
-DCONFIG_MBEDTLS_DYNAMIC_BUFFER=1 ;; optional - allows some buffers to use PSRAM
|
|
-DLOLIN_WIFI_FIX -DWLEDMM_WIFI_POWERON_HACK ;; seems to work much better with this
|
|
-DARDUINO_USB_MODE=1 -DARDUINO_USB_CDC_ON_BOOT=0 -DARDUINO_USB_MSC_ON_BOOT=0 -DARDUINO_USB_DFU_ON_BOOT=1 ;; for Serial-to-USB chip
|
|
;;-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
|
|
-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)
|
|
;; ${common_mm.animartrix_build_flags} ;; not enough flash
|
|
-D LEDPIN=21
|
|
-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 - 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 WLEDMM_SAVE_FLASH
|
|
-D WLED_ENABLE_PIXART ;; 8KB Flash
|
|
-D WLED_ENABLE_PIXELFORGE ;; 12KB Flash
|
|
; -D WLED_DEBUG
|
|
; -D SR_DEBUG
|
|
; -D MIC_LOGGER
|
|
;; -D WLED_DISABLE_PARTICLESYSTEM1D ;; exceeds flash size limit
|
|
;; -D WLED_DISABLE_PARTICLESYSTEM2D ;; exceeds flash size limit
|
|
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
|
|
${common_mm.HUB75_lib_ignore}
|
|
${common_mm.DMXin_lib_ignore}
|
|
;; ${common_mm.animartrix_lib_ignore}
|
|
; RAM: [== ] 16.7% (used 54676 bytes from 327680 bytes)
|
|
; Flash: [======== ] 83.2% (used 1416997 bytes from 1703936 bytes)
|
|
|
|
# ------------------------------------------------------------------------------
|
|
# esp32-S2 environments
|
|
# ------------------------------------------------------------------------------
|
|
|
|
|
|
;; MM for Adafruit QT Py ESP32-S2 -> 4MB flash, PSRAM, and tinyUF2 bootloader
|
|
;; to ewowi - i'll optimize this entry later, as a few things can be inherited for sure. To softhack: sure ;-)
|
|
[env:esp32s2_tinyUF2_PSRAM_S]
|
|
extends = esp32_4MB_V4_S_base
|
|
;; tasmota platform needed, as we are over flash size limits for the standard platform
|
|
platform = ${esp32s2.platform}
|
|
platform_packages = ${esp32s2.platform_packages}
|
|
|
|
board = adafruit_qtpy_esp32s2
|
|
board_build.partitions = tools/partitions-4MB_spiffs-tinyuf2.csv ;; this is needed for tinyUF2 bootloader! Filename has to end in "tinyuf2.csv"
|
|
board_build.f_flash = 80000000L
|
|
board_build.flash_mode = qio
|
|
upload_speed = 256000 ;; 921600
|
|
build_unflags = ${common.build_unflags}
|
|
-D USERMOD_DALLASTEMPERATURE ;; disabled because it hangs during usermod setup on -S3 (autodetect broken?)
|
|
-D WLED_ENABLE_DMX ;; disabled because it does not work with ESP-IDF 4.4.x (buggy driver in SparkFunDMX)
|
|
-D WLED_ENABLE_DMX_INPUT ;; needs more testing
|
|
-DWLEDMM_FASTPATH ;; needs more testing on -S2
|
|
-DUSERMOD_RTC
|
|
-D WLED_ENABLE_HUB75MATRIX
|
|
|
|
build_flags = ${common.build_flags} ${esp32s2.build_flags}
|
|
; ${Debug_Flags.build_flags} ;ewowi: enabling debug causes Error: The program size (1463330 bytes) is greater than maximum allowed (1441792 bytes)
|
|
-D WLED_WATCHDOG_TIMEOUT=0 -D CONFIG_ASYNC_TCP_USE_WDT=0
|
|
${common_mm.build_flags_S}
|
|
-Wno-misleading-indentation -Wno-format-truncation
|
|
-DCONFIG_MBEDTLS_DYNAMIC_BUFFER=1 ;; optional - allows some buffers to use PSRAM
|
|
-D WLED_RELEASE_NAME=esp32S2_4MB_UF2_S
|
|
-DARDUINO_USB_CDC_ON_BOOT=1 ;; mandatory, otherwise USB does not work!!
|
|
-D WLED_DISABLE_ADALIGHT ;; disables serial protocols when using CDC USB (Serial RX will receive junk commands, unless its pulled down by resistor)
|
|
-DARDUINO_USB_MSC_ON_BOOT=0 -DARDUINO_USB_DFU_ON_BOOT=0
|
|
-D SERVERNAME='"WLED-S2"'
|
|
-DBOARD_HAS_PSRAM ;; -D WLED_USE_PSRAM
|
|
-D WLED_USE_PSRAM_JSON -DALL_JSON_TO_PSRAM ; WLEDMM --> force all JSON stuff into PSRAM; gives more free heap
|
|
-D WLED_DISABLE_LOXONE ;; FLASH 1272 bytes
|
|
-D WLED_DISABLE_HUESYNC ;; RAM 122 bytes; FLASH 6308 bytes
|
|
-D WLED_DISABLE_ALEXA ;; RAM 116 bytes; FLASH 13524 bytes
|
|
; -D WLED_DISABLE_MQTT ;; RAM 216 bytes; FLASH 16496 bytes
|
|
-D WLED_DISABLE_INFRARED ;; RAM 136 bytes; FLASH 24492 bytes
|
|
-D WLEDMM_SAVE_FLASH
|
|
-D LEDPIN=39 ;; onboard neopixel LED. Attach your own LEDs to GPIO 7 or GPIO 6
|
|
-D BTNPIN=0
|
|
;-D RLYPIN=6
|
|
;-D IRPIN=7
|
|
-D HW_PIN_SCL=40 -D HW_PIN_SDA=41
|
|
-D HW_PIN_MOSISPI=35 ;WLEDMM renamed from HW_PIN_DATASPI
|
|
-D HW_PIN_CLOCKSPI=36
|
|
-D HW_PIN_MISOSPI=37
|
|
-D AUDIOPIN=-1
|
|
-D SR_DMTYPE=1 -D I2S_SDPIN=9 -D I2S_WSPIN=8 -D I2S_CKPIN=17 -D MCLK_PIN=18
|
|
;-D STATUSLED=-1
|
|
-D WLED_USE_MY_CONFIG
|
|
lib_deps = ${esp32s2.lib_deps} ${common_mm.lib_deps_S}
|
|
lib_ignore =
|
|
IRremoteESP8266 ; use with WLED_DISABLE_INFRARED for faster compilation
|
|
OneWire ; not needed as we don't include USERMOD_DALLASTEMPERATURE
|
|
monitor_filters = esp32_exception_decoder
|
|
; RAM: [== ] 17.9% (used 58728 bytes from 327680 bytes)
|
|
; Flash: [======== ] 83.6% (used 1204774 bytes from 1441792 bytes)
|
|
|
|
;; MM environment for generic ESP32-S2, with PSRAM, 4MB flash (300kB filesystem to have more program space)
|
|
;; PINs assignments optimized for use with serg74 "mini shield"
|
|
[env:esp32s2_PSRAM_M]
|
|
extends = esp32_4MB_V4_M_base
|
|
;; default tasmota platform
|
|
platform = ${esp32s2.platform}
|
|
platform_packages = ${esp32s2.platform_packages}
|
|
;; standard espressif platform (optional)
|
|
;; platform = ${esp32.platformV4}
|
|
;; platform_packages = ${esp32.platformV4_packages}
|
|
|
|
board = lolin_s2_mini
|
|
board_build.partitions = ${esp32.extended_partitions} ;; 1.65MB firmware, 700KB filesystem (esptool erase_flash needed when changing from "standard WLED" partitions)
|
|
board_build.flash_mode = dio
|
|
upload_speed = 256000 ;; 921600
|
|
build_unflags = ${common.build_unflags}
|
|
-DARDUINO_USB_CDC_ON_BOOT=1
|
|
-DARDUINO_USB_DFU_ON_BOOT=0
|
|
-D USERMOD_DALLASTEMPERATURE ;; disabled because it hangs during usermod setup on -S3 (autodetect broken?)
|
|
-D WLED_ENABLE_DMX ;; disabled because it does not work with ESP-IDF 4.4.x (buggy driver in SparkFunDMX)
|
|
-D WLED_ENABLE_DMX_INPUT ;; needs more testing
|
|
-D WLED_ENABLE_HUB75MATRIX
|
|
build_flags = ${common.build_flags} ${esp32s2.build_flags}
|
|
;; ${Debug_Flags.build_flags}
|
|
-D WLED_WATCHDOG_TIMEOUT=0 -D CONFIG_ASYNC_TCP_USE_WDT=0
|
|
${common_mm.build_flags_S} ${common_mm.build_flags_M}
|
|
-Wno-misleading-indentation -Wno-format-truncation
|
|
-D WLED_RELEASE_NAME=esp32s2_4MB_M
|
|
-DBOARD_HAS_PSRAM ;; -D WLED_USE_PSRAM
|
|
-D WLED_USE_PSRAM_JSON -DALL_JSON_TO_PSRAM ; WLEDMM --> force all JSON stuff into PSRAM; gives more free heap
|
|
-DLOLIN_WIFI_FIX -DWLEDMM_WIFI_POWERON_HACK ;; seems to work much better with this
|
|
-DARDUINO_USB_CDC_ON_BOOT=0 -DARDUINO_USB_MSC_ON_BOOT=0 -DARDUINO_USB_DFU_ON_BOOT=1
|
|
-D WLED_DISABLE_ADALIGHT ;; disables serial protocols, as the board only has CDC USB
|
|
-D WLED_DISABLE_INFRARED ;; save flash space
|
|
;;-D WLED_DISABLE_ALEXA ;; save flash space
|
|
;;-D WLED_DISABLE_HUESYNC ;; save flash space
|
|
;;-D WLED_DISABLE_LOXONE ;; save flash space
|
|
-D WLED_ENABLE_PIXART ;; 8KB Flash
|
|
-D WLED_ENABLE_PIXELFORGE ;; 12KB Flash
|
|
;;-D WLEDMM_SAVE_FLASH
|
|
-D AUDIOPIN=-1
|
|
-D BTNPIN=-1 -D IRPIN=-1
|
|
-D LEDPIN=16 ;; second led pin = 18
|
|
-D HW_PIN_SCL=35 -D HW_PIN_SDA=33
|
|
-D RLYPIN=9
|
|
;; -D HW_PIN_MOSISPI=11 -D HW_PIN_CLOCKSPI=7 -D HW_PIN_MISOSPI=9 ;; 9 already in use for RELAY, 7 for IR
|
|
-D SR_DMTYPE=1 -D I2S_SDPIN=34 -D I2S_CKPIN=14 -D I2S_WSPIN=17 -D MCLK_PIN=-1 ;; recommended for mini shield
|
|
;; -D FFTTASK_PRIORITY=2 ;; useful for testing FFT timing. reduces audio latency, but makes effects slower.
|
|
;; -D STATUSLED=15
|
|
-D WLED_USE_MY_CONFIG
|
|
lib_deps = ${esp32s2.lib_deps} ${common_mm.lib_deps_S} ${common_mm.lib_deps_V4_M}
|
|
lib_ignore =
|
|
IRremoteESP8266 ; use with WLED_DISABLE_INFRARED for faster compilation
|
|
OneWire ; not needed as we don't include USERMOD_DALLASTEMPERATURE
|
|
${common_mm.HUB75_lib_ignore}
|
|
${common_mm.DMXin_lib_ignore}
|
|
monitor_filters = esp32_exception_decoder
|
|
; RAM: [== ] 18.5% (used 60660 bytes from 327680 bytes)
|
|
; Flash: [======== ] 83.6% (used 1424518 bytes from 1703936 bytes)
|
|
|
|
[env:esp32s2_PSRAM_S]
|
|
extends = env:esp32s2_PSRAM_M
|
|
board_build.partitions = ${esp32.default_partitions} ;; 1.55MB firmware, 1MB filesystem
|
|
build_unflags = ${env:esp32s2_PSRAM_M.build_unflags}
|
|
-DWLED_DISABLE_ADALIGHT
|
|
-D WLED_RELEASE_NAME=esp32s2_4MB_M
|
|
-DUSE_ALT_DISPLAY
|
|
-DUSERMOD_FOUR_LINE_DISPLAY
|
|
-DUSERMOD_ROTARY_ENCODER_UI
|
|
-DUSERMOD_ANIMARTRIX
|
|
;; -DUSERMOD_ARTIFX ;; uncomment to reduce flash size
|
|
build_flags = ${env:esp32s2_PSRAM_M.build_flags}
|
|
-D WLED_RELEASE_NAME=esp32s2_4MB_S
|
|
lib_deps = ${env:esp32s2_PSRAM_M.lib_deps}
|
|
lib_ignore = ${env:esp32s2_PSRAM_M.lib_ignore}
|
|
U8g2
|
|
${common_mm.animartrix_lib_ignore}
|
|
; RAM: [== ] 18.1% (used 59176 bytes from 327680 bytes)
|
|
; Flash: [======== ] 81.0% (used 1273946 bytes from 1572864 bytes)
|
|
|
|
# ------------------------------------------------------------------------------
|
|
# esp32-C3 environments
|
|
# ------------------------------------------------------------------------------
|
|
|
|
|
|
;; MM environment for generic ESP32-C3 -> 4MB flash, qio mode, no PSRAM
|
|
[env:esp32c3dev_4MB_M]
|
|
extends = esp32_4MB_V4_S_base
|
|
;board_build.flash_mode = dout
|
|
platform = ${esp32c3.platform}
|
|
platform_packages = ${esp32c3.platform_packages}
|
|
board_build.flash_mode = qio
|
|
board = esp32-c3-devkitm-1
|
|
;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_2MB_noOTA.csv ;; use this for boards with 2MB flash (like some Ai-Thinker ESP32-C3-12F models)
|
|
upload_speed = 230400 ;; 460800 ;; 256000 ;; 921600
|
|
|
|
build_unflags = ${common.build_unflags}
|
|
-D USERMOD_DALLASTEMPERATURE ;; disabled because it hangs during usermod setup on -S2 (autodetect broken?)
|
|
-D USE_ALT_DISPLAY ;; four line display seems to have problems with I2C - it hangs during usermod setup
|
|
-D USERMOD_FOUR_LINE_DISPLAY ;; see above
|
|
-D USERMOD_ROTARY_ENCODER_UI ;; see above
|
|
-D WLED_ENABLE_DMX ;; disabled because it does not work with ESP-IDF 4.4.x (buggy driver in SparkFunDMX)
|
|
-D WLED_ENABLE_DMX_INPUT ;; needs more testing
|
|
;-D WLED_DEBUG_HOST='"192.168.x.x"' ;; to disable net print
|
|
${common_mm.animartrix_build_flags} ;; Tips our memory usage over the limit
|
|
-DUSERMOD_ARTIFX ;; over the limit
|
|
; -DWLED_ENABLE_FULL_FONTS ;; removing full unicode support saves 10KB of flash
|
|
|
|
build_flags = ${common.build_flags} ${esp32c3.build_flags}
|
|
; -D WLED_DISABLE_OTA ;; OTA is not possible for boards with 2MB flash only (like some Ai-Thinker ESP32-C3-12F models)
|
|
-D WLED_WATCHDOG_TIMEOUT=0 -D CONFIG_ASYNC_TCP_USE_WDT=0
|
|
${common_mm.build_flags_S} ${common_mm.build_flags_M}
|
|
-Wno-misleading-indentation -Wno-format-truncation
|
|
-D WLED_RELEASE_NAME=esp32c3dev_4MB_M
|
|
; -D WLED_DISABLE_BROWNOUT_DET
|
|
; -DARDUINO_USB_CDC_ON_BOOT=1 ;; enable CDC USB -> needed for debugging over serial USB
|
|
-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)
|
|
-DARDUINO_USB_CDC_ON_BOOT=0 ;; disable CDC USB
|
|
-D SERVERNAME='"WLED-C3"'
|
|
-D WLEDMM_WIFI_POWERON_HACK -DLOLIN_WIFI_FIX ;; use this _only_ if your device is not able to make a WiFI connection!
|
|
;-D WLED_DISABLE_INFRARED ;; save flash space
|
|
;-D WLED_DISABLE_ALEXA ;; save flash space
|
|
;-D WLEDMM_SAVE_FLASH
|
|
-D LEDPIN=8 ;; onboard neopixel 5x5 Matrix. Attach your own LEDs to GPIO 20
|
|
-D BTNPIN=9
|
|
; -D STATUSLED=10 ;; onboard LED
|
|
-D RLYPIN=-1 -D IRPIN=-1
|
|
;-D HW_PIN_SDA=0 -D HW_PIN_SCL=1 ;; for I2C Qwiic connector
|
|
-D SR_DMTYPE=1 -D I2S_SDPIN=5 -D I2S_WSPIN=6 -D I2S_CKPIN=4 -D MCLK_PIN=7
|
|
; -D WLED_USE_MY_CONFIG
|
|
;; -D WLED_DISABLE_PARTICLESYSTEM1D ;; exceeds flash size limit
|
|
;; -D WLED_DISABLE_PARTICLESYSTEM2D ;; exceeds flash size limit
|
|
-D WLED_ENABLE_PIXART ;; 8KB Flash
|
|
-D WLED_ENABLE_PIXELFORGE ;; 12KB Flash
|
|
lib_deps = ${esp32c3.lib_deps} ${common_mm.lib_deps_S} ${common_mm.lib_deps_V4_M}
|
|
lib_ignore =
|
|
;IRremoteESP8266 ; use with WLED_DISABLE_INFRARED for faster compilation
|
|
OneWire ; not needed as we don't include USERMOD_DALLASTEMPERATURE
|
|
U8g2 ; not needed as we don't include USERMOD_FOUR_LINE_DISPLAY
|
|
${common_mm.animartrix_lib_ignore} ;; Tips our memory usage over the limit
|
|
${esp32c3.lib_ignore}
|
|
; RAM: [== ] 22.1% (used 72408 bytes from 327680 bytes)
|
|
; Flash: [======== ] 83.5% (used 1313420 bytes from 1572864 bytes)
|
|
|
|
;; MM environment for ESP32-C3 "mini" and "super mini" -> flash mode "dio" instead of "qio" (see #101)
|
|
[env:esp32c3mini_dio_4MB_M]
|
|
extends = env:esp32c3dev_4MB_M
|
|
board = lolin_c3_mini
|
|
board_build.flash_mode = dio ;; some super-mini boards are unstable with "qio" mode
|
|
;; board_build.partitions = tools/WLED_ESP32_4MB_256KB_FS.csv ;; optional: 1.8MB firmware, 256KB filesystem (esptool erase_flash needed when changing from "standard WLED" partitions)
|
|
;;; replace WLED_RELEASE_NAME, disable CDC_ON_BOOT
|
|
build_unflags = ${env:esp32c3dev_4MB_M.build_unflags}
|
|
-DARDUINO_USB_CDC_ON_BOOT=1
|
|
-D WLED_RELEASE_NAME=esp32c3dev_4MB_M
|
|
build_flags = ${env:esp32c3dev_4MB_M.build_flags}
|
|
-DARDUINO_USB_CDC_ON_BOOT=0
|
|
-D WLED_RELEASE_NAME=esp32c3mini_dio_4MB_M
|
|
-D WLED_DISABLE_BROWNOUT_DET ;; the board only has a 500mA LDO, better to disable brownout detection
|
|
-D HW_PIN_SDA=0 -D HW_PIN_SCL=1 ;; avoid pin conflicts
|
|
; RAM: [== ] 22.0% (used 72240 bytes from 327680 bytes)
|
|
; Flash: [======== ] 83.4% (used 1311474 bytes from 1572864 bytes)
|
|
|
|
[env:esp32c3dev_2MB_M]
|
|
extends = env:esp32c3dev_4MB_M
|
|
board = lolin_c3_mini
|
|
;;; replace WLED_RELEASE_NAME, disable CDC_ON_BOOT
|
|
build_unflags = ${env:esp32c3dev_4MB_M.build_unflags}
|
|
;; -DWLED_ENABLE_FULL_FONTS ;; removing full unicode support saves 10KB of flash
|
|
-DARDUINO_USB_CDC_ON_BOOT=1
|
|
-D WLED_RELEASE_NAME=esp32c3dev_4MB_M
|
|
|
|
;;; 2MB Flash, no OTA
|
|
board_build.partitions = tools/WLED_ESP32_2MB_noOTA.csv
|
|
board_build.flash_mode = dio
|
|
board_upload.flash_size = 2MB
|
|
board_upload.maximum_size = 2097152
|
|
|
|
build_flags = ${env:esp32c3dev_4MB_M.build_flags}
|
|
-D WLED_WATCHDOG_TIMEOUT=0
|
|
-D WLED_DISABLE_OTA
|
|
; -DARDUINO_USB_CDC_ON_BOOT=1 ;; for virtual CDC USB
|
|
-DARDUINO_USB_CDC_ON_BOOT=0 ;; for serial-to-USB chip
|
|
-D WLED_RELEASE_NAME=esp32c3dev_2MB_M
|
|
-D WLED_DISABLE_BROWNOUT_DET ;; the board only has a 500mA LDO, better to disable brownout detection
|
|
; -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)
|
|
-D HW_PIN_SDA=0 -D HW_PIN_SCL=1 ;; avoid pin conflicts
|
|
;; -D WLED_DISABLE_PARTICLESYSTEM1D ;; exceeds flash size limit
|
|
;; -D WLED_DISABLE_PARTICLESYSTEM2D ;; exceeds flash size limit
|
|
; RAM: [== ] 21.5% (used 70296 bytes from 327680 bytes)
|
|
; Flash: [======== ] 82.5% (used 1297438 bytes from 1572864 bytes)
|
|
|
|
;; MM environment for "seeed xiao -C3" boards
|
|
[env:seeed_esp32c3_4MB_S]
|
|
extends = env:esp32c3dev_4MB_M
|
|
board = seeed_xiao_esp32c3
|
|
platform = ${esp32.platformV4_pre} ;; older espressif ESP-IDF v4.4.1 platform - seems to work better for seeed xiao board
|
|
platform_packages = ${esp32.platformV4_packages_pre}
|
|
board_build.flash_mode = dio
|
|
upload_speed = 460800
|
|
build_unflags = ${env:esp32c3dev_4MB_M.build_unflags}
|
|
-D WLED_ENABLE_HUB75MATRIX ;; not enough pins
|
|
-DARDUINO_USB_CDC_ON_BOOT=1 ;; hangs on boot
|
|
; -DWLED_ENABLE_FULL_FONTS ;; removing full unicode support saves 10KB of flash
|
|
build_flags = ${common.build_flags} ${esp32c3.build_flags}
|
|
-D WLED_WATCHDOG_TIMEOUT=0 -D CONFIG_ASYNC_TCP_USE_WDT=0
|
|
${common_mm.build_flags_S} -Wno-misleading-indentation -Wno-format-truncation
|
|
-D WLED_RELEASE_NAME=seeed_esp32c3_4MB_S
|
|
-DARDUINO_USB_CDC_ON_BOOT=0 ;; disable CDC USB, as the older framework has problems with it
|
|
-D WLED_DISABLE_ADALIGHT ;; to disable serial protocols when using CDC USB (Serial RX pin will receive junk commands, unless its pulled down by resistor)
|
|
-D WLED_DISABLE_INFRARED ;; save flash space
|
|
;-D WLED_DISABLE_ALEXA ;; save flash space
|
|
;-D WLED_DISABLE_HUESYNC ;; save flash space
|
|
;-D WLED_DISABLE_LOXONE ;; save flash space
|
|
;; -D WLED_DISABLE_PARTICLESYSTEM1D ;; exceeds flash size limit
|
|
;; -D WLED_DISABLE_PARTICLESYSTEM2D ;; exceeds flash size limit
|
|
;; -D WLEDMM_SAVE_FLASH
|
|
;-D WLEDMM_WIFI_POWERON_HACK -DLOLIN_WIFI_FIX ;; use this _only_ if your device is not able to make a WiFI connection!
|
|
-D LEDPIN=3 ;; attach your LEDs to GPIO3 aka "D1" / "A1"
|
|
-D BTNPIN=9
|
|
-D RLYPIN=-1 -D IRPIN=-1
|
|
-D SR_DMTYPE=1
|
|
-D I2S_SDPIN=5 -D I2S_WSPIN=6 -D I2S_CKPIN=4 -D MCLK_PIN=7
|
|
-D WLED_USE_MY_CONFIG
|
|
;-D WLED_DEBUG -D SR_DEBUG
|
|
lib_deps = ${esp32c3.lib_deps} ${common_mm.lib_deps_S}
|
|
lib_ignore =
|
|
IRremoteESP8266 ; use with WLED_DISABLE_INFRARED for faster compilation
|
|
${esp32c3.lib_ignore}
|
|
monitor_filters = esp32_exception_decoder
|
|
; RAM: [== ] 22.5% (used 73740 bytes from 327680 bytes)
|
|
; Flash: [==========] 96.3% (used 1515336 bytes from 1572864 bytes)
|
|
|
|
# ------------------------------------------------------------------------------
|
|
# 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
|
|
pinout_build_flags =
|
|
-D ABL_MILLIAMPS_DEFAULT=9500 ; Wemos max 10A
|
|
-D LEDPIN=16
|
|
-D RLYPIN=19
|
|
-D BTNPIN=17
|
|
-D IRPIN=18
|
|
-D AUDIOPIN=-1
|
|
-D TEMPERATURE_PIN=23
|
|
-D FLD_PIN_SCL=-1 -D FLD_PIN_SDA=-1 ; use global!
|
|
-D HW_PIN_SCL=22 -D HW_PIN_SDA=21
|
|
-D HW_PIN_CLOCKSPI=-1 -D HW_PIN_MOSISPI=-1 -D HW_PIN_MISOSPI=-1 ; WLEDMM: is now also default but just to show we didn't agree on wemos pins for spi yet
|
|
-D ENCODER_DT_PIN=35 -D ENCODER_CLK_PIN=39 -D ENCODER_SW_PIN=5 ; WLEDMM spec by @SERG74: use 35 and 39 instead of 18 and 19 (conflicts)
|
|
-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 = ${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]
|
|
extends = wemos_shield_esp32_4MB_M_base
|
|
build_flags = ${wemos_shield_esp32_4MB_M_base.build_flags} ${common_mm.build_flags_XL}
|
|
lib_deps = ${wemos_shield_esp32_4MB_M_base.lib_deps} ${common_mm.lib_deps_XL}
|
|
|
|
[env:wemos_shield_esp32_4MB_S]
|
|
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: [=== ] 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
|
|
build_flags = ${wemos_shield_esp32_4MB_M_base.build_flags} ${Shield_ICS4343x.build_flags}
|
|
-D WLED_RELEASE_NAME=wemos_shield_esp32_4MB_ICS4343x_M
|
|
; RAM: [== ] 24.4% (used 79820 bytes from 327680 bytes)
|
|
; Flash: [========= ] 88.6% (used 1393421 bytes from 1572864 bytes)
|
|
|
|
[env:wemos_shield_esp32_4MB_SPM1423_M]
|
|
extends = wemos_shield_esp32_4MB_M_base
|
|
build_flags = ${wemos_shield_esp32_4MB_M_base.build_flags} ${Shield_SPM1423.build_flags}
|
|
-D WLED_RELEASE_NAME=wemos_shield_esp32_4MB_SPM1423_M
|
|
; RAM: [== ] 24.4% (used 79820 bytes from 327680 bytes)
|
|
; Flash: [========= ] 88.6% (used 1393421 bytes from 1572864 bytes)
|
|
|
|
[env:wemos_shield_esp32_4MB_LineIn_M]
|
|
extends = wemos_shield_esp32_4MB_M_base
|
|
build_unflags = ${common.build_unflags} ${Shield_LineIn.build_unflags}
|
|
build_flags = ${wemos_shield_esp32_4MB_M_base.build_flags} ${Shield_LineIn.build_flags}
|
|
-D WLED_RELEASE_NAME=wemos_shield_esp32_4MB_LineIn_M
|
|
|
|
[env:wemos_shield_esp32_16MB_S]
|
|
extends = wemos_shield_esp32_4MB_S_base
|
|
build_flags = ${wemos_shield_esp32_4MB_S_base.build_flags}
|
|
-D WLED_RELEASE_NAME=wemos_shield_esp32_16MB_S
|
|
board = esp32_16MB
|
|
;board_build.partitions = tools/WLED_ESP32_16MB.csv ;; WLED standard for 16MB flash: 2MB firmware, 12 MB filesystem
|
|
board_build.partitions = ${esp32.extreme_partitions} ;; WLED extended for 16MB flash: 3.2MB firmware, 9 MB filesystem
|
|
|
|
[env:wemos_shield_esp32_16MB_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_16MB_M
|
|
board = esp32_16MB
|
|
;board_build.partitions = tools/WLED_ESP32_16MB.csv ;; WLED standard for 16MB flash: 2MB firmware, 12 MB filesystem
|
|
board_build.partitions = ${esp32.extreme_partitions} ;; WLED extended for 16MB flash: 3.2MB firmware, 9 MB filesystem
|
|
;board_build.flash_mode = qio
|
|
; RAM: [== ] 24.4% (used 79820 bytes from 327680 bytes)
|
|
; Flash: [======= ] 66.4% (used 1393421 bytes from 2097152 bytes)
|
|
|
|
[env:wemos_shield_esp32_16MB_ICS4343x_M]
|
|
extends = wemos_shield_esp32_4MB_M_base
|
|
build_flags = ${wemos_shield_esp32_4MB_M_base.build_flags} ${Shield_ICS4343x.build_flags}
|
|
-D WLED_RELEASE_NAME=wemos_shield_esp32_16MB_ICS4343x_M
|
|
board = esp32_16MB
|
|
board_build.partitions = tools/WLED_ESP32_16MB.csv
|
|
; RAM: [== ] 24.4% (used 79820 bytes from 327680 bytes)
|
|
; Flash: [========= ] 88.6% (used 1393421 bytes from 1572864 bytes)
|
|
|
|
[env:wemos_shield_esp32_16MB_ICS4343x_XL]
|
|
extends = wemos_shield_esp32_4MB_XL_base
|
|
build_flags = ${wemos_shield_esp32_4MB_XL_base.build_flags} ${Shield_ICS4343x.build_flags}
|
|
-D WLED_RELEASE_NAME=wemos_shield_esp32_16MB_ICS4343x_XL
|
|
board = esp32_16MB
|
|
;board_build.partitions = tools/WLED_ESP32_16MB.csv ;; WLED standard for 16MB flash: 2MB firmware, 12 MB filesystem
|
|
board_build.partitions = ${esp32.extreme_partitions} ;; WLED extended for 16MB flash: 3.2MB firmware, 9 MB filesystem
|
|
; RAM: [== ] 24.4% (used 80044 bytes from 327680 bytes)
|
|
; Flash: [======= ] 67.9% (used 1424185 bytes from 2097152 bytes)
|
|
|
|
[env:wemos_shield_esp32_16MB_SPM1423_M]
|
|
extends = wemos_shield_esp32_4MB_M_base
|
|
build_flags = ${wemos_shield_esp32_4MB_M_base.build_flags} ${Shield_SPM1423.build_flags}
|
|
-D WLED_RELEASE_NAME=wemos_shield_esp32_16MB_SPM1423_M
|
|
board = esp32_16MB
|
|
;board_build.partitions = tools/WLED_ESP32_16MB.csv ;; WLED standard for 16MB flash: 2MB firmware, 12 MB filesystem
|
|
board_build.partitions = ${esp32.extreme_partitions} ;; WLED extended for 16MB flash: 3.2MB firmware, 9 MB filesystem
|
|
; RAM: [== ] 24.4% (used 79820 bytes from 327680 bytes)
|
|
; Flash: [========= ] 88.6% (used 1393421 bytes from 1572864 bytes)
|
|
|
|
[env:wemos_shield_esp32_16MB_SPM1423_XL]
|
|
extends = wemos_shield_esp32_4MB_XL_base
|
|
build_flags = ${wemos_shield_esp32_4MB_XL_base.build_flags} ${Shield_SPM1423.build_flags}
|
|
-D WLED_RELEASE_NAME=wemos_shield_esp32_16MB_SPM1423_XL
|
|
board = esp32_16MB
|
|
;board_build.partitions = tools/WLED_ESP32_16MB.csv ;; WLED standard for 16MB flash: 2MB firmware, 12 MB filesystem
|
|
board_build.partitions = ${esp32.extreme_partitions} ;; WLED extended for 16MB flash: 3.2MB firmware, 9 MB filesystem
|
|
; RAM: [== ] 24.4% (used 79820 bytes from 327680 bytes)
|
|
; Flash: [========= ] 88.6% (used 1393421 bytes from 1572864 bytes)
|
|
|
|
[env:wemos_shield_esp32_16MB_LineIn_M]
|
|
extends = wemos_shield_esp32_4MB_M_base
|
|
build_unflags = ${common.build_unflags} ${Shield_LineIn.build_unflags}
|
|
build_flags = ${wemos_shield_esp32_4MB_M_base.build_flags} ${Shield_LineIn.build_flags}
|
|
-D WLED_RELEASE_NAME=wemos_shield_esp32_16MB_LineIn_M
|
|
board = esp32_16MB
|
|
;board_build.partitions = tools/WLED_ESP32_16MB.csv ;; WLED standard for 16MB flash: 2MB firmware, 12 MB filesystem
|
|
board_build.partitions = ${esp32.extreme_partitions} ;; 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
|
|
;; "V3" build environment
|
|
[env:athom_music_esp32_4MB_M]
|
|
extends = esp32_4MB_M_base
|
|
build_unflags = ${esp32_legacy.build_unflags}
|
|
${common_mm.animartrix_build_flags} ;; exceeds flash limits in V3 builds
|
|
-D USERMOD_ARTIFX ;; disabled to save some program space in flash
|
|
-D USERMOD_DALLASTEMPERATURE ;; disabled - flash space is too tight for this
|
|
-D USERMOD_ROTARY_ENCODER_UI ;; see above
|
|
${common_mm.DMXin_build_flags}
|
|
build_flags = ${esp32_4MB_M_base.build_flags}
|
|
${Athom_PDMmic.build_flags}
|
|
-D WLED_AP_SSID_UNIQUE
|
|
-D WLED_RELEASE_NAME=athom_music_esp32_4MB_M
|
|
-D ABL_MILLIAMPS_DEFAULT=14500 ; max 15A
|
|
; -D WLED_DISABLE_MQTT
|
|
-D WLED_DISABLE_LOXONE
|
|
-D WLED_DISABLE_ADALIGHT ;to get 4ld working
|
|
-D BTNPIN=0 -D RLYPIN=2 -D IRPIN=25 -D IRTYPE=9 -D LEDPIN=18
|
|
-D AUDIOPIN=-1
|
|
; -D TEMPERATURE_PIN=23
|
|
-D FLD_PIN_SCL=-1 -D FLD_PIN_SDA=-1 ; use global!
|
|
-D HW_PIN_SCL=3 -D HW_PIN_SDA=1 ;4ld uses rx and tx
|
|
-D HW_PIN_CLOCKSPI=-1 -D HW_PIN_MOSISPI=-1 -D HW_PIN_MISOSPI=-1 ; WLEDMM: is now also default but just to show we didn't agree on wemos pins for spi yet
|
|
; -D ENCODER_DT_PIN=35 -D ENCODER_CLK_PIN=39 -D ENCODER_SW_PIN=5 ; WLEDMM spec by @SERG74: use 35 and 39 instead of 18 and 19 (conflicts)
|
|
; -D PIR_SENSOR_PIN=-1
|
|
; -D PWM_PIN=-1
|
|
; -D WLED_USE_MY_CONFIG
|
|
; -D WLED_ENABLE_PIXART ;; 8KB Flash
|
|
-D WLED_ENABLE_PIXELFORGE ;; 12KB Flash
|
|
-D WLEDMM_SAVE_FLASH ;; -7KB Flash
|
|
lib_ignore = ${esp32_4MB_M_base.lib_ignore}
|
|
${common_mm.DMXin_lib_ignore}
|
|
; RAM: [== ] 24.2% (used 79420 bytes from 327680 bytes)
|
|
; Flash: [==========] 96.2% (used 1513633 bytes from 1572864 bytes)
|
|
|
|
;; "V4" build environment (tasmota core)
|
|
[env:athom_music_esp32_4MB_V4_M]
|
|
extends = esp32_4MB_V4_M_base
|
|
platform = ${esp32.platform} ;; "V4" tasmota
|
|
platform_packages = ${esp32.platform_packages}
|
|
build_unflags = ${esp32_4MB_V4_M_base.build_unflags} ;; ${common_mm.build_disable_sync_interfaces}
|
|
${common_mm.animartrix_build_flags} ;; exceeds flash limits, no pins for HUB75
|
|
; -D USERMOD_ARTIFX ;; disabled to save some program space in flash
|
|
-D USERMOD_DALLASTEMPERATURE ;; disabled - flash space is too tight for this
|
|
-D USERMOD_ROTARY_ENCODER_UI ;; see above
|
|
-D WLED_DISABLE_ALEXA
|
|
-D WLED_DISABLE_MQTT
|
|
-D WLED_DISABLE_LOXONE
|
|
-D WLED_DISABLE_HUESYNC
|
|
-D WLED_DISABLE_INFRARED
|
|
${common_mm.DMXin_build_flags}
|
|
build_flags = ${esp32_4MB_V4_M_base.esp32_build_flags}
|
|
${Athom_PDMmic.build_flags}
|
|
-D WLED_AP_SSID_UNIQUE
|
|
-D WLED_RELEASE_NAME=athom_music_esp32_4MB_V4_M
|
|
-D ABL_MILLIAMPS_DEFAULT=14500 ; max 15A
|
|
; -D WLED_DISABLE_MQTT
|
|
; -D WLED_DISABLE_LOXONE
|
|
-D WLED_DISABLE_ADALIGHT ;to get 4ld working
|
|
-D BTNPIN=0 -D RLYPIN=2 -D IRPIN=25 -D IRTYPE=9 -D LEDPIN=18
|
|
-D AUDIOPIN=-1
|
|
; -D TEMPERATURE_PIN=23
|
|
-D FLD_PIN_SCL=-1 -D FLD_PIN_SDA=-1 ; use global!
|
|
-D HW_PIN_SCL=3 -D HW_PIN_SDA=1 ;4ld uses rx and tx
|
|
-D HW_PIN_CLOCKSPI=-1 -D HW_PIN_MOSISPI=-1 -D HW_PIN_MISOSPI=-1 ; WLEDMM: is now also default but just to show we didn't agree on wemos pins for spi yet
|
|
; -D ENCODER_DT_PIN=35 -D ENCODER_CLK_PIN=39 -D ENCODER_SW_PIN=5 ; WLEDMM spec by @SERG74: use 35 and 39 instead of 18 and 19 (conflicts)
|
|
; -D PIR_SENSOR_PIN=-1
|
|
; -D PWM_PIN=-1
|
|
; -D WLED_USE_MY_CONFIG
|
|
-D WLED_ENABLE_PIXART ;; 8KB Flash
|
|
-D WLED_ENABLE_PIXELFORGE ;; 12KB Flash
|
|
lib_deps = ${esp32_4MB_V4_M_base.esp32_lib_deps}
|
|
lib_ignore =
|
|
${common_mm.DMXin_lib_ignore}
|
|
; RAM: [== ] 24.0% (used 78568 bytes from 327680 bytes)
|
|
; Flash: [======== ] 82.3% (used 1402341 bytes from 1703936 bytes)
|
|
|
|
|
|
;https://shop.myhome-control.de/Elektronik/
|
|
;; "V3" build environment
|
|
[env:abc_wled_controller_v43_S]
|
|
extends = esp32_4MB_S_base
|
|
build_unflags = ${esp32_4MB_S_base.build_unflags} ${common_mm.build_disable_sync_interfaces}
|
|
build_flags = ${esp32_4MB_S_base.build_flags}
|
|
-D WLED_RELEASE_NAME=abc_wled_controller_v43_S
|
|
-D LEDPIN=16
|
|
-D ABL_MILLIAMPS_DEFAULT=5000 ; 5A default. Max 13A depending on the wires connected
|
|
-D WLED_USE_ETHERNET
|
|
-D WLED_ETH_DEFAULT=9 ; ABC! WLED V43 & compatible
|
|
-D RLYPIN=-1 -D BTNPIN=-1 ;; Prevent clash
|
|
-D WLED_DISABLE_ESPNOW ;; ESP-NOW requires wifi, may crash with ethernet only
|
|
-D WLED_ENABLE_PIXART ;; 8KB Flash
|
|
-D WLED_ENABLE_PIXELFORGE ;; 12KB Flash
|
|
-D AUDIOPIN=-1
|
|
-D FLD_PIN_SCL=-1 -D FLD_PIN_SDA=-1 ; use global!
|
|
; -D WLED_USE_MY_CONFIG
|
|
-D SR_DMTYPE=4 -D I2S_SDPIN=32 -D I2S_WSPIN=15 -D I2S_CKPIN=14 -D MCLK_PIN=0 ; generic i2s with mclk 0
|
|
-D SR_SQUELCH=1 -D SR_GAIN=60 ; increrase squelch if noise, in test 0 is okay, but only slightly
|
|
-D SR_FREQ_PROF=1 ; Generic line in
|
|
; RAM: [== ] 24.2% (used 79452 bytes from 327680 bytes)
|
|
; Flash: [========= ] 94.8% (used 1490405 bytes from 1572864 bytes)
|
|
|
|
;; "V4" build environment (tasmota core)
|
|
[env:abc_wled_controller_v43_V4_S]
|
|
extends = esp32_4MB_V4_S_base
|
|
platform = ${esp32.platform} ;; "V4" tasmota
|
|
platform_packages = ${esp32.platform_packages}
|
|
build_unflags = ${esp32_4MB_V4_S_base.build_unflags} ;; ${common_mm.build_disable_sync_interfaces}
|
|
build_flags = ${esp32_4MB_V4_S_base.esp32_build_flags}
|
|
-D WLED_RELEASE_NAME=abc_wled_controller_v43_V4_S
|
|
-D LEDPIN=16
|
|
-D ABL_MILLIAMPS_DEFAULT=5000 ; 5A default. Max 13A depending on the wires connected
|
|
-D WLED_USE_ETHERNET
|
|
-D WLED_ETH_DEFAULT=9 ; ABC! WLED V43 & compatible
|
|
-D RLYPIN=-1 -D BTNPIN=-1 ;; Prevent clash
|
|
-D WLED_DISABLE_ESPNOW ;; ESP-NOW requires wifi, may crash with ethernet only
|
|
-D WLED_ENABLE_PIXART ;; 8KB Flash
|
|
-D WLED_ENABLE_PIXELFORGE ;; 12KB Flash
|
|
;-D WLEDMM_SAVE_FLASH ;; -7KB Flash
|
|
-D AUDIOPIN=-1
|
|
-D FLD_PIN_SCL=-1 -D FLD_PIN_SDA=-1 ; use global!
|
|
; -D WLED_USE_MY_CONFIG
|
|
-D SR_DMTYPE=4 -D I2S_SDPIN=32 -D I2S_WSPIN=15 -D I2S_CKPIN=14 -D MCLK_PIN=0 ; generic i2s with mclk 0
|
|
-D SR_SQUELCH=1 -D SR_GAIN=60 ; increrase squelch if noise, in test 0 is okay, but only slightly
|
|
-D SR_FREQ_PROF=1 ; Generic line in
|
|
lib_deps = ${esp32_4MB_V4_S_base.esp32_lib_deps}
|
|
lib_ignore =
|
|
${common_mm.HUB75_lib_ignore}
|
|
; RAM: [== ] 23.8% (used 77864 bytes from 327680 bytes)
|
|
; Flash: [======== ] 78.3% (used 1334161 bytes from 1703936 bytes)
|
|
|
|
|
|
; ESP32 WLED pico board with builtin ICS-43432 microphpone
|
|
[env:esp32_pico_4MB_M]
|
|
extends = esp32_4MB_M_base
|
|
board = pico32
|
|
board_build.flash_mode = dio ;; (dout = dual out; more compatible than qio = quad i/o)
|
|
upload_speed = 256000 ;; or 115200 ;; or 460800 ; or 921600 (slower speeds are better when flashing without a soldered connection)
|
|
|
|
build_flags = ${esp32_4MB_M_base.build_flags}
|
|
-D WLED_RELEASE_NAME=esp32_pico_4MB_M
|
|
-D WLED_DISABLE_BROWNOUT_DET
|
|
-D SERVERNAME='"WLED-pico32"'
|
|
; -D WLED_WATCHDOG_TIMEOUT=60
|
|
-D WLED_DISABLE_ADALIGHT ;; WLEDMM this board does not have a serial-to-USB chip. Better to disable serial protocols, to avoid crashes (see upstream #3128)
|
|
; -D WLED_DEBUG
|
|
; -D SR_DEBUG
|
|
-D LEDPIN=2
|
|
-D RLYPIN=19
|
|
-D BTNPIN=0
|
|
-D IRPIN=-1 -D TEMPERATURE_PIN=-1 ;; no default pins for IR, DallasTemp
|
|
-D ENCODER_DT_PIN=-1 -D ENCODER_CLK_PIN=-1 -D ENCODER_SW_PIN=-1 ;; no default pins for Rotary
|
|
-D HW_PIN_SCL=22 -D HW_PIN_SDA=21
|
|
-D SR_DMTYPE=1 -D I2S_SDPIN=25 -D I2S_WSPIN=15 -D I2S_CKPIN=14
|
|
-D SR_SQUELCH=5 -D SR_GAIN=30 -D SR_FREQ_PROF=5 ;; ICS-4343x specific
|
|
; -D MCLK_PIN=0
|
|
-D SR_ENABLE_DEFAULT ;; enable at first start - no need to manually set "enable", then reboot
|
|
; -D WLED_USE_MY_CONFIG
|
|
-D WLED_DISABLE_LOXONE ;; exceeds flash size limits
|
|
; -D WLED_DISABLE_ALEXA
|
|
; -D WLED_DISABLE_HUESYNC
|
|
; -D WLED_DISABLE_MQTT
|
|
; -D WLED_DISABLE_INFRARED
|
|
; -D WLED_ENABLE_DMX
|
|
-D WLEDMM_SAVE_FLASH
|
|
-D WLED_DISABLE_ESPNOW ;; might help in case of WiFi connectivity problems
|
|
-D WLED_DISABLE_PARTICLESYSTEM1D ;; exceeds flash size limit
|
|
; -D WLED_ENABLE_PIXART ;; 8KB Flash
|
|
; -D WLED_ENABLE_PIXELFORGE ;; 12KB Flash
|
|
;; -D WLED_DISABLE_PARTICLESYSTEM2D
|
|
; RAM: [== ] 24.2% (used 79424 bytes from 327680 bytes)
|
|
; Flash: [==========] 99.9% (used 1571177 bytes from 1572864 bytes)
|
|
|
|
;; experimental
|
|
;; PICO environment with ESP-IDF v4.4.4 / arduino-esp32 v2.0.9
|
|
[env:esp32_pico_4MB_V4_S]
|
|
extends = esp32_4MB_V4_S_base
|
|
board = pico32
|
|
upload_speed = 256000 ;; or 115200 ;; or 460800 ; or 921600 (slower speeds are better when flashing without a soldered connection)
|
|
|
|
build_unflags = ${esp32_4MB_V4_S_base.build_unflags}
|
|
-D WLED_ENABLE_HUB75MATRIX ;; not enough pins
|
|
${common_mm.DMXin_build_flags} ;; board is too small, no pins
|
|
build_flags = ${esp32_4MB_V4_S_base.esp32_build_flags}
|
|
-D ARDUINO_USB_CDC_ON_BOOT=0 ; needed for arduino-esp32 >=2.0.4; avoids errors on startup
|
|
-D WLED_RELEASE_NAME=esp32_pico_4MB_V4_S
|
|
-D WLED_DISABLE_BROWNOUT_DET
|
|
-D SERVERNAME='"WLED-pico32-V4"'
|
|
-D WLED_WATCHDOG_TIMEOUT=0
|
|
; -D WLED_WATCHDOG_TIMEOUT=60
|
|
-D WLED_DISABLE_ADALIGHT ;; WLEDMM this board does not have a serial-to-USB chip. Better to disable serial protocols, to avoid crashes (see upstream #3128)
|
|
${common_mm.NetDebug_build_flags} ;; net debug is not included in normal _S builds
|
|
; -D WLED_DEBUG
|
|
; -D SR_DEBUG
|
|
-D LEDPIN=2
|
|
-D RLYPIN=-1 -D BTNPIN=-1 -D IRPIN=-1
|
|
-D HW_PIN_SCL=22 -D HW_PIN_SDA=21
|
|
-D SR_DMTYPE=1 -D I2S_SDPIN=25 -D I2S_WSPIN=15 -D I2S_CKPIN=14
|
|
-D SR_SQUELCH=5 -D SR_GAIN=30 -D SR_FREQ_PROF=5 ; ICS-4343x specific
|
|
; -D MCLK_PIN=0
|
|
-D SR_ENABLE_DEFAULT ;; enable audioreactive at first start - no need to manually set "enable", then reboot
|
|
; -D WLED_USE_MY_CONFIG
|
|
-D WLEDMM_SAVE_FLASH
|
|
-D WLED_DISABLE_ESPNOW ;; might help in case of WiFi connectivity problems
|
|
;;-D WLED_DISABLE_PARTICLESYSTEM1D ;; exceeds flash size limit (default_partitions only)
|
|
;;-D WLED_DISABLE_PARTICLESYSTEM2D ;; exceeds flash size limit (default_partitions only)
|
|
-D WLED_ENABLE_PIXART ;; 8KB Flash
|
|
-D WLED_ENABLE_PIXELFORGE ;; 12KB Flash
|
|
lib_deps = ${esp32_4MB_V4_S_base.esp32_lib_deps}
|
|
lib_ignore =
|
|
IRremoteESP8266 ; use with WLED_DISABLE_INFRARED for faster compilation
|
|
${common_mm.HUB75_lib_ignore}
|
|
${common_mm.DMXin_lib_ignore}
|
|
; RAM: [=== ] 26.0% (used 85100 bytes from 327680 bytes)
|
|
; Flash: [========= ] 90.0% (used 1534269 bytes from 1703936 bytes)
|
|
|
|
[env:adafruit_matrixportal_esp32s3_wled]
|
|
; ESP32-S3 processor, 8 MB flash, 2 MB of PSRAM, dedicated driver pins for HUB75
|
|
extends = esp32_4MB_V4_M_base
|
|
platform = ${esp32.platformV4_xp} ;; 6.5.0 = first platform release supporting matrixportal
|
|
platform_packages = ${esp32.platformV4_packages_xp} ;; arduino-esp32 2.0.14 needed - previous versions were missing files for matrixportal
|
|
board = adafruit_matrixportal_esp32s3_wled
|
|
|
|
board_build.partitions = ${esp32.large_partitions} ;; default 8MB WLED partitions
|
|
;; board_build.f_flash = 80000000L ;; this is the default for board = adafruit_matrixportal_esp32s3
|
|
;; board_build.flash_mode = qio ;; ditto
|
|
|
|
build_unflags = ${env:esp32S3_8MB_M.build_unflags} ;; use the same as "normal" S3 buildenv
|
|
-D ARDUINO_USB_CDC_ON_BOOT=1 ;; fix warning: "ARDUINO_USB_CDC_ON_BOOT" redefined; comment out for Serial debug
|
|
${Speed_Flags.build_unflags} ;; to override -Os
|
|
build_flags = ${common.build_flags} ${esp32s3.build_flags} -Wno-misleading-indentation -Wno-format-truncation
|
|
${common_mm.build_flags_S}
|
|
${Speed_Flags.build_flags_V4} ;; -O2 -> optimize for speed instead of size
|
|
-D WLED_RELEASE_NAME=matrixportal_esp32s3
|
|
-D SERVERNAME='"WLED-MatrixPortalS3"'
|
|
; 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
|
|
-D ARDUINO_USB_CDC_ON_BOOT=0
|
|
-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)
|
|
${common_mm.animartrix_build_flags}
|
|
${common_mm.build_disable_sync_interfaces}
|
|
-D WLED_ENABLE_PIXART ;; 8KB Flash
|
|
-D WLED_ENABLE_PIXELFORGE ;; 12KB Flash
|
|
-D LOLIN_WIFI_FIX ;; try this in case Wifi does not work
|
|
-D WLED_WATCHDOG_TIMEOUT=0 -D CONFIG_ASYNC_TCP_USE_WDT=0
|
|
-D WLED_USE_PSRAM -DBOARD_HAS_PSRAM ; tells WLED that PSRAM shall be used
|
|
-D WLED_USE_PSRAM_JSON -DALL_JSON_TO_PSRAM ; WLEDMM --> force all JSON stuff into PSRAM; gives more free heap
|
|
; -DCONFIG_MBEDTLS_DYNAMIC_BUFFER=1 ;; optional - seems to move more buffers into PSRAM
|
|
${common_mm.HUB75_build_flags}
|
|
-D DEFAULT_LED_TYPE=101
|
|
lib_deps = ${esp32s3.lib_deps} ${common_mm.lib_deps_S} ;; ;; do not include ${esp32.lib_depsV4} !!!!
|
|
${common_mm.animartrix_lib_deps}
|
|
${common_mm.HUB75_lib_deps}
|
|
|
|
lib_ignore = IRremoteESP8266 ; use with WLED_DISABLE_INFRARED for faster compilation
|
|
monitor_filters = esp32_exception_decoder
|
|
;
|
|
; RAM: [== ] 18.4% (used 60456 bytes from 327680 bytes)
|
|
; Flash: [======== ] 79.9% (used 1675601 bytes from 2097152 bytes)
|
|
|
|
;; this buildenv uses the original bootloader and partions from adafruit
|
|
[env:adafruit_matrixportal_esp32s3_tinyUF2]
|
|
extends = env:adafruit_matrixportal_esp32s3_wled
|
|
board_build.partitions = tools/partitions-8MB_spiffs-tinyuf2.csv ;; use original adafruit 8MB tinyUF2 partitioning
|
|
;; we just replace WLED_RELEASE_NAME
|
|
build_unflags = ${env:adafruit_matrixportal_esp32s3_wled.build_unflags}
|
|
-D WLED_RELEASE_NAME=matrixportal_esp32s3
|
|
build_flags = ${env:adafruit_matrixportal_esp32s3_wled.build_flags}
|
|
-D WLED_RELEASE_NAME=matrixportal_esp32s3_tinyUF2
|
|
;
|
|
; RAM: [== ] 18.4% (used 60456 bytes from 327680 bytes)
|
|
; Flash: [======== ] 79.9% (used 1675601 bytes from 2097152 bytes)
|
|
|
|
[env:adafruit_matrixportal_esp32s3]
|
|
;; this buildenv is just an alias for the matrixportal UF2 build, to keep 3rd party build tools happy.
|
|
extends = env:adafruit_matrixportal_esp32s3_wled
|