From b05229936d848e4012bef5e781a82c2296410792 Mon Sep 17 00:00:00 2001 From: Ewoud Date: Fri, 16 Dec 2022 20:48:58 +0100 Subject: [PATCH] Platformio: add more wemos shield 16MB entries and improve/cleanup Platformio: - Add wemos_shield_esp32_16MB configs - Improve/cleanup some comments - Create entries for shield mics/linein and 16MB board - Reuse these entries (SPM1423, ICS4343x, LineIn, 16MB) --- platformio.ini | 146 +++++++++++++++++++++++-------------------------- 1 file changed, 67 insertions(+), 79 deletions(-) diff --git a/platformio.ini b/platformio.ini index 45989902..2a66f9d0 100644 --- a/platformio.ini +++ b/platformio.ini @@ -39,9 +39,9 @@ ; MoonModules entries ; =================== -; default_envs = esp32_4MB_min, esp32_4MB_max, esp32_16MB_max, 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, esp32_pico_4MB_max +default_envs = esp32_4MB_min, esp32_4MB_max, esp32_16MB_max, 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_LineIn_max, esp32_pico_4MB_max ; default_envs = esp32_4MB_min -default_envs = esp32_4MB_max ; recommended default +; default_envs = esp32_4MB_max ; recommended default ; default_envs = esp32_16MB_max ; default_envs = esp8266_4MB_min ; default_envs = esp32_4MB_V4_min @@ -54,6 +54,9 @@ default_envs = esp32_4MB_max ; recommended default ; default_envs = wemos_shield_esp32_4MB_SPM1423_max ; default_envs = wemos_shield_esp32_4MB_LineIn_max ; default_envs = wemos_shield_esp32_16MB_max +; default_envs = wemos_shield_esp32_16MB_ICS4343x_max +; default_envs = wemos_shield_esp32_16MB_SPM1423_max +; default_envs = wemos_shield_esp32_16MB_LineIn_max ; default_envs = esp32_pico_4MB_max @@ -628,7 +631,7 @@ lib_deps_max = ; base entries (without WLED_RELEASE_NAME) -; esp32_4MB_min_base: basis for min entries and for max_base +; common defaults for all MM environments [esp32_4MB_min_base] board = esp32dev platform = ${esp32.platform} @@ -641,7 +644,7 @@ 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) -;esp32_4MB_max_base: basis for max entries, uses esp32_4MB_min_base, build_flags_max and lib_deps_max +;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} @@ -649,7 +652,7 @@ 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_V4_max_base: basis for V4 entries, uses build_flags_min, build_flags_max, lib_deps_min and lib_deps_max +;common default for all V4 min environments [esp32_4MB_V4_min_base] board = esp32dev upload_speed = 460800 ; or 921600 @@ -671,63 +674,58 @@ 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] +board = esp32_twilord ; "TwilightLord" ESP32 with 16MB Flash +board_build.partitions = tools/WLED_ESP32_16MB.csv ; for esp32_twilord with 16MB flash + + ; end of base entries + ; bin entries (with WLED_RELEASE_NAME) -; esp32_4MB_min: bin entry, uses esp32_4MB_min_base [env:esp32_4MB_min] extends = esp32_4MB_min_base build_flags = ${esp32_4MB_min_base.build_flags} - -D WLED_RELEASE_NAME=esp32_4MB_min ; This will be included in the firmware.bin filename + -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) - ; -D WLED_DISABLE_LOXONE - ; -D WLED_DISABLE_ALEXA - ; -D WLED_DISABLE_HUESYNC - ; -D WLED_DISABLE_MQTT - ; -D WLED_DISABLE_INFRARED - ; -D WLED_ENABLE_DMX - ; -D WLED_DEBUG - ; -D SR_DEBUG - ; -D MIC_LOGGER -; esp32_4MB_max: bin entry, uses esp32_4MB_max_base [env:esp32_4MB_max] extends = esp32_4MB_max_base build_flags = ${esp32_4MB_max_base.build_flags} - -D WLED_RELEASE_NAME=esp32_4MB_max ; This will be included in the firmware.bin filename + -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) - ; -D WLED_DEBUG - ; -D SR_DEBUG - ; -D MIC_LOGGER -; esp32_16MB_max: bin entry, uses esp32_4MB_max_base and adds 16MB settings [env:esp32_16MB_max] -extends = esp32_4MB_max_base -board = esp32_twilord ; "TwilightLord" ESP32 with 16MB Flash -board_build.partitions = tools/WLED_ESP32_16MB.csv ; for esp32_twilord with 16MB flash +extends = esp32_4MB_max_base, Board_ESP32_16MB build_flags = ${esp32_4MB_max_base.build_flags} - -D WLED_RELEASE_NAME=esp32_16MB_max ; This will be included in the firmware.bin filename + -D WLED_RELEASE_NAME=esp32_16MB_max ; RAM: [== ] 24.4% (used 79804 bytes from 327680 bytes) ; Flash: [======= ] 66.5% (used 1394813 bytes from 2097152 bytes) - ; -D WLED_DEBUG - ; -D SR_DEBUG - ; -D MIC_LOGGER - ; -D WLED_DISABLE_LOXONE - ; -D WLED_DISABLE_ALEXA - ; -D WLED_DISABLE_HUESYNC - ; -D WLED_DISABLE_MQTT - ; -D WLED_DISABLE_INFRARED ;lib_ignore = IRremoteESP8266 ; use with WLED_DISABLE_INFRARED for faster compilation -; esp8266_4MB_min: bin entry for 8266, with 2D (WIP) [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 ; This will be included in the firmware.bin filename + -D WLED_RELEASE_NAME=esp8266_4MB_min ; -D WLED_DEBUG -D WLED_DISABLE_ALEXA -D WLED_DISABLE_BLYNK @@ -746,11 +744,11 @@ build_flags = ${common.build_flags_esp8266} ;; 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) -; esp32_4MB_V4_min: bin entry compiled with ESP-IDF 4.4.1, uses esp32_4MB_V4_min_base +; 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 ; This will be included in the firmware.bin filename + -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 @@ -765,11 +763,11 @@ build_flags = ${esp32_4MB_V4_min_base.build_flags} ; Flash: [========= ] 88.8% (used 1396073 bytes from 1572864 bytes) ;lib_ignore = IRremoteESP8266 ; use with WLED_DISABLE_INFRARED for faster compilation -; esp32_4MB_V4_max: bin entry compiled with ESP-IDF 4.4.1, uses esp32_4MB_V4_max_base +; 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 ; This will be included in the firmware.bin filename + -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) @@ -783,20 +781,17 @@ build_flags = ${esp32_4MB_V4_max_base.build_flags} ;-D WLED_DISABLE_INFRARED ;RAM 136 bytes; FLASH 24492 bytes ;lib_ignore = IRremoteESP8266 ; use with WLED_DISABLE_INFRARED for faster compilation -; esp32_16MB_max: bin entry compiled with ESP-IDF 4.4.1, uses esp32_4MB_V4_max_base and adds 16MB settings +; compiled with ESP-IDF 4.4.1 [env:esp32_16MB_V4_max] -extends = esp32_4MB_V4_max_base -board = esp32_twilord ; "TwilightLord" ESP32 with 16MB Flash -board_build.partitions = tools/WLED_ESP32_16MB.csv ; for esp32_twilord with 16MB flash +extends = esp32_4MB_V4_max_base, Board_ESP32_16MB build_flags = ${esp32_4MB_V4_max_base.build_flags} - -D WLED_RELEASE_NAME=esp32_16MB_V4_max ; This will be included in the firmware.bin filename + -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 ; 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). -; esp32_4MB_PSRAM_max: bin entry, uses esp32_4MB_V4_max_base and adds specific settings [env:esp32_4MB_PSRAM_max] extends = esp32_4MB_V4_max_base board = lolin_d32_pro @@ -821,7 +816,6 @@ build_flags = ${esp32_4MB_V4_max_base.build_flags} ; -D SR_DEBUG ; -D MIC_LOGGER -; esp32S3_8MB_max: bin entry, uses esp32_4MB_V4_max_base and adds specific settings. Override of lib_deps using lib_deps_min and lib_deps_max [env:esp32S3_8MB_max] extends = esp32_4MB_V4_max_base board = esp32-s3-devkitc-1 @@ -889,71 +883,65 @@ build_flags = ${esp32_4MB_max_base.build_flags} -D HW_PIN_SCL=22 -D HW_PIN_SDA=21 ; -D ENCODER_DT_PIN=18 -D ENCODER_CLK_PIN=5 -D ENCODER_SW_PIN=19 ; -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 [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 ; This will be included in the firmware.bin filename + -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} - -D WLED_RELEASE_NAME=wemos_shield_esp32_4MB_ICS4343x_max ; This will be included in the firmware.bin filename - -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 +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} - -D WLED_RELEASE_NAME=wemos_shield_esp32_4MB_SPM1423_max ; This will be included in the firmware.bin filename - -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 +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} - -D WLED_RELEASE_NAME=wemos_shield_esp32_4MB_LineIn_max ; This will be included in the firmware.bin filename - -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 +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 -board = esp32_twilord ; "TwilightLord" ESP32 with 16MB Flash -board_build.partitions = tools/WLED_ESP32_16MB.csv ; for esp32_twilord with 16MB flash +extends = wemos_shield_esp32_4MB_max_base, Board_ESP32_16MB build_flags = ${wemos_shield_esp32_4MB_max_base.build_flags} - -D WLED_RELEASE_NAME=wemos_shield_esp32_16MB_max ; This will be included in the firmware.bin filename + -D WLED_RELEASE_NAME=wemos_shield_esp32_16MB_max ; RAM: [== ] 24.4% (used 79820 bytes from 327680 bytes) ; Flash: [======= ] 66.4% (used 1393421 bytes from 2097152 bytes) -[env:wemos_shield_esp32_16MB_SPM1423_max] -extends = wemos_shield_esp32_4MB_max_base -board = esp32_twilord ; "TwilightLord" ESP32 with 16MB Flash -board_build.partitions = tools/WLED_ESP32_16MB.csv ; for esp32_twilord with 16MB flash -build_flags = ${wemos_shield_esp32_4MB_max_base.build_flags} - -D WLED_RELEASE_NAME=wemos_shield_esp32_16MB_SPM1423_max ; This will be included in the firmware.bin filename - -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 +[env:wemos_shield_esp32_16MB_ICS4343x_max] +extends = wemos_shield_esp32_4MB_max_base, Board_ESP32_16MB +build_flags = ${wemos_shield_esp32_4MB_max_base.build_flags} ${Shield_ICS4343x.build_flags} + -D WLED_RELEASE_NAME=wemos_shield_esp32_16MB_ICS4343x_max ; 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, Board_ESP32_16MB +build_flags = ${wemos_shield_esp32_4MB_max_base.build_flags} ${Shield_SPM1423.build_flags} + -D WLED_RELEASE_NAME=wemos_shield_esp32_16MB_SPM1423_max +; RAM: [== ] 24.4% (used 79820 bytes from 327680 bytes) +; Flash: [========= ] 88.6% (used 1393421 bytes from 1572864 bytes) + +[env:wemos_shield_esp32_16MB_LineIn_max] +extends = wemos_shield_esp32_4MB_max_base, Board_ESP32_16MB +build_flags = ${wemos_shield_esp32_4MB_max_base.build_flags} ${Shield_LineIn.build_flags} + -D WLED_RELEASE_NAME=wemos_shield_esp32_16MB_LineIn_max + ; 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 ; This will be included in the firmware.bin filename + -D WLED_RELEASE_NAME=esp32_pico_4MB_max -D WLED_DISABLE_BROWNOUT_DET -D SERVERNAME='"WLED-pico32"' ; -D WLED_WATCHDOG_TIMEOUT=60