From a257733b3d16db09d81a0afbb428f45372b837a8 Mon Sep 17 00:00:00 2001 From: proddy Date: Sun, 1 Sep 2024 11:08:05 +0200 Subject: [PATCH] pio cleanup --- pio_local.ini_example | 16 ++----- platformio.ini | 98 ++++++++++++++----------------------------- 2 files changed, 35 insertions(+), 79 deletions(-) diff --git a/pio_local.ini_example b/pio_local.ini_example index ddaf2118d..c77b2b619 100644 --- a/pio_local.ini_example +++ b/pio_local.ini_example @@ -16,10 +16,8 @@ ; my_build_flags = -DEMSESP_DEBUG -DEMSESP_TEST -DEMSESP_PINGTEST [platformio] -; default_envs = s_4M ; default_envs = s_16M_P ; BBQKees E32V2 -; default_envs = s3_16M ; BBQKees S3 -; default_envs = c3_mini_4M +default_envs = s3_16M_P ; BBQKees S3 ; default_envs = native ; default_envs = debug @@ -30,8 +28,8 @@ ; upload_port = /dev/ttyUSB* ; for OTA add scripts/upload.py to extra_scripts upload_protocol = custom -; custom_emsesp_ip = 10.10.10.175 -custom_emsesp_ip = 192.168.1.23 +custom_emsesp_ip = 10.10.10.175 +; custom_emsesp_ip = 192.168.1.23 ; custom_emsesp_ip = ems-esp.local custom_username = admin custom_password = admin @@ -45,19 +43,13 @@ extra_scripts = ; pre:scripts/refresh_module_library_native.py post:scripts/run_native.py -[env:s3_16M] -extra_scripts = - pre:scripts/build_interface.py ; comment out if you don't want to re-build the WebUI each time - scripts/rename_fw.py - scripts/upload.py - [env:s_16M_P] extra_scripts = pre:scripts/build_interface.py ; comment out if you don't want to re-build the WebUI each time scripts/rename_fw.py scripts/upload.py -[env:c3_mini_4M] +[env:s3_16M_P] extra_scripts = pre:scripts/build_interface.py ; comment out if you don't want to re-build the WebUI each time scripts/rename_fw.py diff --git a/platformio.ini b/platformio.ini index 6cd6c4b01..0a745d9a9 100644 --- a/platformio.ini +++ b/platformio.ini @@ -43,7 +43,8 @@ framework = arduino board_build.filesystem = littlefs build_flags = ${common.build_flags} -build_unflags = ${common.unbuild_flags} +build_unflags = + ${common.unbuild_flags} extra_scripts = pre:scripts/build_interface.py scripts/rename_fw.py @@ -51,18 +52,15 @@ extra_scripts = [espressi32_base_tasmota] ; use Tasmota's library for 4MB variants ; it removes some unused libs (like mbedtsl, so no WiFi_secure.h) and increases available heap -; Tasmota Arduino Core 2.0.17 with IPv6 support, based on IDF 4.4.7 -; platform = https://github.com/tasmota/platform-espressif32/releases/download/2024.05.00/platform-espressif32.zip ; Tasmota Arduino Core 2.0.18 with IPv6 support, based on IDF 4.4.8 platform = https://github.com/tasmota/platform-espressif32/releases/download/2024.06.00/platform-espressif32.zip -; Tasmota Arduino Core 3.0.1.240605 based on IDF v5.1.4.240602 -; platform = https://github.com/tasmota/platform-espressif32/releases/download/2024.06.10/platform-espressif32.zip framework = arduino board_build.filesystem = littlefs build_flags = ${common.build_flags} -DTASMOTA_SDK -build_unflags = ${common.unbuild_flags} +build_unflags = + ${common.unbuild_flags} extra_scripts = pre:scripts/build_interface.py scripts/rename_fw.py @@ -82,7 +80,7 @@ lib_deps = https://github.com/emsesp/EMS-ESP-Modules.git ; -; build for GitHub Actions CI +; builds for GitHub Actions CI ; ; the Web interface is built seperately during the GH Action so is skipped (not included in extra_scripts) ; @@ -91,30 +89,27 @@ lib_deps = extends = espressi32_base_tasmota extra_scripts = scripts/rename_fw.py board = esp32dev +board_upload.flash_size = 4MB board_build.partitions = esp32_partition_4M.csv -build_flags = - ${espressi32_base_tasmota.build_flags} +board_build.extra_flags = '-DEMSESP_DEFAULT_BOARD_PROFILE="S32"' [env:ci_s_16M] ; 16MB ESP32 - using Tasmota - no SSL, no PSRAM - like the BBQKees older S32 models extends = espressi32_base_tasmota extra_scripts = scripts/rename_fw.py board = esp32dev +board_upload.flash_size = 16MB board_build.partitions = esp32_partition_16M.csv -build_flags = - ${espressi32_base_tasmota.build_flags} - '-DEMSESP_DEFAULT_BOARD_PROFILE="S32"' +board_build.extra_flags = '-DEMSESP_DEFAULT_BOARD_PROFILE="S32"' [env:ci_s_16M_P] ; 16MB ESP32 - with PSRAM - like BBQKees E32V2 extends = espressi32_base extra_scripts = scripts/rename_fw.py board = esp32dev +board_upload.flash_size = 16MB board_build.partitions = esp32_partition_16M.csv -board_build.extra_flags = -DBOARD_HAS_PSRAM -build_flags = - ${espressi32_base.build_flags} - '-DEMSESP_DEFAULT_BOARD_PROFILE="E32V2"' +board_build.extra_flags = -DBOARD_HAS_PSRAM '-DEMSESP_DEFAULT_BOARD_PROFILE="E32V2"' [env:ci_s3_16M_P] ; 16MB ESP32-S3 - with PSRAM - like BBQKees S3 @@ -124,44 +119,41 @@ board = lolin_s3 board_build.f_cpu = 240000000L board_upload.flash_size = 16MB board_build.partitions = esp32_partition_16M.csv -build_unflags = ${common.unbuild_flags} -build_flags = - ${espressi32_base.build_flags} - '-DEMSESP_DEFAULT_BOARD_PROFILE="S32S3"' +board_build.extra_flags = -DBOARD_HAS_PSRAM '-DEMSESP_DEFAULT_BOARD_PROFILE="S32S3"' ; ; Direct builds ; +; For board params see jsonb files in https://github.com/platformio/platform-espressif32/tree/master/boards +; [env:s_4M] extends = espressi32_base_tasmota board = esp32dev board_upload.flash_size = 4MB board_build.partitions = esp32_partition_4M.csv -build_flags = - ${espressi32_base_tasmota.build_flags} +board_build.extra_flags = '-DEMSESP_DEFAULT_BOARD_PROFILE="S32"' [env:s_asym_4M] extends = espressi32_base_tasmota board = esp32dev board_upload.flash_size = 4MB board_build.partitions = esp32_asym_partition_4M.csv +board_build.extra_flags = '-DEMSESP_DEFAULT_BOARD_PROFILE="S32"' [env:s_16M_P] extends = espressi32_base board = esp32dev -board_build.extra_flags = -DBOARD_HAS_PSRAM board_upload.flash_size = 16MB board_build.partitions = esp32_partition_16M.csv +board_build.extra_flags = -DBOARD_HAS_PSRAM '-DEMSESP_DEFAULT_BOARD_PROFILE="S32"' [env:c3_mini_4M] extends = espressi32_base_tasmota board = lolin_c3_mini board_upload.flash_size = 4MB board_build.partitions = esp32_partition_4M.csv -build_flags = - ${espressi32_base_tasmota.build_flags} - '-DEMSESP_DEFAULT_BOARD_PROFILE="C3MINI"' +board_build.extra_flags = '-DEMSESP_DEFAULT_BOARD_PROFILE="C3MINI"' ; lolin C3 mini v1 needs special wifi init. ; https://www.wemos.cc/en/latest/c3/c3_mini_1_0_0.html#about-wifi @@ -170,60 +162,32 @@ extends = espressi32_base_tasmota board = lolin_c3_mini board_upload.flash_size = 4MB board_build.partitions = esp32_partition_4M.csv -build_flags = - ${espressi32_base_tasmota.build_flags} - -DBOARD_C3_MINI_V1 - '-DEMSESP_DEFAULT_BOARD_PROFILE="C3MINI"' +board_build.extra_flags = -DBOARD_C3_MINI_V1 '-DEMSESP_DEFAULT_BOARD_PROFILE="C3MINI"' [env:s2_4M] extends = espressi32_base_tasmota board = lolin_s2_mini board_upload.flash_size = 4MB board_build.partitions = esp32_partition_4M.csv -build_flags = - ${espressi32_base_tasmota.build_flags} - '-DEMSESP_DEFAULT_BOARD_PROFILE="S2MINI"' +board_build.extra_flags = '-DEMSESP_DEFAULT_BOARD_PROFILE="S2MINI"' -[env:s3_16M] +[env:s3_16M_P] extends = espressi32_base board = lolin_s3 -board_build.f_cpu = 240000000L -board_upload.flash_size = 16MB -board_build.partitions = esp32_partition_16M.csv board_upload.use_1200bps_touch = false board_upload.wait_for_upload_port = false -build_flags = - ${espressi32_base.build_flags} - '-DEMSESP_DEFAULT_BOARD_PROFILE="S32S3"' - -[env:s3_32M] -extends = espressi32_base -board = lolin_s3 -board_build.f_cpu = 240000000L -board_upload.flash_size = 32MB -board_build.partitions = esp32_partition_32M.csv -board_build.flash_mode = opi -board_build.arduino.memory_type: opi_opi -build_unflags = ${common.unbuild_flags} -build_flags = - ${espressi32_base.build_flags} - '-DEMSESP_DEFAULT_BOARD_PROFILE="S32S3"' - -# for testing against the latest Arduino core v3 with IDF 5.1 -[env:espressi32_v3] -platform = espressif32 -platform_packages= - platformio/framework-arduinoespressif32 @ https://github.com/espressif/arduino-esp32.git#3.0.1 - platformio/framework-arduinoespressif32-libs @ https://github.com/espressif/esp32-arduino-libs.git#idf-release/v5.1 -framework = arduino -board = esp32dev -board_build.filesystem = littlefs board_upload.flash_size = 16MB board_build.partitions = esp32_partition_16M.csv -board_build.extra_flags = -DBOARD_HAS_PSRAM -build_flags = - ${common.build_flags} -build_unflags = ${common.unbuild_flags} +board_build.extra_flags = -DBOARD_HAS_PSRAM '-DEMSESP_DEFAULT_BOARD_PROFILE="S32S3"' + +[env:s3_32M_P] +extends = espressi32_base +board = lolin_s3 +board_build.arduino.memory_type: opi_opi +board_build.flash_mode = opi +board_upload.flash_size = 32MB +board_build.partitions = esp32_partition_32M.csv +board_build.extra_flags = -DBOARD_HAS_PSRAM '-DEMSESP_DEFAULT_BOARD_PROFILE="S32S3"' ; ; Building and testing natively, standalone without an ESP32.