move all C3 and S2 builds to tasmota platform
* solved a few platformio.ini problems that lead to an unhealthy mix-up of espressif and tasmota platforms * re-enabled "full font" support for -C3 * re-enabled full ParticleFX support for -C3
This commit is contained in:
109
platformio.ini
109
platformio.ini
@@ -328,7 +328,7 @@ platform_packages_compat =
|
||||
|
||||
|
||||
[esp32]
|
||||
platform = ${esp32_idf_V4.platform}
|
||||
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}
|
||||
|
||||
@@ -342,6 +342,7 @@ 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}
|
||||
@@ -349,6 +350,10 @@ AR_lib_deps = ${common_mm.AR_lib_deps} ;; optimized version, 10% faster on
|
||||
|
||||
;; 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
|
||||
@@ -387,13 +392,16 @@ lib_depsV4 =
|
||||
[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)
|
||||
|
||||
;; select 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)
|
||||
|
||||
platform = 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_packages =
|
||||
;; 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
|
||||
@@ -418,12 +426,12 @@ lib_deps =
|
||||
;; platform_packages =
|
||||
;; toolchain-riscv32-esp @ 8.4.0+2021r2-patch5
|
||||
;; toolchain-xtensa-esp32s2 @ 8.4.0+2021r2-patch5
|
||||
;; standard 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)
|
||||
;; tasmota platform (optional)
|
||||
;; platform = ${esp32_idf_V4.platform}
|
||||
;; platform_packages = ${esp32_idf_V4.platform_packages}
|
||||
;; 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
|
||||
@@ -445,9 +453,11 @@ lib_deps =
|
||||
;; makuna/NeoPixelBus @ 2.7.5 ;; standard
|
||||
makuna/NeoPixelBus @ 2.7.9 ;; experimental - reduces LED glitches on -S2
|
||||
${env.lib_deps}
|
||||
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}
|
||||
@@ -469,9 +479,11 @@ lib_deps =
|
||||
makuna/NeoPixelBus @ 2.7.5
|
||||
;; makuna/NeoPixelBus @ 2.7.9 ;; experimental
|
||||
${env.lib_deps}
|
||||
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}
|
||||
@@ -494,6 +506,7 @@ lib_deps =
|
||||
makuna/NeoPixelBus @ 2.7.5
|
||||
;; makuna/NeoPixelBus @ 2.7.9 ;; experimental
|
||||
${env.lib_deps}
|
||||
monitor_filters = esp32_exception_decoder
|
||||
|
||||
|
||||
# ------------------------------------------------------------------------------
|
||||
@@ -676,8 +689,8 @@ 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: [== ] 22.5% (used 73740 bytes from 327680 bytes)
|
||||
; Flash: [==========] 96.3% (used 1515336 bytes from 1572864 bytes)
|
||||
; RAM: [== ] 21.2% (used 69312 bytes from 327680 bytes)
|
||||
; Flash: [======== ] 78.1% (used 1228472 bytes from 1572864 bytes)
|
||||
|
||||
[env:esp32s3dev_8MB]
|
||||
;; ESP32-S3-DevKitC-1 development board, with 8MB FLASH, no PSRAM (flash_mode: qio)
|
||||
@@ -850,8 +863,8 @@ board_build.partitions = tools/WLED_ESP32_2MB_noOTA.csv
|
||||
board_build.flash_mode = dio
|
||||
board_upload.flash_size = 2MB
|
||||
board_upload.maximum_size = 2097152
|
||||
; RAM: [== ] 23.3% (used 76204 bytes from 327680 bytes)
|
||||
; Flash: [==========] 95.2% (used 1497536 bytes from 1572864 bytes)
|
||||
; RAM: [== ] 20.6% (used 67496 bytes from 327680 bytes)
|
||||
; Flash: [======== ] 77.9% (used 1224652 bytes from 1572864 bytes)
|
||||
|
||||
;WLEDMM: see below
|
||||
; [env:wemos_shield_esp32]
|
||||
@@ -2276,12 +2289,9 @@ lib_ignore =
|
||||
;; 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
|
||||
;;platform = ${esp32s2.platform} ;; using 5.2.0, due to massive connectivity problems on -S2 with 5.3.0
|
||||
;;platform_packages = ${esp32s2.platform_packages}
|
||||
|
||||
;; tasmota platform needed, as we are over flash size limits for the standard platform
|
||||
platform = ${esp32_idf_V4.platform}
|
||||
platform_packages = ${esp32_idf_V4.platform_packages}
|
||||
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"
|
||||
@@ -2332,19 +2342,19 @@ 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 58548 bytes from 327680 bytes)
|
||||
; Flash: [======== ] 82.0% (used 1182554 bytes from 1441792 bytes)
|
||||
; 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
|
||||
;; standard platform
|
||||
platform = ${esp32s2.platform} ;; using 5.2.0, due to massive connectivity problems on -S2 with 5.3.0
|
||||
;; default tasmota platform
|
||||
platform = ${esp32s2.platform}
|
||||
platform_packages = ${esp32s2.platform_packages}
|
||||
;; tasmota platform (optional)
|
||||
;; platform = ${esp32_idf_V4.platform}
|
||||
;; platform_packages = ${esp32_idf_V4.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)
|
||||
@@ -2390,8 +2400,8 @@ lib_ignore =
|
||||
${common_mm.HUB75_lib_ignore}
|
||||
${common_mm.DMXin_lib_ignore}
|
||||
monitor_filters = esp32_exception_decoder
|
||||
; RAM: [== ] 20.5% (used 67256 bytes from 327680 bytes)
|
||||
; Flash: [========= ] 93.3% (used 1590266 bytes from 1703936 bytes)
|
||||
; RAM: [== ] 18.2% (used 59640 bytes from 327680 bytes)
|
||||
; Flash: [======== ] 80.3% (used 1368130 bytes from 1703936 bytes)
|
||||
|
||||
[env:esp32s2_PSRAM_S]
|
||||
extends = env:esp32s2_PSRAM_M
|
||||
@@ -2410,21 +2420,20 @@ lib_deps = ${env:esp32s2_PSRAM_M.lib_deps}
|
||||
lib_ignore = ${env:esp32s2_PSRAM_M.lib_ignore}
|
||||
U8g2
|
||||
${common_mm.animartrix_lib_ignore}
|
||||
; RAM: [== ] 20.4% (used 66792 bytes from 327680 bytes)
|
||||
; Flash: [========= ] 94.8% (used 1490390 bytes from 1572864 bytes)
|
||||
|
||||
; 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, no PSRAM
|
||||
;; 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 = ${esp32.platformV4}
|
||||
platform_packages = ${esp32.platformV4_packages}
|
||||
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)
|
||||
@@ -2441,7 +2450,7 @@ build_unflags = ${common.build_unflags}
|
||||
;-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
|
||||
; -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)
|
||||
@@ -2457,7 +2466,7 @@ build_flags = ${common.build_flags} ${esp32c3.build_flags}
|
||||
-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 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
|
||||
@@ -2465,7 +2474,7 @@ build_flags = ${common.build_flags} ${esp32c3.build_flags}
|
||||
;-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_PARTICLESYSTEM1D ;; exceeds flash size limit
|
||||
;; -D WLED_DISABLE_PARTICLESYSTEM2D ;; exceeds flash size limit
|
||||
lib_deps = ${esp32c3.lib_deps} ${common_mm.lib_deps_S} ${common_mm.lib_deps_V4_M}
|
||||
lib_ignore =
|
||||
@@ -2473,8 +2482,9 @@ lib_ignore =
|
||||
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
|
||||
; RAM: [== ] 24.7% (used 81004 bytes from 327680 bytes)
|
||||
; Flash: [==========] 99.2% (used 1559754 bytes from 1572864 bytes)
|
||||
; 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
|
||||
@@ -2490,15 +2500,15 @@ build_flags = ${env:esp32c3dev_4MB_M.build_flags}
|
||||
-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: [== ] 24.7% (used 80828 bytes from 327680 bytes)
|
||||
; Flash: [==========] 99.0% (used 1556768 bytes from 1572864 bytes)
|
||||
; 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
|
||||
;; -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
|
||||
|
||||
@@ -2515,24 +2525,25 @@ build_flags = ${env:esp32c3dev_4MB_M.build_flags}
|
||||
-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 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_PARTICLESYSTEM1D ;; exceeds flash size limit
|
||||
;; -D WLED_DISABLE_PARTICLESYSTEM2D ;; exceeds flash size limit
|
||||
; RAM: [== ] 24.1% (used 78948 bytes from 327680 bytes)
|
||||
; Flash: [==========] 98.0% (used 1541914 bytes from 1572864 bytes)
|
||||
; 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} ;; standard IDF 4.4.1 platform - seems to work better for seeed xiao board
|
||||
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
|
||||
@@ -2543,6 +2554,9 @@ build_flags = ${common.build_flags} ${esp32c3.build_flags}
|
||||
;-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
|
||||
@@ -2556,6 +2570,7 @@ lib_ignore = IRremoteESP8266 ; use with WLED_DISABLE_INFRARED for faster compila
|
||||
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
|
||||
# ------------------------------------------------------------------------------
|
||||
|
||||
Reference in New Issue
Block a user