forked from Aircoookie/WLED
-
-
Notifications
You must be signed in to change notification settings - Fork 70
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
(WIP) align platformio build env with upstream
* [email protected] --> [email protected] * pxmagic.htm added in cdata.js * minor updates in style.css * align some constants and definitions (wled.h, const.h) * npm run build
- Loading branch information
1 parent
ec4bdf9
commit e6513fe
Showing
7 changed files
with
229 additions
and
97 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -11,7 +11,7 @@ | |
|
||
# 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, lolin_s2_mini, esp32c3dev, esp32s3dev_8MB | ||
; 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 | ||
|
@@ -34,6 +34,7 @@ | |
; 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 | ||
|
@@ -109,13 +110,14 @@ arduino_core_2_7_4 = [email protected] | |
arduino_core_3_0_0 = [email protected] | ||
arduino_core_3_2_0 = [email protected] | ||
arduino_core_4_1_0 = [email protected] | ||
arduino_core_3_1_2 = [email protected] | ||
|
||
# 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_4_1_0} | ||
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/framework-arduinoespressif8266 | ||
|
@@ -138,7 +140,7 @@ platform_packages = platformio/framework-arduinoespressif8266 | |
# ------------------------------------------------------------------------------ | ||
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 ;; enables some debug asserts in arduinoJSON | ||
-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 | ||
|
||
|
@@ -230,8 +232,7 @@ upload_speed = 115200 | |
# ------------------------------------------------------------------------------ | ||
lib_compat_mode = strict | ||
lib_deps = | ||
fastled/FastLED @ 3.6.0 ;; 3.6.0 was release recently | ||
;https://github.com/FastLED/FastLED.git#master @3.6.0+sha.23c67b7 ;; up to 50% faster - using a "known good" hash, so we get predictable builds | ||
fastled/FastLED @ 3.6.0 | ||
IRremoteESP8266 @ 2.8.2 | ||
;;makuna/NeoPixelBus @ 2.7.5 ;; WLEDMM will be added in board specific sections | ||
;;https://github.com/Aircoookie/ESPAsyncWebServer.git @ ~2.0.7 | ||
|
@@ -258,7 +259,7 @@ 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 | ||
;-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) | ||
|
@@ -299,7 +300,7 @@ build_flags = -g | |
; -DARDUINO_USB_CDC_ON_BOOT=0 ;; this flag is mandatory for "classic ESP32" when building with arduino-esp32 >=2.0.3 | ||
|
||
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 ;; Alternative for 4MB flash: 1.8MB firmware, 256KB filesystem (esptool erase_flash needed before changing) | ||
;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) | ||
|
||
lib_deps = | ||
https://github.com/pbolduc/AsyncTCP.git @ 1.2.0 ;; WLEDMM this must be first in the list, otherwise Aircoookie/ESPAsyncWebServer pulls in an older version of AsyncTCP !! | ||
|
@@ -313,22 +314,17 @@ lib_deps = | |
|
||
;; ** For compiling with latest Frameworks (IDF4.4.x and arduino-esp32 v2.0.x) ** | ||
;;; previous standard V4 platform | ||
platformV4_pre = espressif32@ ~5.1.1 | ||
platformV4_packages_pre = | ||
platformio/framework-arduinoespressif32@ ~3.20004.0 | ||
platformV4_pre = [email protected] | ||
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@5.2.0 | ||
platformV4 = espressif32@5.3.0 | ||
platformV4_packages = | ||
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 | ||
|
||
;;; updated V4 platform (5.3.0) - experimental | ||
;;platformV4_up = espressif32@ ~5.3.0 | ||
;;platformV4_packages_up = | ||
|
||
;;; experimental: latest V4 platform with latest arduino-esp32 2.0.9 + ESP-IDF 4.4.4 (may or may not work) | ||
platformV4_xp = espressif32@ ~6.3.0 | ||
platformV4_xp = espressif32@ ~6.4.0 | ||
platformV4_packages_xp = platformio/framework-arduinoespressif32 @ ~3.20009.0 ;; arduino-esp32 v2.0.9+ | ||
;; platformV4_packages_xp = platformio/framework-arduinoespressif32 @ ~3.20011.0 ;; arduino-esp32 v2.0.11 (latest one supported in platformio) | ||
|
||
build_flagsV4 = -g | ||
-DARDUINO_ARCH_ESP32 -DESP32 | ||
|
@@ -349,9 +345,8 @@ lib_depsV4 = | |
;; | ||
;; 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. | ||
platform = espressif32@5.2.0 | ||
platform = espressif32@5.3.0 | ||
platform_packages = | ||
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 | ||
build_flags = -g | ||
-Wshadow=compatible-local ;; emit warning in case a local variable "shadows" another local one | ||
-DARDUINO_ARCH_ESP32 -DESP32 | ||
|
@@ -366,9 +361,8 @@ lib_deps = | |
|
||
[esp32s2] | ||
;; generic definitions for all ESP32-S2 boards | ||
platform = espressif32@5.2.0 | ||
platform = espressif32@5.3.0 | ||
platform_packages = | ||
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 | ||
build_flags = -g | ||
-DARDUINO_ARCH_ESP32 -DESP32 ;; WLEDMM | ||
-DARDUINO_ARCH_ESP32S2 | ||
|
@@ -388,9 +382,8 @@ lib_deps = | |
|
||
[esp32c3] | ||
;; generic definitions for all ESP32-C3 boards | ||
platform = espressif32@5.2.0 | ||
platform = espressif32@5.3.0 | ||
platform_packages = | ||
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 | ||
build_flags = -g | ||
-DARDUINO_ARCH_ESP32 -DESP32 ;; WLEDMM | ||
-DARDUINO_ARCH_ESP32C3 | ||
|
@@ -409,9 +402,8 @@ lib_deps = | |
|
||
[esp32s3] | ||
;; generic definitions for all ESP32-S3 boards | ||
platform = espressif32@5.2.0 | ||
platform = espressif32@5.3.0 | ||
platform_packages = | ||
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 | ||
build_flags = -g | ||
-DESP32 | ||
-DARDUINO_ARCH_ESP32 | ||
|
@@ -461,7 +453,7 @@ lib_deps = ${esp8266.lib_deps} | |
; 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 | ||
; ; -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:esp07] | ||
|
@@ -512,6 +504,21 @@ lib_deps = ${esp32.lib_deps} | |
monitor_filters = esp32_exception_decoder | ||
board_build.partitions = ${esp32.default_partitions} | ||
|
||
;WLEDMM: use WLEDMM build environments | ||
; [env:esp32dev_audioreactive] | ||
; 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_audioreactive #-D WLED_DISABLE_BROWNOUT_DET | ||
; ${esp32.AR_build_flags} | ||
; lib_deps = ${esp32.lib_deps} | ||
; ${esp32.AR_lib_deps} | ||
; monitor_filters = esp32_exception_decoder | ||
; board_build.partitions = ${esp32.default_partitions} | ||
; ; board_build.f_flash = 80000000L | ||
; ; board_build.flash_mode = dio | ||
|
||
[env:esp32dev_qio80] | ||
board = esp32dev | ||
platform = ${esp32.platform} | ||
|
@@ -545,7 +552,8 @@ 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_ESPNOW | ||
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_ESPNOW ;; ESP-NOW requires wifi, may crash with ethernet only | ||
lib_deps = ${esp32.lib_deps} | ||
board_build.partitions = ${esp32.default_partitions} | ||
|
||
|
@@ -559,6 +567,7 @@ 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} | ||
|
||
|
@@ -569,8 +578,9 @@ platform_packages = ${esp32c3.platform_packages} | |
framework = arduino | ||
board = esp32-c3-devkitm-1 | ||
board_build.partitions = tools/WLED_ESP32_4MB_1MB_FS.csv | ||
build_flags = ${common.build_flags} ${esp32c3.build_flags} #-D WLED_RELEASE_NAME=ESP32-C3 | ||
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 | ||
|
@@ -584,10 +594,10 @@ 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} | ||
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=0 ;; for boards with USB-OTG connector only (USBCDC or "TinyUSB") | ||
;-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} | ||
board_build.partitions = tools/WLED_ESP32_8MB.csv | ||
|
@@ -596,19 +606,18 @@ 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 | ||
[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 line adds PSRAM support | ||
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} | ||
build_flags = ${common.build_flags} ${esp32s3.build_flags} | ||
-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=0 ;; for boards with USB-OTG connector only (USBCDC or "TinyUSB") | ||
-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 | ||
-D WLED_USE_PSRAM -DBOARD_HAS_PSRAM ; tells WLED that PSRAM shall be used | ||
lib_deps = ${esp32s3.lib_deps} | ||
|
@@ -617,6 +626,13 @@ board_build.f_flash = 80000000L | |
board_build.flash_mode = qio | ||
monitor_filters = esp32_exception_decoder | ||
|
||
[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} | ||
|
@@ -685,7 +701,7 @@ platform_packages = ${esp32s2.platform_packages} | |
board = lolin_s2_mini | ||
board_build.partitions = tools/WLED_ESP32_4MB_1MB_FS.csv | ||
build_unflags = ${common.build_unflags} #-DARDUINO_USB_CDC_ON_BOOT=1 | ||
build_flags = ${common.build_flags} ${esp32s2.build_flags} #-D WLED_RELEASE_NAME=LolinS2 | ||
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 | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.