mirror of
https://github.com/emsesp/EMS-ESP32.git
synced 2026-10-28 11:14:58 +00:00
update changelog, use new core libs
This commit is contained in:
@@ -22,10 +22,10 @@ jobs:
|
||||
with:
|
||||
python-version: '3.13'
|
||||
|
||||
- name: Install PlatformIO
|
||||
- name: Install pioarduino
|
||||
run: |
|
||||
pip install wheel
|
||||
pip install -U platformio
|
||||
pip install -U "pioarduino==6.2.0"
|
||||
|
||||
- name: Run unit tests
|
||||
run: |
|
||||
|
||||
@@ -38,10 +38,10 @@ jobs:
|
||||
version=`grep -E '^#define EMSESP_APP_VERSION' ./src/emsesp_version.h | awk -F'"' '{print $2}'`
|
||||
echo "VERSION=$version" >> $GITHUB_OUTPUT
|
||||
|
||||
- name: Install PlatformIO
|
||||
- name: Install pioarduino
|
||||
run: |
|
||||
python -m pip install --upgrade pip
|
||||
pip install -U platformio
|
||||
pip install -U "pioarduino==6.2.0"
|
||||
python -m pip install intelhex
|
||||
|
||||
- name: Build webUI
|
||||
|
||||
@@ -39,10 +39,10 @@ jobs:
|
||||
version=`grep -E '^#define EMSESP_APP_VERSION' ./src/emsesp_version.h | awk -F'"' '{print $2}'`
|
||||
echo "VERSION=$version" >> $GITHUB_OUTPUT
|
||||
|
||||
- name: Install PlatformIO
|
||||
- name: Install pioarduino
|
||||
run: |
|
||||
python -m pip install --upgrade pip
|
||||
pip install -U platformio
|
||||
pip install -U "pioarduino==6.2.0"
|
||||
python -m pip install intelhex
|
||||
|
||||
- name: Build webUI
|
||||
|
||||
+1
-1
@@ -74,5 +74,5 @@ This release is based on the latest Espressif/Arduino core version 3. It brings
|
||||
- failed versions.json fetches back off from 5 up to 160 minutes instead of retrying every 5 minutes, as each attempt blocks the main loop for as long as the DNS, connect and read timeouts allow
|
||||
- optimized the LED library to support WS2812B V5 and the newer V6 RGB LEDs
|
||||
- hold Tx while a K30RF/KM200 gateway is syncing [#3094](https://github.com/emsesp/EMS-ESP32/issues/3094)
|
||||
- Tasmota platform 2026.05.50 (Arduino 3.3.8 / IDF 5.5.4) to 2026.09.50 (Arduino 3.3.12 / IDF 5.5.5)
|
||||
- Tasmota platform 2026.05.50 (Arduino 3.3.8 / IDF 5.5.4) to 2026.09.50 (Arduino 3.3.12 / IDF 5.5.5). Building that platform needs PlatformIO Core ≥6.2.0; install `pioarduino==6.2.0` (official `platformio` is still 6.1.19). See CONTRIBUTING.md
|
||||
- CI dev-release firmware jobs run in parallel (webUI, firmware targets, standalone) instead of one serial job
|
||||
|
||||
@@ -10,6 +10,40 @@ Everybody is welcome and invited to contribute to the EMS-ESP Project by:
|
||||
|
||||
This document describes rules that are in effect for this repository, meant for handling issues by contributors in the issue tracker and PRs.
|
||||
|
||||
## Building the firmware
|
||||
|
||||
Arduino/IDF 3.3.12 (Tasmota platform `2026.09.50` in `platformio.ini`) needs **PlatformIO Core ≥6.2.0**. The official `platformio` package on PyPI is still 6.1.19, so `pio upgrade` and `pip install -U platformio` stay on 6.1.19 and you get:
|
||||
|
||||
`IncompatiblePlatform: Development platform 'espressif32' is not compatible with PlatformIO Core v6.1.19 and depends on PlatformIO Core >=6.2.0.`
|
||||
|
||||
Install **pioarduino** 6.2.0 (drop-in Core fork). It provides the same `pio` / `platformio` commands.
|
||||
|
||||
**VS Code / Cursor** (PlatformIO IDE uses `~/.platformio/penv`):
|
||||
|
||||
Linux / macOS:
|
||||
|
||||
```bash
|
||||
~/.platformio/penv/bin/pip install -U "pioarduino==6.2.0"
|
||||
~/.platformio/penv/bin/pio --version
|
||||
```
|
||||
|
||||
Windows (PowerShell):
|
||||
|
||||
```powershell
|
||||
& "$env:USERPROFILE\.platformio\penv\Scripts\pip.exe" install -U "pioarduino==6.2.0"
|
||||
& "$env:USERPROFILE\.platformio\penv\Scripts\pio.exe" --version
|
||||
```
|
||||
|
||||
You should see `PlatformIO Core, version 6.2.0`. Reload the window (or restart the IDE), then build again.
|
||||
|
||||
**CLI-only / CI:**
|
||||
|
||||
```bash
|
||||
pip install -U "pioarduino==6.2.0"
|
||||
# or: uv pip install --system pioarduino==6.2.0
|
||||
platformio --version
|
||||
```
|
||||
|
||||
## Opening New Issues
|
||||
|
||||
1. Opening an issue means that a problem exists in the code and should be addressed by the project contributors.
|
||||
|
||||
@@ -0,0 +1,109 @@
|
||||
; example custom platformio ini file for EMS-ESP
|
||||
|
||||
[common]
|
||||
; custom build flags to use in my_build_flags
|
||||
; -DEMSESP_UART_DEBUG ; debugging UART
|
||||
; -DEMSESP_DEBUG ; enables DEBUG to the log. Will generate a lot of extra traffic on Console and Syslog
|
||||
; -DEMSESP_DEFAULT_BOARD_PROFILE=\"NODEMCU\" ; hard code the default board name
|
||||
; -DEMSESP_DEBUG_SENSOR ; additional debug for the sensors
|
||||
; -DCORE_DEBUG_LEVEL=5 ; verbose core level debugging 5=verbose, 4=debug, 3=info
|
||||
; -DEMSESP_TEST ; enable the tests. EN language only
|
||||
; -DEMSESP_DE_ONLY ; only DE translated entity names
|
||||
; -DEMSESP_EN_ONLY ; only EN translated entity names
|
||||
; -DEMSESP_PINGTEST ; send log message every 1/2 second
|
||||
|
||||
; my_build_flags = -DEMSESP_TEST -DEMSESP_DEBUG
|
||||
; my_build_flags = -DEMSESP_DEBUG -DEMSESP_TEST -DEMSESP_PINGTEST
|
||||
; my_build_flags = -DEMSESP_DEBUG -DCORE_DEBUG_LEVEL=5
|
||||
; my_build_flags = -DEMSESP_EN_ONLY -DEMSESP_TEST -DCORE_DEBUG_LEVEL=5 -DARDUINO_USB_CDC_ON_BOOT=1
|
||||
; my_build_flags = -DEMSESP_EN_ONLY
|
||||
; my_build_flags = -DEMSESP_DEBUG
|
||||
; my_build_flags =
|
||||
; -D EMSESP_GATEWAY_TX_HOLD ; hold Tx while a K30RF/KM200 gateway is syncing, see issue #3094
|
||||
; -D EMSESP_TX_PRE_DELAY=1000 ; wait this many us before each Tx so we don't overlap the master's break, see issue #3094
|
||||
|
||||
my_build_flags =
|
||||
|
||||
[platformio]
|
||||
default_envs = s_16M_P ; BBQKees E32V2
|
||||
; default_envs = s_16M_P_custom ; BBQKees E32V2 with custom Arduino/IDF libs
|
||||
; default_envs = recovery_s_16M_P ; recovery
|
||||
; default_envs = crashtest_s_16M_P ; crash test
|
||||
; default_envs = build-webUI ; build the web interface only
|
||||
; default_envs = s3_16M_P ; BBQKees S3
|
||||
; default_envs = s_4M ; BBQKees older S32, 4MB no psram
|
||||
; default_envs = s_16M ; BBQKees newer S32 V2, 16MB no psram
|
||||
; default_envs = c6 ; XIAO ESP32C
|
||||
; default_envs = debug
|
||||
|
||||
; default_envs = core3
|
||||
; default_envs = core2
|
||||
|
||||
[env]
|
||||
|
||||
; uncomment if you want to upload the firmware via OTA (must have upload_protocol = custom)
|
||||
extra_scripts =
|
||||
post:scripts/rename_fw.py ; renames the firmware .bin file
|
||||
scripts/upload.py ; optionally upload the firmware via OTA (must have upload_protocol = custom)
|
||||
|
||||
; set the username and password for the admin account (default password is admin)
|
||||
custom_username = admin
|
||||
custom_password = admin
|
||||
|
||||
; ** upload settings **
|
||||
; for direct USB, which is the default you can set an optional port for example:
|
||||
; upload_port = /dev/ttyUSB0
|
||||
; upload_port = /dev/ttyACM0
|
||||
|
||||
; CH340G bridge tops out here reliably; drop back to 460800 if uploads fail
|
||||
; upload_speed = 921600
|
||||
upload_speed = 2000000
|
||||
|
||||
; for direct via HTTP (OTA) set:
|
||||
; upload_protocol = custom
|
||||
; custom_emsesp_ip = <ip address> or ems-esp.local
|
||||
|
||||
upload_protocol = custom
|
||||
|
||||
; custom_emsesp_ip = ems-esp.local ; E32V2.2 (test)
|
||||
; custom_emsesp_ip = 192.168.1.39 ; E32V2.2 (test)
|
||||
; custom_emsesp_ip = 192.168.1.75 ; E32V2.2 (test) v3.8.4
|
||||
|
||||
custom_emsesp_ip = ems-espP.local ; E32V2.2 (prod)
|
||||
; custom_emsesp_ip = 10.10.10.202 ; E32V2.2 (prod)
|
||||
|
||||
; custom_emsesp_ip = ems-esps32.local ; S32, 4MB no psramS32
|
||||
; custom_emsesp_ip = ems-espS3.local ; ems-espS3
|
||||
; custom_emsesp_ip = 10.10.10.175 ; Wemos Lolin S3
|
||||
|
||||
; lib_deps =
|
||||
; bblanchon/ArduinoJson @ 7.4.3
|
||||
; ESP32Async/AsyncTCP @ 3.4.10
|
||||
; ESP32Async/ESPAsyncWebServer @ 3.11.0
|
||||
; https://github.com/mobizt/ReadyMail.git @ 0.4.0
|
||||
; https://github.com/mobizt/ESP_SSLClient.git @ 3.1.3
|
||||
; https://github.com/emsesp/EMS-ESP-Modules.git @ 1.0.8
|
||||
; ; file://${PROJECT_DIR}/../modules/EMS-ESP-Modules
|
||||
|
||||
; ** debug settings **
|
||||
; to be used with an ESP32-S3 which has an onboard JTAG, connect the OTG USB port to the PC
|
||||
; if using an external JTAG board like the ESP-PROG set debug_tool = esp-prog, and use zadig to set the correct driver for the USB port
|
||||
; see https://docs.platformio.org/en/stable/projectconf/sections/env/options/debug/debug_init_break.html for settings
|
||||
; use with my_build_flags = -DEMSESP_EN_ONLY -DEMSESP_TEST -DCORE_DEBUG_LEVEL=5 -DARDUINO_USB_CDC_ON_BOOT=1
|
||||
[env:debug]
|
||||
board = esp32-s3-devkitc-1
|
||||
framework = arduino
|
||||
platform = espressif32@6.12.0 ; Arduino Core v2.0.17 / IDF v4.4.7
|
||||
board_build.partitions = partitions/esp32_partition_16M.csv
|
||||
board_upload.flash_size = 16MB
|
||||
board_build.app_partition_name = app0
|
||||
board_build.filesystem = littlefs
|
||||
upload_protocol = esptool
|
||||
build_type = debug
|
||||
monitor_raw = no
|
||||
monitor_filters = colorize, esp32_exception_decoder
|
||||
debug_tool = esp-builtin
|
||||
debug_init_break =
|
||||
upload_speed = 2000000
|
||||
monitor_speed = 115200
|
||||
extra_scripts =
|
||||
+4
-10
@@ -6,6 +6,8 @@
|
||||
; For example: EMS-ESP-3_7_0-dev_31-esp32-16MB+.bin
|
||||
;
|
||||
; boards can be found in https://github.com/pioarduino/platform-espressif32/tree/main/boards
|
||||
; Tasmota platform 2026.09.50 needs PlatformIO Core >=6.2.0. Official platformio is still
|
||||
; 6.1.19 — install pioarduino instead (see CONTRIBUTING.md). `pio upgrade` will not get 6.2.0.
|
||||
|
||||
[platformio]
|
||||
; build all supported targets. Use pio_local.ini to override and build specific targets.
|
||||
@@ -63,18 +65,11 @@ unbuild_flags =
|
||||
[espressif32_base_4M]
|
||||
framework = arduino
|
||||
board_build.partitions = partitions/esp32_partition_4M.csv
|
||||
board_upload.flash_size = 4MB
|
||||
board_build.app_partition_name = app0
|
||||
platform = https://github.com/tasmota/platform-espressif32/releases/download/2026.09.50/platform-espressif32.zip ; Arduino Core 3.3.12 based on IDF 5.5.5
|
||||
|
||||
; 16MB Flash variants
|
||||
[espressif32_base_16M]
|
||||
framework = arduino
|
||||
board_build.partitions = partitions/esp32_partition_16M.csv
|
||||
board_upload.flash_size = 16MB
|
||||
board_build.app_partition_name = app0
|
||||
platform = https://github.com/tasmota/platform-espressif32/releases/download/2026.09.50/platform-espressif32.zip ; Arduino Core 3.3.12 based on IDF 5.5.5
|
||||
platform_packages = framework-arduinoespressif32 @ https://github.com/emsesp/esp32-arduino-lib-builder/releases/download/0910-1604-5.5.5/framework-arduinoespressif32-v5.5.5-a63b839f.tar.xz
|
||||
build_flags =
|
||||
${common.build_flags}
|
||||
-D EMSESP_HAS_RECOVERY ; installs and falls back to the recovery firmware in the factory partition
|
||||
@@ -84,11 +79,10 @@ build_flags =
|
||||
[espressif32_base_32M]
|
||||
framework = arduino
|
||||
board_build.partitions = partitions/esp32_partition_32M.csv
|
||||
board_upload.flash_size = 32MB
|
||||
board_build.app_partition_name = app0
|
||||
platform = https://github.com/tasmota/platform-espressif32/releases/download/2026.09.50/platform-espressif32.zip ; Arduino Core 3.3.12 based on IDF 5.5.5
|
||||
|
||||
[env]
|
||||
platform = https://github.com/tasmota/platform-espressif32/releases/download/2026.09.50/platform-espressif32.zip ; Arduino Core 3.3.12 based on IDF 5.5.5
|
||||
platform_packages = framework-arduinoespressif32 @ https://github.com/emsesp/esp32-arduino-lib-builder/releases/download/0910-1604-5.5.5/framework-arduinoespressif32-v5.5.5-a63b839f.tar.xz
|
||||
build_flags =
|
||||
${common.build_flags}
|
||||
build_unflags =
|
||||
|
||||
Reference in New Issue
Block a user