Files
WLED_MM_Infinity/platformio.ini
Frank 1406d2546b post-merge
merging upstream changes to esp32c3 with our own version for -C3
2023-01-10 22:18:19 +01:00

1234 lines
50 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)
# ------------------------------------------------------------------------------
# Release / CI binaries
; default_envs = nodemcuv2, esp8266_2m, esp01_1m_full, esp32dev, esp32_eth, esp32s2_saola, esp32c3, 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 = m5atom
; default_envs = esp32_eth
; default_envs = esp32dev_qio80
; default_envs = esp32_eth_ota1mapp
; default_envs = esp32s2_saola
; MoonModules entries
; ===================
default_envs =
esp32_4MB_max ; recommended default
esp32_4MB_all
esp32_16MB_max
esp32_16MB_all
esp8266_4MB_min
esp32_4MB_PSRAM_max
esp32S3_8MB_max
wemos_shield_esp32_4MB_max
wemos_shield_esp32_4MB_ICS4343x_max
wemos_shield_esp32_4MB_SPM1423_max
wemos_shield_esp32_4MB_LineIn_max
wemos_shield_esp32_16MB_max
wemos_shield_esp32_16MB_ICS4343x_max
wemos_shield_esp32_16MB_SPM1423_max
wemos_shield_esp32_16MB_SPM1423_all
wemos_shield_esp32_16MB_LineIn_max
esp32_pico_4MB_max
esp32s2_tinyUF2_PSRAM_max
src_dir = ./wled00
data_dir = ./wled00/data
build_cache_dir = ~/.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_2_6_3 = espressif8266@2.3.3
arduino_core_2_7_4 = espressif8266@2.6.2
arduino_core_3_0_0 = espressif8266@3.0.0
arduino_core_3_2_0 = espressif8266@3.2.0
# 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_2_0}
# We use 2.7.4.7 for all, includes PWM flicker fix and Wstring optimization
platform_packages = tasmota/framework-arduinoespressif8266 @ 3.20704.7
platformio/toolchain-xtensa @ ~2.40802.200502
platformio/tool-esptool @ ~1.413.0
platformio/tool-esptoolpy @ ~1.30000.0
# ------------------------------------------------------------------------------
# FLAGS: DEBUG
#
# ------------------------------------------------------------------------------
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
#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 =
-DMQTT_MAX_PACKET_SIZE=1024
-DSECURE_CLIENT=SECURE_CLIENT_BEARSSL
-DBEARSSL_SSL_BASIC
-D CORE_DEBUG_LEVEL=0
-D NDEBUG
#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 DECODE_RC5=true
; -Dregister= # remove warnings in C++17 due to use of deprecated register keyword by the FastLED library
-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.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
[scripts_defaults]
extra_scripts =
pre:pio-scripts/set_version.py
post:pio-scripts/output_bins.py
post:pio-scripts/strip-floats.py
pre:pio-scripts/user_config_copy.py
# ------------------------------------------------------------------------------
# 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 changd) in the source:
# ArduinoJson@5.13.5, Blynk@0.5.4(changed), E131@1.0.0(changed), Time@1.5, Timezone@1.2.1
# ------------------------------------------------------------------------------
lib_compat_mode = strict
lib_deps =
fastled/FastLED @ 3.5.0
IRremoteESP8266 @ 2.8.2
https://github.com/Aircoookie/ESPAsyncWebServer.git @ ~2.0.7
#For use of the TTGO T-Display ESP32 Module with integrated TFT display uncomment the following line
#TFT_eSPI
#For use SSD1306 OLED display uncomment following
#U8g2@~2.28.8
#U8g2@~2.32.10
#For Dallas sensor uncomment following 2 lines
#OneWire@~2.3.5
#milesburton/DallasTemperature@^3.9.0
#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_flags =
-DESP8266
-DFP_IN_IROM
;-Wno-deprecated-declarations
;-Wno-register
;-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
lib_deps =
${env.lib_deps}
#https://github.com/lorol/LITTLEFS.git
ESPAsyncTCP @ 1.2.2
ESPAsyncUDP
makuna/NeoPixelBus @ 2.6.9
[esp32]
#platform = https://github.com/tasmota/platform-espressif32/releases/download/v2.0.2.3/platform-espressif32-2.0.2.3.zip
platform = espressif32@3.5.0
platform_packages = framework-arduinoespressif32 @ https://github.com/Aircoookie/arduino-esp32.git#1.0.6.4
build_flags = -g
-DARDUINO_ARCH_ESP32 -DESP32
#-DCONFIG_LITTLEFS_FOR_IDF_3_2
-D CONFIG_ASYNC_TCP_USE_WDT=0
#use LITTLEFS library by lorol in ESP32 core 1.x.x instead of built-in in 2.x.x
-D LOROL_LITTLEFS
; -DARDUINO_USB_CDC_ON_BOOT=0 ;; this flag is mandatory for "classic ESP32" when builing with arduino-esp32 >=2.0.3
default_partitions = tools/WLED_ESP32_4MB_1MB_FS.csv
lib_deps =
${env.lib_deps}
; https://github.com/lorol/LITTLEFS.git
; WLEDMM specific: use patched version of lorol LittleFS
https://github.com/softhack007/LITTLEFS-threadsafe.git#master
makuna/NeoPixelBus @ 2.6.9
https://github.com/pbolduc/AsyncTCP.git @ 1.2.0
;; ** For compiling with latest Frameworks (IDF4.4.x and arduino-esp32 v2.0.x) **
;;; standard platform
platformV4 = espressif32@ ~5.1.1
platformV4_packages = platformio/framework-arduinoespressif32@ ~3.20004.0
;;; tasmota platform
;platformV4 = https://github.com/tasmota/platform-espressif32/releases/download/v2.0.5.1/platform-espressif32-2.0.5.1.zip
;platformV4_packages =
;;; V4.4.x build flags (without LOROL_LITTLEFS)
build_flagsV4 = -g
-DARDUINO_ARCH_ESP32 -DESP32
-DCONFIG_LITTLEFS_FOR_IDF_3_2 -DLFS_THREADSAFE
-D CONFIG_ASYNC_TCP_USE_WDT=0
; -DARDUINO_USB_CDC_ON_BOOT=0 ;; mandatory for "classic ESP32" when builing with arduino-esp32 >=2.0.3
;;; V4.4.x libraries (without LOROL_LITTLEFS; with newer NeoPixelBus)
lib_depsV4 =
${env.lib_deps}
;https://github.com/Makuna/NeoPixelBus.git#master ;; NPB 2.6.9 tends to crash whith IDF V4.4.3 -> use latest NeoPixelBus dev instead
makuna/NeoPixelBus @ 2.7.1
https://github.com/pbolduc/AsyncTCP.git @ 1.2.0
[esp32s2]
build_flags = -g
-DARDUINO_ARCH_ESP32
-DARDUINO_ARCH_ESP32S2
-DCONFIG_IDF_TARGET_ESP32S2
-D CONFIG_ASYNC_TCP_USE_WDT=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, ARDUINO_USB_MSC_ON_BOOT, ARDUINO_USB_DFU_ON_BOOT
lib_deps =
${env.lib_deps}
makuna/NeoPixelBus @ 2.7.1 ;; WLEDMM - new version is more stable on -S2
https://github.com/pbolduc/AsyncTCP.git @ 1.2.0
[esp32c3]
build_flags = -g
-DARDUINO_ARCH_ESP32
-DARDUINO_ARCH_ESP32C3
-DCONFIG_IDF_TARGET_ESP32C3
-D CONFIG_ASYNC_TCP_USE_WDT=0
-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
lib_deps =
${env.lib_deps}
makuna/NeoPixelBus @ 2.6.9
https://github.com/pbolduc/AsyncTCP.git @ 1.2.0
[esp32s3]
;; generic definitions for all ESP32-S3 boards
build_flags = -g
-DESP32
-DARDUINO_ARCH_ESP32
-DARDUINO_ARCH_ESP32S3
-DCONFIG_IDF_TARGET_ESP32S3
-D CONFIG_ASYNC_TCP_USE_WDT=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, ARDUINO_USB_MSC_ON_BOOT, ARDUINO_USB_DFU_ON_BOOT
lib_deps =
${env.lib_deps}
;; currently we need the latest NeoPixelBus dev version, because it contains important bugfixes for -S3
;https://github.com/Makuna/NeoPixelBus.git#master ;; NPB 2.6.9 tends to crash whith IDF V4.4.3 -> use latest NeoPixelBus dev instead
makuna/NeoPixelBus @ 2.7.1
https://github.com/pbolduc/AsyncTCP.git @ 1.2.0
# ------------------------------------------------------------------------------
# WLED BUILDS
# ------------------------------------------------------------------------------
[env:nodemcuv2]
board = nodemcuv2
platform = ${common.platform_wled_default}
platform_packages = ${common.platform_packages}
board_build.ldscript = ${common.ldscript_4m1m}
build_unflags = ${common.build_unflags}
build_flags = ${common.build_flags_esp8266} -D WLED_RELEASE_NAME=ESP8266 -D WLED_DISABLE_BLYNK #-DWLED_DISABLE_2D
lib_deps = ${esp8266.lib_deps}
monitor_filters = esp8266_exception_decoder
[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 = ${common.build_unflags}
build_flags = ${common.build_flags_esp8266} -D WLED_RELEASE_NAME=ESP02 -D WLED_DISABLE_BLYNK
lib_deps = ${esp8266.lib_deps}
[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_DISABLE_BLYNK
lib_deps = ${esp8266.lib_deps}
[env:esp07]
board = esp07
platform = ${common.platform_wled_default}
platform_packages = ${common.platform_packages}
board_build.ldscript = ${common.ldscript_4m1m}
build_unflags = ${common.build_unflags}
build_flags = ${common.build_flags_esp8266}
lib_deps = ${esp8266.lib_deps}
[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 = ${common.build_unflags}
build_flags = ${common.build_flags_esp8266}
lib_deps = ${esp8266.lib_deps}
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 = ${common.build_unflags}
build_flags = ${common.build_flags_esp8266}
lib_deps = ${esp8266.lib_deps}
[env:h803wf]
board = d1_mini
platform = ${common.platform_wled_default}
platform_packages = ${common.platform_packages}
board_build.ldscript = ${common.ldscript_4m1m}
build_unflags = ${common.build_unflags}
build_flags = ${common.build_flags_esp8266} -D LEDPIN=1 -D WLED_DISABLE_INFRARED
lib_deps = ${esp8266.lib_deps}
[env:esp32dev]
board = esp32dev
platform = ${esp32.platform}
platform_packages = ${esp32.platform_packages}
build_unflags = ${common.build_unflags}
build_flags = ${common.build_flags_esp32} -D WLED_RELEASE_NAME=ESP32 -D WLED_DISABLE_BLYNK #-D WLED_DISABLE_BROWNOUT_DET
lib_deps = ${esp32.lib_deps}
monitor_filters = esp32_exception_decoder
board_build.partitions = ${esp32.default_partitions}
[env:esp32dev_qio80]
board = esp32dev
platform = ${esp32.platform}
platform_packages = ${esp32.platform_packages}
build_unflags = ${common.build_unflags}
build_flags = ${common.build_flags_esp32} -D WLED_RELEASE_NAME=ESP32_qio80 -D WLED_DISABLE_BLYNK #-D WLED_DISABLE_BROWNOUT_DET
lib_deps = ${esp32.lib_deps}
monitor_filters = esp32_exception_decoder
board_build.partitions = ${esp32.default_partitions}
board_build.f_flash = 80000000L
board_build.flash_mode = qio
[env:esp32_eth]
board = esp32-poe
platform = ${esp32.platform}
platform_packages = ${esp32.platform_packages}
upload_speed = 921600
build_unflags = ${common.build_unflags}
build_flags = ${common.build_flags_esp32} -D WLED_RELEASE_NAME=ESP32_Ethernet -D RLYPIN=-1 -D WLED_USE_ETHERNET -D BTNPIN=-1 -D WLED_DISABLE_BLYNK
lib_deps = ${esp32.lib_deps}
board_build.partitions = ${esp32.default_partitions}
[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 =
platform = ${esp32.platformV4}
platform_packages = ${esp32.platformV4_packages}
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
lib_deps = ${esp32s2.lib_deps}
[env:esp32c3dev] ;WLEDMM, merged with latest change on upstream (renamed from env:esp32c3)
board = esp32-c3-devkitm-1
platform = ${esp32.platformV4} ;; standard platform, well-tested on -C3, good compatibility with WLED
platform_packages = ${esp32.platformV4_packages} ;; use with standard platform
; platform = espressif32@~5.2.0 ;; alternative platform, might help in case you experience bootloops due to corrupted flash filesystem
; platform_packages = ;; for alternative platform
board_build.partitions = tools/WLED_ESP32_4MB_1MB_FS.csv
build_flags = ${common.build_flags} ${esp32c3.build_flags} -D WLED_RELEASE_NAME=ESP32-C3
-D WLED_WATCHDOG_TIMEOUT=0
; -DARDUINO_USB_CDC_ON_BOOT=1 ;; for virtual USB
-D CONFIG_LITTLEFS_FOR_IDF_3_2 ; WLEDMM
-D WLED_USE_MY_CONFIG ; WLEDMM
; -D USERMOD_AUDIOREACTIVE ; WLEDMM
-D USERMOD_CUSTOMEFFECTS ; WLEDMM
upload_speed = 460800
build_unflags = ${common.build_unflags}
lib_deps = ${esp32c3.lib_deps}
; https://github.com/blazoncek/arduinoFFT.git
[env:esp32s3dev_8MB]
;; ESP32-S3-DevKitC-1 development board, with 8MB FLASH, no PSRAM (flash_mode: qio)
board = esp32-s3-devkitc-1
;platform = espressif32@5.1.1
;platform_packages = platformio/framework-arduinoespressif32@3.20004.220825
platform = ${esp32.platformV4}
platform_packages = ${esp32.platformV4_packages}
upload_speed = 921600
build_unflags = ${common.build_unflags}
build_flags = ${common.build_flags} ${esp32s3.build_flags} -D CONFIG_LITTLEFS_FOR_IDF_3_2 -D WLED_WATCHDOG_TIMEOUT=0 -D ARDUINO_USB_MODE=1 -D ARDUINO_USB_CDC_ON_BOOT=0 -D ARDUINO_USB_MSC_ON_BOOT=0
-D WLED_RELEASE_NAME=ESP32-S3
-D WLED_USE_MY_CONFIG
-D USERMOD_AUDIOREACTIVE
-D USERMOD_CUSTOMEFFECTS
lib_deps = ${esp32s3.lib_deps}
https://github.com/blazoncek/arduinoFFT.git
board_build.partitions = tools/WLED_ESP32_8MB.csv
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
[env:esp32s3dev_8MB_PSRAM]
;; ESP32-TinyS3 development board, with 8MB FLASH and 8MB PSRAM (memory_type: qio_opi, qio_qspi, or opi_opi)
;board = um_tinys3 ; -> needs workaround from https://github.com/Aircoookie/WLED/pull/2905#issuecomment-1328049860
;board = esp32s3box ; -> error: 'esp32_adc2gpio' was not declared in this scope
board = esp32-s3-devkitc-1 ; -> compiles, but does not support PSRAM
platform = espressif32 @ ~5.2.0
platform_packages =
upload_speed = 921600
build_unflags = ${common.build_unflags}
build_flags = ${common.build_flags} ${esp32s3.build_flags}
-D CONFIG_LITTLEFS_FOR_IDF_3_2 -D WLED_WATCHDOG_TIMEOUT=0
-D ARDUINO_USB_MODE=1 -D ARDUINO_USB_MSC_ON_BOOT=0 ; -D ARDUINO_USB_CDC_ON_BOOT=0
; -D WLED_RELEASE_NAME=ESP32-S3_PSRAM
-D WLED_USE_PSRAM -DBOARD_HAS_PSRAM ; tells WLED that PSRAM shall be used
lib_deps = ${esp32s3.lib_deps}
board_build.partitions = tools/WLED_ESP32_8MB.csv
board_build.f_flash = 80000000L
board_build.flash_mode = qio
monitor_filters = esp32_exception_decoder
[env:esp8285_4CH_MagicHome]
board = esp8285
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_DISABLE_OTA
lib_deps = ${esp8266.lib_deps}
[env:esp8285_H801]
board = esp8285
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_DISABLE_OTA
lib_deps = ${esp8266.lib_deps}
[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 = ${common.build_unflags}
build_flags = ${common.build_flags_esp8266} -D WLED_USE_SHOJO_PCB
lib_deps = ${esp8266.lib_deps}
# ------------------------------------------------------------------------------
# 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 = ${common.build_unflags}
build_flags = ${common.build_flags_esp8266} ${common.debug_flags}
lib_deps = ${esp8266.lib_deps}
[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 = ${common.build_unflags}
build_flags = ${common.build_flags_esp8266}
lib_deps = ${esp8266.lib_deps}
[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 = ${common.build_unflags}
build_flags = ${common.build_flags_esp8266} -D LEDPIN=12 -D IRPIN=-1 -D RLYPIN=2
lib_deps = ${esp8266.lib_deps}
[env:lolin_s2_mini]
;platform = espressif32@5.1.1
platform = ${esp32.platformV4}
platform_packages = ${esp32.platformV4_packages}
board = lolin_s2_mini
board_build.partitions = tools/WLED_ESP32_4MB_1MB_FS.csv
build_unflags = ${common.build_unflags}
build_flags = ${common.build_flags} ${esp32s2.build_flags} -D WLED_RELEASE_NAME=LolinS2
-DBOARD_HAS_PSRAM
-D ARDUINO_USB_CDC_ON_BOOT
;-D ARDUINO_USB_CDC_ON_BOOT=0
-D WLED_USE_PSRAM
-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
-D WLED_USE_MY_CONFIG
-D USERMOD_AUDIOREACTIVE
-D USERMOD_CUSTOMEFFECTS
lib_deps = ${esp32s2.lib_deps}
https://github.com/blazoncek/arduinoFFT.git
# ------------------------------------------------------------------------------
# MoonModules configs
# see https://mm.kno.wled.ge/moonmodules/platformio-entries/
# ------------------------------------------------------------------------------
; shared build flags and lib deps for minimum and maximum config
[common_mm]
build_flags_min =
-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_BLYNK ; BLYNK is only provided for backwards compatibility (no new users accepted)
;-D WLED_DISABLE_BROWNOUT_DET ; enable if you get "brownout detected" errors at startup
-D WLED_USE_MY_CONFIG
; -D WLED_USE_CIE_BRIGHTNESS_TABLE ;; experimental: use different color / brightness lookup table
-D USERMOD_AUDIOREACTIVE
-D UM_AUDIOREACTIVE_USE_NEW_FFT ; use latest (upstream) FFTLib, instead of older library modified by blazoncek. Slightly faster, more accurate, needs 2KB RAM extra
-D USERMOD_CUSTOMEFFECTS ; WLEDMM usermod
; -D WLED_DEBUG_HOST='"192.168.xxx.xxx"' ;; to send debug messages over network to host 192.168.x.y - FQDN is also possible
; -D WLED_DEBUG_NET_PORT=1768 ;; port for network debugging. default = 7868
; -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)
; -D WLED_DISABLE_LOXONE
; -D WLED_DISABLE_ALEXA
; -D WLED_DISABLE_HUESYNC
; -D WLED_DISABLE_MQTT
; -D WLED_DISABLE_INFRARED
; -D WLED_ENABLE_DMX
lib_deps_min =
https://github.com/kosme/arduinoFFT#develop @ 1.9.2 ; used for USERMOD_AUDIOREACTIVE
build_flags_max =
-D WLED_MAX_USERMODS=25 ; default only 4-6, also for _all 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_min? - We need a different solution
-D WLED_USE_MY_CONFIG ; include custom my_config.h ewowi to softhack: redundant as also in build_flags_min?
-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 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 "decharging curve" for LiPo cells
-D USERMOD_BH1750
-D USERMOD_ANIMATED_STAIRCASE
lib_deps_max =
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
claws/BH1750 @^1.2.0 ; used for USERMOD_BH1750
lib_deps_V4_max =
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 inititialization)
ElectronicCats/MPU6050 @ 0.6.0 ; used for USERMOD_MPU6050_IMU
claws/BH1750 @^1.2.0 ; used for USERMOD_BH1750
build_flags_all =
-D USERMOD_RTC ;; experimental
; -D USERMOD_SENSORSTOMQTT ;; experimental ewpwi 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
-D USERMOD_BUZZER
-D USERMOD_SN_PHOTORESISTOR
-D USERMOD_BME280
-D USERMOD_DHT
-D USERMOD_VL53L0X_GESTURES
lib_deps_all =
; 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
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_min_base]
board = esp32dev
platform = ${esp32.platform}
upload_speed = 460800 ; or 921600
platform_packages = ${esp32.platform_packages}
build_unflags = ${common.build_unflags}
build_flags = ${common.build_flags_esp32} ${common_mm.build_flags_min}
lib_deps = ${esp32.lib_deps} ${common_mm.lib_deps_min}
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 ; used to show crash details
;common default for all max environments
[esp32_4MB_max_base]
extends = esp32_4MB_min_base
build_flags = ${esp32_4MB_min_base.build_flags} ${common_mm.build_flags_max}
lib_deps = ${esp32_4MB_min_base.lib_deps} ${common_mm.lib_deps_max}
board_build.partitions = ${esp32_4MB_min_base.board_build.partitions}
; board_build.partitions = tools/WLED_ESP32-wrover_4MB.csv
[esp32_4MB_all_base]
extends = esp32_4MB_min_base
build_flags = ${esp32_4MB_min_base.build_flags} ${common_mm.build_flags_max} ${common_mm.build_flags_all}
lib_deps = ${esp32_4MB_min_base.lib_deps} ${common_mm.lib_deps_max} ${common_mm.lib_deps_all}
board_build.partitions = ${esp32_4MB_min_base.board_build.partitions}
; board_build.partitions = tools/WLED_ESP32-wrover_4MB.csv
;common default for all V4 min environments
[esp32_4MB_V4_min_base]
board = esp32dev
upload_speed = 460800 ; or 921600
platform = ${esp32.platformV4}
platform_packages = ${esp32.platformV4_packages}
build_unflags = ${common.build_unflags}
build_flags = ${common.build_flags} ${esp32.build_flagsV4} ${common_mm.build_flags_min}
-Wno-misleading-indentation -Wno-format-truncation
lib_deps = ${esp32.lib_depsV4} ${common_mm.lib_deps_min}
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)
;lib_ignore = IRremoteESP8266 ; use with WLED_DISABLE_INFRARED for faster compilation
; monitor_filters = esp32_exception_decoder ; used to show crash details
[esp32_4MB_V4_max_base]
extends = esp32_4MB_V4_min_base
build_flags = ${esp32_4MB_V4_min_base.build_flags} ${common_mm.build_flags_max}
lib_deps = ${esp32_4MB_V4_min_base.lib_deps} ${common_mm.lib_deps_max}
board_build.partitions = ${esp32_4MB_V4_min_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
[Shield_LineIn]
build_flags =
-D SR_DMTYPE=4 -D MCLK_PIN=0 -D I2S_SDPIN=25 -D I2S_WSPIN=15 -D I2S_CKPIN=14 ; for audio Line-In shield
-D SR_SQUELCH=2 -D SR_GAIN=40 -D SR_FREQ_PROF=1 ; CS5343 Line-In specific
[Board_ESP32_16MB] ; ESP32 with 16MB Flash
board = esp32_16MB
board_build.partitions = tools/WLED_ESP32_16MB.csv
; end of base entries
; bin entries (with WLED_RELEASE_NAME)
[env:esp32_4MB_min]
extends = esp32_4MB_min_base
build_flags = ${esp32_4MB_min_base.build_flags}
-D WLED_RELEASE_NAME=esp32_4MB_min
; RAM: [== ] 24.1% (used 78900 bytes from 327680 bytes)
; Flash: [======== ] 83.7% (used 1315729 bytes from 1572864 bytes)
[env:esp32_4MB_max]
extends = esp32_4MB_max_base
build_flags = ${esp32_4MB_max_base.build_flags}
-D WLED_RELEASE_NAME=esp32_4MB_max
; RAM: [== ] 24.4% (used 79804 bytes from 327680 bytes)
; Flash: [========= ] 88.7% (used 1394813 bytes from 1572864 bytes)
[env:esp32_4MB_all]
extends = esp32_4MB_all_base
build_flags = ${esp32_4MB_all_base.build_flags}
-D WLED_RELEASE_NAME=esp32_4MB_all
; RAM: [== ] 24.4% (used 79804 bytes from 327680 bytes)
; Flash: [========= ] 88.7% (used 1394813 bytes from 1572864 bytes)
[env:esp32_16MB_max]
extends = esp32_4MB_max_base
build_flags = ${esp32_4MB_max_base.build_flags}
-D WLED_RELEASE_NAME=esp32_16MB_max
board = ${Board_ESP32_16MB.board}
board_build.partitions = ${Board_ESP32_16MB.board_build.partitions}
; RAM: [== ] 24.4% (used 79916 bytes from 327680 bytes)
; Flash: [======= ] 67.0% (used 1405701 bytes from 2097152 bytes)
;lib_ignore = IRremoteESP8266 ; use with WLED_DISABLE_INFRARED for faster compilation
[env:esp32_16MB_all]
extends = esp32_4MB_all_base
build_flags = ${esp32_4MB_all_base.build_flags}
-D WLED_RELEASE_NAME=esp32_16MB_all
board = ${Board_ESP32_16MB.board}
board_build.partitions = ${Board_ESP32_16MB.board_build.partitions}
; RAM: [== ] 24.4% (used 79916 bytes from 327680 bytes)
; Flash: [======= ] 67.0% (used 1405701 bytes from 2097152 bytes)
;lib_ignore = IRremoteESP8266 ; use with WLED_DISABLE_INFRARED for faster compilation
[env:esp8266_4MB_min]
extends = env:d1_mini
upload_speed = 460800 ;115200
build_flags = ${common.build_flags_esp8266}
-D WLED_RELEASE_NAME=esp8266_4MB_min
; -D WLED_DEBUG
-D WLED_DISABLE_ALEXA
-D WLED_DISABLE_BLYNK
-D WLED_DISABLE_HUESYNC
; -D WLED_DISABLE_2D
; -D USERMOD_AUDIOREACTIVE
; -D USERMOD_CUSTOMEFFECTS ; to be done
-UWLED_USE_MY_CONFIG
; monitor_filters = esp8266_exception_decoder
; RAM: [====== ] 58.7% (used 48056 bytes from 81920 bytes)
; Flash: [======== ] 75.7% (used 790428 bytes from 1044464 bytes)
# ------------------------------------------------------------------------------
# MoonModules configs 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
[env:esp32_4MB_V4_min]
extends = esp32_4MB_V4_min_base
build_flags = ${esp32_4MB_V4_min_base.build_flags}
-D WLED_RELEASE_NAME=esp32_4MB_V4_min
-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_DISABLE_LOXONE
-D WLED_DISABLE_ALEXA
-D WLED_DISABLE_HUESYNC
-D WLED_DISABLE_MQTT
-D WLED_DISABLE_INFRARED
; -D WLED_DEBUG
; -D SR_DEBUG
; -D MIC_LOGGER
; RAM: [== ] 24.2% (used 79372 bytes from 327680 bytes)
; Flash: [========= ] 88.8% (used 1396073 bytes from 1572864 bytes)
;lib_ignore = IRremoteESP8266 ; use with WLED_DISABLE_INFRARED for faster compilation
; compiled with ESP-IDF 4.4.1
[env:esp32_4MB_V4_max]
extends = esp32_4MB_V4_max_base
build_flags = ${esp32_4MB_V4_max_base.build_flags}
-D WLED_RELEASE_NAME=esp32_4MB_V4_max
-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
; RAM: [== ] 24.8% (used 81316 bytes from 327680 bytes)
; Flash: [==========] 97.2% (used 1528253 bytes from 1572864 bytes)
-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
; RAM: [== ] 24.7% (used 81076 bytes from 327680 bytes)
; Flash: [==========] 95.8% (used 1506893 bytes from 1572864 bytes)
;-D WLED_DISABLE_MQTT ; RAM 216 bytes; FLASH 16496 bytes
;-D WLED_DISABLE_INFRARED ;RAM 136 bytes; FLASH 24492 bytes
;lib_ignore = IRremoteESP8266 ; use with WLED_DISABLE_INFRARED for faster compilation
; compiled with ESP-IDF 4.4.1
[env:esp32_16MB_V4_max]
extends = esp32_4MB_V4_max_base
build_flags = ${esp32_4MB_V4_max_base.build_flags}
-D WLED_RELEASE_NAME=esp32_16MB_V4_max
-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
board = ${Board_ESP32_16MB.board}
board_build.partitions = ${Board_ESP32_16MB.board_build.partitions}
; RAM: [== ] 24.8% (used 81316 bytes from 327680 bytes)
; Flash: [======= ] 72.9% (used 1528253 bytes from 2097152 bytes)
;; experimental environment for boards with PSRAM (needs ESP-IDF 4.4.1).
[env:esp32_4MB_PSRAM_max]
extends = esp32_4MB_V4_max_base
board = lolin_d32_pro
;board = esp32cam
build_flags = ${esp32_4MB_V4_max_base.build_flags}
-D WLED_RELEASE_NAME=esp32_4MB_PSRAM_max
-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_USE_PSRAM
; RAM: [== ] 24.8% (used 81424 bytes from 327680 bytes)
; Flash: [==========] 99.8% (used 1570457 bytes from 1572864 bytes)
; 99.8% !!!!
-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
; RAM: [== ] 24.7% (used 80948 bytes from 327680 bytes)
; Flash: [==========] 97.4% (used 1532485 bytes from 1572864 bytes)
;-D WLED_DISABLE_INFRARED ;RAM 136 bytes; FLASH 24492 bytes
; -D WLED_ENABLE_DMX
; -D WLED_DEBUG
; -D SR_DEBUG
; -D MIC_LOGGER
[env:esp32S3_8MB_max]
extends = esp32_4MB_V4_max_base
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 = ${esp32_4MB_V4_max_base.build_flags}
-D WLED_RELEASE_NAME=esp32S3_8MB_max
-D ARDUINO_USB_MODE=1 -D ARDUINO_USB_CDC_ON_BOOT=0 -D ARDUINO_USB_MSC_ON_BOOT=0 -D ARDUINO_USB_DFU_ON_BOOT=0
-D WLED_WATCHDOG_TIMEOUT=0
; -D U8X8_HAVE_2ND_HW_I2C ;; experimental - tells U8g2 lib that a second HW I2C unit exists
-D WLED_DISABLE_BLYNK ;; seems that BLYNK does not work on -S3
-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_min} ${common_mm.lib_deps_V4_max}
;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: [== ] 24.7% (used 80856 bytes from 327680 bytes)
; Flash: [======= ] 66.9% (used 1403489 bytes from 2097152 bytes)
;; MM max 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_max]
extends = esp32_4MB_V4_min_base
platform = ${esp32.platformV4}
platform_packages = ${esp32.platformV4_packages}
board = adafruit_qtpy_esp32s2
board_build.partitions = tools/partitions-4MB-tinyuf2_spiffs.csv ;; this is needed for tinyUF2 bootloader!
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 -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)
build_flags = ${common.build_flags} ${esp32.build_flagsV4} ${esp32s2.build_flags}
-D WLED_WATCHDOG_TIMEOUT=0 -D CONFIG_ASYNC_TCP_USE_WDT=0
${common_mm.build_flags_min} ${common_mm.build_flags_max}
-Wno-misleading-indentation -Wno-format-truncation
-D WLED_RELEASE_NAME=esp32S2_4MB_UF2_max
-DARDUINO_USB_CDC_ON_BOOT=1 ;; mandatory, otherwise USB does not work!!
-DARDUINO_USB_MSC_ON_BOOT=0 -DARDUINO_USB_DFU_ON_BOOT=0
-D SERVERNAME='"WLED-S2"'
-D WLED_USE_PSRAM
-D WLED_DISABLE_INFRARED ;; save flash space
-D WLED_DISABLE_ALEXA ;; save flash space
-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
; -D WLED_DEBUG_HOST='"192.168.xxx.xxx"' ;; to send debug messages over network to host 192.168.x.y - FQDN is also possible
; -D WLED_DEBUG_NET_PORT=1768 ;; port for network debugging. default = 7868
; -D WLED_DEBUG
; -D SR_DEBUG
; -D MIC_LOGGER
lib_deps = ${env.lib_deps} ${esp32s2.lib_deps} ${common_mm.lib_deps_min} ${common_mm.lib_deps_V4_max}
lib_ignore = IRremoteESP8266 ; use with WLED_DISABLE_INFRARED for faster compilation
monitor_filters = esp32_exception_decoder
; RAM: [=== ] 25.6% (used 83796 bytes from 327680 bytes)
; Flash: [==========] 97.7% (used 1408626 bytes from 1441792 bytes)
# ------------------------------------------------------------------------------
# custom board configurations
# ------------------------------------------------------------------------------
[wemos_shield_esp32_4MB_max_base]
extends = esp32_4MB_max_base
build_flags = ${esp32_4MB_max_base.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 ENCODER_DT_PIN=35 -D ENCODER_CLK_PIN=5 -D ENCODER_SW_PIN=39 ;WLEDMM spec by @SERG74: use 35 and 39 instead of 18 and 19 (conflicts)
; -D WLED_USE_MY_CONFIG
[wemos_shield_esp32_4MB_all_base]
extends = esp32_4MB_all_base
build_flags = ${esp32_4MB_all_base.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 ENCODER_DT_PIN=35 -D ENCODER_CLK_PIN=5 -D ENCODER_SW_PIN=39 ;WLEDMM spec by @SERG74: use 35 and 39 instead of 18 and 19 (conflicts)
; -D WLED_USE_MY_CONFIG
[env:wemos_shield_esp32_4MB_max]
extends = wemos_shield_esp32_4MB_max_base
build_flags = ${wemos_shield_esp32_4MB_max_base.build_flags}
-D WLED_RELEASE_NAME=wemos_shield_esp32_4MB_max
; RAM: [== ] 24.4% (used 79820 bytes from 327680 bytes)
; Flash: [========= ] 88.6% (used 1393421 bytes from 1572864 bytes)
[env:wemos_shield_esp32_4MB_ICS4343x_max]
extends = wemos_shield_esp32_4MB_max_base
build_flags = ${wemos_shield_esp32_4MB_max_base.build_flags} ${Shield_ICS4343x.build_flags}
-D WLED_RELEASE_NAME=wemos_shield_esp32_4MB_ICS4343x_max
; RAM: [== ] 24.4% (used 79820 bytes from 327680 bytes)
; Flash: [========= ] 88.6% (used 1393421 bytes from 1572864 bytes)
[env:wemos_shield_esp32_4MB_SPM1423_max]
extends = wemos_shield_esp32_4MB_max_base
build_flags = ${wemos_shield_esp32_4MB_max_base.build_flags} ${Shield_SPM1423.build_flags}
-D WLED_RELEASE_NAME=wemos_shield_esp32_4MB_SPM1423_max
; RAM: [== ] 24.4% (used 79820 bytes from 327680 bytes)
; Flash: [========= ] 88.6% (used 1393421 bytes from 1572864 bytes)
[env:wemos_shield_esp32_4MB_LineIn_max]
extends = wemos_shield_esp32_4MB_max_base
build_flags = ${wemos_shield_esp32_4MB_max_base.build_flags} ${Shield_LineIn.build_flags}
-D WLED_RELEASE_NAME=wemos_shield_esp32_4MB_LineIn_max
[env:wemos_shield_esp32_16MB_max]
extends = wemos_shield_esp32_4MB_max_base
build_flags = ${wemos_shield_esp32_4MB_max_base.build_flags}
-D WLED_RELEASE_NAME=wemos_shield_esp32_16MB_max
board = ${Board_ESP32_16MB.board}
board_build.partitions = ${Board_ESP32_16MB.board_build.partitions}
; RAM: [== ] 24.4% (used 79820 bytes from 327680 bytes)
; Flash: [======= ] 66.4% (used 1393421 bytes from 2097152 bytes)
[env:wemos_shield_esp32_16MB_ICS4343x_max]
extends = wemos_shield_esp32_4MB_max_base
build_flags = ${wemos_shield_esp32_4MB_max_base.build_flags} ${Shield_ICS4343x.build_flags}
-D WLED_RELEASE_NAME=wemos_shield_esp32_16MB_ICS4343x_max
board = ${Board_ESP32_16MB.board}
board_build.partitions = ${Board_ESP32_16MB.board_build.partitions}
; RAM: [== ] 24.4% (used 79820 bytes from 327680 bytes)
; Flash: [========= ] 88.6% (used 1393421 bytes from 1572864 bytes)
[env:wemos_shield_esp32_16MB_SPM1423_max]
extends = wemos_shield_esp32_4MB_max_base
build_flags = ${wemos_shield_esp32_4MB_max_base.build_flags} ${Shield_SPM1423.build_flags}
-D WLED_RELEASE_NAME=wemos_shield_esp32_16MB_SPM1423_max
board = ${Board_ESP32_16MB.board}
board_build.partitions = ${Board_ESP32_16MB.board_build.partitions}
; RAM: [== ] 24.4% (used 79820 bytes from 327680 bytes)
; Flash: [========= ] 88.6% (used 1393421 bytes from 1572864 bytes)
monitor_filters = esp32_exception_decoder ; used to show crash details
[env:wemos_shield_esp32_16MB_SPM1423_all]
extends = wemos_shield_esp32_4MB_all_base
build_flags = ${wemos_shield_esp32_4MB_all_base.build_flags} ${Shield_SPM1423.build_flags}
-D WLED_RELEASE_NAME=wemos_shield_esp32_16MB_SPM1423_all
board = ${Board_ESP32_16MB.board}
board_build.partitions = ${Board_ESP32_16MB.board_build.partitions}
; RAM: [== ] 24.4% (used 79820 bytes from 327680 bytes)
; Flash: [========= ] 88.6% (used 1393421 bytes from 1572864 bytes)
monitor_filters = esp32_exception_decoder ; used to show crash details
[env:wemos_shield_esp32_16MB_LineIn_max]
extends = wemos_shield_esp32_4MB_max_base
build_flags = ${wemos_shield_esp32_4MB_max_base.build_flags} ${Shield_LineIn.build_flags}
-D WLED_RELEASE_NAME=wemos_shield_esp32_16MB_LineIn_max
board = ${Board_ESP32_16MB.board}
board_build.partitions = ${Board_ESP32_16MB.board_build.partitions}
; ESP32 WLED pico board with builtin ICS-43432 microphpone
[env:esp32_pico_4MB_max]
extends = esp32_4MB_max_base
board = pico32
build_flags = ${esp32_4MB_max_base.build_flags}
-D WLED_RELEASE_NAME=esp32_pico_4MB_max
-D WLED_DISABLE_BROWNOUT_DET
-D SERVERNAME='"WLED-pico32"'
; -D WLED_WATCHDOG_TIMEOUT=60
; -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-43434 specific
; -D MCLK_PIN=0
; -D WLED_USE_MY_CONFIG
; -D WLED_DISABLE_LOXONE
; -D WLED_DISABLE_ALEXA
; -D WLED_DISABLE_HUESYNC
; -D WLED_DISABLE_MQTT
; -D WLED_DISABLE_INFRARED
; -D WLED_ENABLE_DMX
; RAM: [== ] 24.4% (used 79804 bytes from 327680 bytes)
; Flash: [========= ] 88.6% (used 1394241 bytes from 1572864 bytes)
[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 = espressif32@3.2
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
lib_deps = ${esp8266.lib_deps}
[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
lib_deps = ${esp8266.lib_deps}
[env:athom7w]
board = esp_wroom_02
platform = ${common.platform_wled_default}
board_build.ldscript = ${common.ldscript_2m512k}
build_flags = ${common.build_flags_esp8266} -D WLED_MAX_CCT_BLEND=0 -D BTNPIN=-1 -D IRPIN=-1 -D WLED_DISABLE_INFRARED
lib_deps = ${esp8266.lib_deps}
[env:athom15w]
board = esp_wroom_02
platform = ${common.platform_wled_default}
board_build.ldscript = ${common.ldscript_2m512k}
build_flags = ${common.build_flags_esp8266} -D WLED_USE_IC_CCT -D BTNPIN=-1 -D IRPIN=-1 -D WLED_DISABLE_INFRARED
lib_deps = ${esp8266.lib_deps}
[env:MY9291]
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 USERMOD_MY9291
lib_deps = ${esp8266.lib_deps}
# ------------------------------------------------------------------------------
# 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 = ${common.build_unflags}
build_flags = ${common.build_flags_esp8266}
lib_deps = ${esp8266.lib_deps}
[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 = ${common.build_unflags}
build_flags = ${common.build_flags_esp8266}
lib_deps = ${esp8266.lib_deps}
# ------------------------------------------------------------------------------
# EleksTube-IPS
# ------------------------------------------------------------------------------
[env:elekstube_ips]
board = esp32dev
platform = espressif32@3.2
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 WLED_DISABLE_BLYNK
-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}