Platformio: Refactor PSRAM, S3 and 8266 entries

package.json: -mmod -> _MM

platformio.ini: refactored:
   esp32mdev_PSRAM -> min_esp32_4MB_PSRAM
  esp32s3-mdev -> min_esp32S3_8MB (compile error!)
  esp8266mdev -> min_esp8266_4MB (link error!)

(using extends)

json.cpp: getMinFreeHeap not for esp8266
This commit is contained in:
Ewoud
2022-10-30 10:40:35 +01:00
parent 305c9c5566
commit 0474be3069
4 changed files with 61 additions and 42 deletions

2
package-lock.json generated
View File

@@ -1,6 +1,6 @@
{
"name": "wled",
"version": "0.14.0.1.1-mmod",
"version": "0.14.0.1.1_MM",
"lockfileVersion": 1,
"requires": true,
"dependencies": {

View File

@@ -1,6 +1,6 @@
{
"name": "wled",
"version": "0.14.0.1.1-mmod",
"version": "0.14.0.1.1_MM",
"description": "Tools for WLED project",
"main": "tools/cdata.js",
"directories": {

View File

@@ -32,17 +32,27 @@
; default_envs = esp8285_4CH_MagicHome
; default_envs = esp8285_H801
; default_envs = d1_mini_5CH_Shojo_PCB
default_envs = min_esp32_4MB, max_esp32_4MB, wemos_shield_esp32_4MB
; default_envs = max_esp32_16MB, wemos_shield_esp32_16MB
; default_envs = esp32mdev_PSRAM
; default_envs = esp32s3-mdev
; default_envs = esp8266mdev
; default_envs = m5atom
; default_envs = esp32_eth
; default_envs = esp32dev_qio80
; default_envs = esp32_eth_ota1mapp
; default_envs = esp32s2_saola
; MoonModules entries
; ===================
default_envs = min_esp32_4MB, max_esp32_4MB, wemos_shield_esp32_4MB, max_esp32_16MB, wemos_shield_esp32_16MB, min_esp32_4MB_PSRAM ; , min_esp32S3_8MB, min_esp8266_4MB
; default_envs = min_esp32_4MB_PSRAM, min_esp32S3_8MB ;min_esp8266_4MB
; default_envs = min_esp32_4MB
; default_envs = max_esp32_4MB
; default_envs = wemos_shield_esp32_4MB
; default_envs = max_esp32_16MB
; default_envs = wemos_shield_esp32_16MB
; default_envs = min_esp32_4MB_PSRAM
; default_envs = min_esp32S3_8MB ;Error: BoardConfig: Board is not defined
; default_envs = min_esp8266_4MB ;error: section `.text1' will not fit in region `iram1_0_seg'
src_dir = ./wled00
data_dir = ./wled00/data
build_cache_dir = ~/.buildcache
@@ -537,7 +547,8 @@ platform_packages = ${esp32.platform_packages}
build_unflags = ${common.build_unflags}
build_flags = ${common.build_flags_esp32}
-Wall -Wformat -Woverflow -Wuninitialized -Winit-self -Warray-bounds ; enables more warnings
-Wno-attributes -Wno-unused-variable -Wno-unused-function ; disables some stupid warnings
-Wno-attributes -Wno-unused-variable -Wno-unused-function -Wno-deprecated-declarations ;disables some stupid warnings
; -Wno-misleading-indentation ; warning: unrecognized command line option '-Wno-misleading-indentation'
-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 ABL_MILLIAMPS_DEFAULT=1500 ; 850 not enough for 1024 leds
@@ -593,11 +604,12 @@ board_build.partitions = tools/WLED_ESP32_16MB.csv ; for esp32_twilord with 16MB
build_flags = ${env:max_esp32_4MB_base.build_flags}
-D WLED_RELEASE_NAME=max_esp32_16MB ; This will be included in the firmware.bin filename
[env:esp8266mdev]
[env:min_esp8266_4MB]
extends = env:d1_mini
upload_speed = 460800 ;115200
build_flags = ${common.build_flags_esp8266}
-D WLED_DEBUG
-D WLED_RELEASE_NAME=min_esp8266_4MB ; This will be included in the firmware.bin filename
; -D WLED_DEBUG
-D WLED_DISABLE_ALEXA
-D WLED_DISABLE_BLYNK
-D WLED_DISABLE_HUESYNC
@@ -615,7 +627,8 @@ build_flags = ${common.build_flags_esp8266}
;; Warning: the build-in LittleFS 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)
;; also SpiffsEditor (Async Webserver) has known problems in IDF4.4.x
[env:esp32mdev_PSRAM]
[env:min_esp32_4MB_PSRAM]
extends = env:min_esp32_4MB_base
board = lolin_d32_pro
;board = esp32cam
; platform = ${esp32.platform}
@@ -623,45 +636,48 @@ board = lolin_d32_pro
platform = ${esp32.platformV4}
platform_packages = ${esp32.platformV4_packages}
upload_speed = 460800 ; or 921600
build_unflags = ${common.build_unflags}
; upload_speed = 460800 ; or 921600
; build_unflags = ${common.build_unflags}
;build_flags = ${common.build_flags} ${esp32.build_flags}
build_flags = ${common.build_flags} ${esp32.build_flagsV4}
-D WLED_RELEASE_NAME=ESP32 -D WLED_WATCHDOG_TIMEOUT=0 #-D WLED_DISABLE_BLYNK #-D WLED_DISABLE_BROWNOUT_DET
-D WLED_RELEASE_NAME=min_esp32_4MB_PSRAM
-D WLED_WATCHDOG_TIMEOUT=0 #-D WLED_DISABLE_BLYNK #-D WLED_DISABLE_BROWNOUT_DET
-D ARDUINO_USB_CDC_ON_BOOT=0 ; needed for arduino-esp32 >=2.0.4; avoids errors on startup
-Wall -Wformat -Woverflow -Wuninitialized -Winit-self -Warray-bounds ; enables more warnings
-Wno-attributes -Wno-misleading-indentation -Wno-unused-variable -Wno-unused-function -Wno-deprecated-declarations ; disables some stupid warnings
; -Wall -Wformat -Woverflow -Wuninitialized -Winit-self -Warray-bounds ; enables more warnings
; -Wno-attributes -Wno-misleading-indentation -Wno-unused-variable -Wno-unused-function -Wno-deprecated-declarations ; disables some stupid warnings
-D WLED_USE_PSRAM
-D ABL_MILLIAMPS_DEFAULT=1500 ; 850 not enough for 1024 leds
-D WLED_USE_MY_CONFIG
-D USERMOD_CUSTOMEFFECTS
-D USERMOD_AUDIOREACTIVE
-D UM_AUDIOREACTIVE_USE_NEW_FFT
; -D ABL_MILLIAMPS_DEFAULT=1500 ; 850 not enough for 1024 leds
; -D WLED_USE_MY_CONFIG
; -D USERMOD_CUSTOMEFFECTS
; -D USERMOD_AUDIOREACTIVE
; -D UM_AUDIOREACTIVE_USE_NEW_FFT
; -D WLED_DEBUG
; -D SR_DEBUG
;lib_deps = ${esp32.lib_deps}
lib_deps = ${esp32.lib_depsV4}
https://github.com/kosme/arduinoFFT#develop @ 1.9.2
; https://github.com/kosme/arduinoFFT#develop @ 1.9.2
monitor_filters = esp32_exception_decoder
board_build.partitions = ${esp32.default_partitions}
board_build.f_flash = 80000000L
board_build.flash_mode = dio
; monitor_filters = esp32_exception_decoder
; board_build.partitions = ${esp32.default_partitions}
; board_build.f_flash = 80000000L
; board_build.flash_mode = dio
[env:esp32S3mdev]
[env:min_esp32S3_8MB]
extends = env:min_esp32_4MB_base
board = esp32-s3-devkitc-1
platform = ${esp32.platformV4}
platform_packages = ${esp32.platformV4_packages}
upload_speed = 460800 ; or 921600
; upload_speed = 460800 ; or 921600
build_unflags = ${common.build_unflags}
build_flags = ${common.build_flags} ${esp32s3.build_flags} -D WLED_RELEASE_NAME=ESP32S3 #-D WLED_DISABLE_BLYNK #-D WLED_DISABLE_BROWNOUT_DET
build_flags = ${common.build_flags} ${esp32s3.build_flags}
-D WLED_RELEASE_NAME=min_esp32S3_8MB
#-D WLED_DISABLE_BLYNK #-D WLED_DISABLE_BROWNOUT_DET
-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
-Wall -Wformat -Woverflow -Wuninitialized -Winit-self -Warray-bounds ; enables more warnings
-Wno-attributes -Wno-misleading-indentation -Wno-unused-variable -Wno-unused-function -Wno-deprecated-declarations ; disables some stupid warnings
; -Wall -Wformat -Woverflow -Wuninitialized -Winit-self -Warray-bounds ; enables more warnings
; -Wno-attributes -Wno-misleading-indentation -Wno-unused-variable -Wno-unused-function -Wno-deprecated-declarations ; disables some stupid warnings
-D WLED_WATCHDOG_TIMEOUT=0
-D ABL_MILLIAMPS_DEFAULT=1500 ; 850 not enough for 1024 leds
; -D ABL_MILLIAMPS_DEFAULT=1500 ; 850 not enough for 1024 leds
-D LEDPIN=4
-D STATUSLED=39
-D BTNPIN=-1
@@ -669,11 +685,11 @@ build_flags = ${common.build_flags} ${esp32s3.build_flags} -D WLED_RELEASE_NAME
-D IRPIN=-1
-D HW_PIN_SDA=40
-D HW_PIN_SCL=41
-D WLED_USE_MY_CONFIG
-D USERMOD_CUSTOMEFFECTS
; -D WLED_USE_MY_CONFIG
; -D USERMOD_CUSTOMEFFECTS
;; for audioreactive usermod
-D USERMOD_AUDIOREACTIVE
-D UM_AUDIOREACTIVE_USE_NEW_FFT
; -D USERMOD_AUDIOREACTIVE
; -D UM_AUDIOREACTIVE_USE_NEW_FFT
-D AUDIOPIN=-1
-D I2S_SDPIN=16
-D I2S_CKPIN=17
@@ -683,14 +699,14 @@ build_flags = ${common.build_flags} ${esp32s3.build_flags} -D WLED_RELEASE_NAME
lib_deps = ${esp32s3.lib_deps}
;; for audioreactive usermod
https://github.com/kosme/arduinoFFT#develop @ 1.9.2
; https://github.com/kosme/arduinoFFT#develop @ 1.9.2
board_build.partitions = tools/WLED_ESP32_8MB.csv
; board_build.flash_mode = dio
board_build.flash_mode = qio
board_build.f_flash = 80000000L
; board_build.flash_mode = qio
; board_build.f_flash = 80000000L
; board_build.f_flash = 120000000L
monitor_filters = esp32_exception_decoder
; monitor_filters = esp32_exception_decoder
# ------------------------------------------------------------------------------
# custom board configurations

View File

@@ -783,7 +783,10 @@ void serializeInfo(JsonObject root)
#endif
root[F("freeheap")] = ESP.getFreeHeap();
root[F("minfreeheap")] = ESP.getMinFreeHeap();
//WLEDSR: conditional on esp32
#if defined(ARDUINO_ARCH_ESP32)
root[F("minfreeheap")] = ESP.getMinFreeHeap();
#endif
#if defined(ARDUINO_ARCH_ESP32) && defined(WLED_USE_PSRAM) && defined(BOARD_HAS_PSRAM)
if (psramFound()) {
root[F("tpram")] = ESP.getPsramSize(); //WLEDSR