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:
|
with:
|
||||||
python-version: '3.13'
|
python-version: '3.13'
|
||||||
|
|
||||||
- name: Install PlatformIO
|
- name: Install pioarduino
|
||||||
run: |
|
run: |
|
||||||
pip install wheel
|
pip install wheel
|
||||||
pip install -U platformio
|
pip install -U "pioarduino==6.2.0"
|
||||||
|
|
||||||
- name: Run unit tests
|
- name: Run unit tests
|
||||||
run: |
|
run: |
|
||||||
|
|||||||
@@ -38,10 +38,10 @@ jobs:
|
|||||||
version=`grep -E '^#define EMSESP_APP_VERSION' ./src/emsesp_version.h | awk -F'"' '{print $2}'`
|
version=`grep -E '^#define EMSESP_APP_VERSION' ./src/emsesp_version.h | awk -F'"' '{print $2}'`
|
||||||
echo "VERSION=$version" >> $GITHUB_OUTPUT
|
echo "VERSION=$version" >> $GITHUB_OUTPUT
|
||||||
|
|
||||||
- name: Install PlatformIO
|
- name: Install pioarduino
|
||||||
run: |
|
run: |
|
||||||
python -m pip install --upgrade pip
|
python -m pip install --upgrade pip
|
||||||
pip install -U platformio
|
pip install -U "pioarduino==6.2.0"
|
||||||
python -m pip install intelhex
|
python -m pip install intelhex
|
||||||
|
|
||||||
- name: Build webUI
|
- name: Build webUI
|
||||||
|
|||||||
@@ -39,10 +39,10 @@ jobs:
|
|||||||
version=`grep -E '^#define EMSESP_APP_VERSION' ./src/emsesp_version.h | awk -F'"' '{print $2}'`
|
version=`grep -E '^#define EMSESP_APP_VERSION' ./src/emsesp_version.h | awk -F'"' '{print $2}'`
|
||||||
echo "VERSION=$version" >> $GITHUB_OUTPUT
|
echo "VERSION=$version" >> $GITHUB_OUTPUT
|
||||||
|
|
||||||
- name: Install PlatformIO
|
- name: Install pioarduino
|
||||||
run: |
|
run: |
|
||||||
python -m pip install --upgrade pip
|
python -m pip install --upgrade pip
|
||||||
pip install -U platformio
|
pip install -U "pioarduino==6.2.0"
|
||||||
python -m pip install intelhex
|
python -m pip install intelhex
|
||||||
|
|
||||||
- name: Build webUI
|
- 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
|
- 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
|
- 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)
|
- 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
|
- 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.
|
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
|
## Opening New Issues
|
||||||
|
|
||||||
1. Opening an issue means that a problem exists in the code and should be addressed by the project contributors.
|
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
|
; 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
|
; 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]
|
[platformio]
|
||||||
; build all supported targets. Use pio_local.ini to override and build specific targets.
|
; build all supported targets. Use pio_local.ini to override and build specific targets.
|
||||||
@@ -63,18 +65,11 @@ unbuild_flags =
|
|||||||
[espressif32_base_4M]
|
[espressif32_base_4M]
|
||||||
framework = arduino
|
framework = arduino
|
||||||
board_build.partitions = partitions/esp32_partition_4M.csv
|
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
|
; 16MB Flash variants
|
||||||
[espressif32_base_16M]
|
[espressif32_base_16M]
|
||||||
framework = arduino
|
framework = arduino
|
||||||
board_build.partitions = partitions/esp32_partition_16M.csv
|
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 =
|
build_flags =
|
||||||
${common.build_flags}
|
${common.build_flags}
|
||||||
-D EMSESP_HAS_RECOVERY ; installs and falls back to the recovery firmware in the factory partition
|
-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]
|
[espressif32_base_32M]
|
||||||
framework = arduino
|
framework = arduino
|
||||||
board_build.partitions = partitions/esp32_partition_32M.csv
|
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]
|
[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 =
|
build_flags =
|
||||||
${common.build_flags}
|
${common.build_flags}
|
||||||
build_unflags =
|
build_unflags =
|
||||||
|
|||||||
Reference in New Issue
Block a user