Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Core update 2108 #2318

Closed
wants to merge 35 commits into from
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
35 commits
Select commit Hold shift + click to select a range
6fe1daf
use new asyncwebs
proddy Dec 21, 2024
13b33a0
test
proddy Dec 23, 2024
2c7afb5
switch to new async libs
proddy Dec 26, 2024
99a7ab4
update packages
proddy Dec 29, 2024
c2e48fe
add comment
proddy Dec 29, 2024
81605a1
prepare for pioarduino and hybrid
proddy Dec 29, 2024
6fca693
formatting
proddy Dec 29, 2024
0d07fc8
add TODO where stacks with Arduino Core 3.1
proddy Dec 29, 2024
99a67e2
fix standalone
proddy Dec 30, 2024
d88685f
apply latest dev-7 PRs
proddy Dec 31, 2024
9146e27
Delete src/ESP32React/WWWData.h
proddy Dec 31, 2024
e2b0dc9
update
proddy Dec 31, 2024
17fc326
package update
proddy Jan 1, 2025
18fa75a
bblanchon/ArduinoJson @ 7.3.0
proddy Jan 1, 2025
345bb20
ArduinoJson 7.3.0
proddy Jan 1, 2025
4f2d1e2
update packages
proddy Jan 1, 2025
b0114cd
remove unused build flags
proddy Jan 1, 2025
702d3b1
updates for ArduinoJson 7.3.0
proddy Jan 1, 2025
327a4d1
migrate mui v6
proddy Jan 1, 2025
5aea3b9
show Customization icon (people get confused there is no data)
proddy Jan 1, 2025
65d9c86
update version used to 3.7.2
proddy Jan 1, 2025
66cbc30
add script to show heapmem with different frameworks
proddy Jan 2, 2025
4c88a5a
add back missing defines
proddy Jan 2, 2025
7ad38c0
ignore log files
proddy Jan 2, 2025
5d07e8d
cleanup
proddy Jan 2, 2025
132b330
don't build webUI if NO_BUILD_WEBUI is set
proddy Jan 2, 2025
7c8a9ed
optimize pio building
proddy Jan 2, 2025
17e59ae
package update
proddy Jan 2, 2025
a951439
always run when upload is target
proddy Jan 2, 2025
f9a305e
use correct pio environments
proddy Jan 2, 2025
6138ddc
updated example
proddy Jan 2, 2025
ff4a137
remove -fexceptions
proddy Jan 2, 2025
5a2c78a
package update
proddy Jan 4, 2025
034a7bb
add sdkconfigs
proddy Jan 4, 2025
8ced2a5
manual merge of dev PRs
proddy Jan 4, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 2 additions & 0 deletions .github/workflows/pre_release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -50,6 +50,8 @@ jobs:
- name: Build all PIO target environments from default_envs
run: |
platformio run
env:
NO_BUILD_WEBUI: true

- name: Create GitHub Release
id: 'automatic_releases'
Expand Down
2 changes: 2 additions & 0 deletions .github/workflows/tagged_release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -44,6 +44,8 @@ jobs:
- name: Build all PIO target environments from default_envs
run: |
platformio run
env:
NO_BUILD_WEBUI: true

- name: Create GitHub Release
uses: emsesp/[email protected]
Expand Down
11 changes: 11 additions & 0 deletions .github/workflows/test_release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -12,24 +12,30 @@ jobs:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4

- name: Enable Corepack
run: corepack enable

- uses: actions/setup-python@v5
with:
python-version: '3.11'

- name: Use Node.js 20.x
uses: actions/setup-node@v4
with:
node-version: '20.x'

- name: Get EMS-ESP source code and version
id: build_info
run: |
version=`grep -E '^#define EMSESP_APP_VERSION' ./src/version.h | awk -F'"' '{print $2}'`
echo "VERSION=$version" >> $GITHUB_OUTPUT

- name: Install PlatformIO
run: |
python -m pip install --upgrade pip
pip install -U platformio

- name: Build WebUI
run: |
cd interface
Expand All @@ -38,9 +44,13 @@ jobs:
sed -i "s/= 'pl'/= 'en'/" ./src/i18n/i18n-util.ts
yarn build
yarn webUI

- name: Build all target environments from default_envs
run: |
platformio run
env:
NO_BUILD_WEBUI: true

- name: Create GitHub Release
id: 'automatic_releases'
uses: emsesp/[email protected]
Expand All @@ -52,3 +62,4 @@ jobs:
files: |
CHANGELOG_LATEST.md
./build/firmware/*.*

14 changes: 11 additions & 3 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -12,17 +12,15 @@ cppcheck.out.xml
# platformio
.pio
pio_local.ini
*_old

# OS specific
.DS_Store
*Thumbs.db

# web specfic
# web specific
build/
dist/
/data/www
/lib/framework/WWWData.h
/interface/build
node_modules
/interface/.eslintcache
Expand All @@ -35,6 +33,7 @@ stats.html
analyse.html
interface/vite.config.ts.timestamp*
*.local
src/ESP32React/WWWData.h

# i18n generated files
interface/src/i18n/i18n-react.tsx
Expand Down Expand Up @@ -66,3 +65,12 @@ words-found-verbose.txt

# sonarlint
compile_commands.json

# pioarduino + hybrid
managed_components
dependencies.lock
CMakeLists.txt
.dummy/*
logs/*
sdkconfig.*
sdkconfig_tasmota_esp32
3 changes: 3 additions & 0 deletions CHANGELOG_LATEST.md
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,9 @@ For more details go to [docs.emsesp.org](https://docs.emsesp.org/).
- info command for devices without entity-commands [#2274](https://github.com/emsesp/EMS-ESP32/issues/2274)
- CW100 settings telegram 0x241 [#2290](https://github.com/emsesp/EMS-ESP32/issues/2290)
- modbus signed 8bit values [#2294](https://github.com/emsesp/EMS-ESP32/issues/2294)
- thermostat date [#2313](https://github.com/emsesp/EMS-ESP32/issues/2313)
- Updated unknown compressor stati "enum_hpactivity" [#2311](https://github.com/emsesp/EMS-ESP32/pull/2311)
- Underline Tab headers in WebUI

## Changed

Expand Down
18 changes: 6 additions & 12 deletions Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -40,26 +40,20 @@ MAKEFLAGS += -j $(JOBS) -l $(JOBS)
# INCLUDES is a list of directories containing header files
# LIBRARIES is a list of directories containing libraries, this must be the top level containing include and lib
#----------------------------------------------------------------------

#TARGET := $(notdir $(CURDIR))
TARGET := emsesp
BUILD := build
SOURCES := src src/* lib_standalone lib/uuid-common/src lib/uuid-console/src lib/uuid-log/src src/devices lib/ArduinoJson/src lib/PButton lib/semver lib/espMqttClient/src lib/espMqttClient/src/*
INCLUDES := src lib_standalone lib/espMqttClient/src lib/espMqttClient/src/Transport lib/ArduinoJson/src lib/uuid-common/src lib/uuid-console/src lib/uuid-log/src lib/uuid-telnet/src lib/uuid-syslog/src lib/semver lib/* src/devices
SOURCES := src/core src/devices src/web src/test lib_standalone lib/semver lib/espMqttClient/src lib/espMqttClient/src/* lib/ArduinoJson/src lib/uuid-common/src lib/uuid-console/src lib/uuid-log/src lib/PButton
INCLUDES := src/core src/devices src/web src/test lib/* lib_standalone lib/semver lib/espMqttClient/src lib/espMqttClient/src/Transport lib/ArduinoJson/src lib/uuid-common/src lib/uuid-console/src lib/uuid-log/src lib/uuid-telnet/src lib/uuid-syslog/src
LIBRARIES :=

CPPCHECK = cppcheck
# CHECKFLAGS = -q --force --std=c++17
CHECKFLAGS = -q --force --std=c++11
CHECKFLAGS = -q --force --std=gnu++17

#----------------------------------------------------------------------
# Languages Standard
#----------------------------------------------------------------------
C_STANDARD := -std=c17
CXX_STANDARD := -std=gnu++14

# C_STANDARD := -std=c11
# CXX_STANDARD := -std=c++11
CXX_STANDARD := -std=gnu++17

#----------------------------------------------------------------------
# Defined Symbols
Expand All @@ -68,7 +62,7 @@ DEFINES += -DARDUINOJSON_ENABLE -DARDUINOJSON_ENABLE_ARDUINO_STRING -DARDUINOJSO
DEFINES += -DEMSESP_STANDALONE -DEMSESP_TEST -DEMSESP_DEBUG -DEMC_RX_BUFFER_SIZE=1500
DEFINES += $(ARGS)

DEFAULTS = -DEMSESP_DEFAULT_LOCALE=\"en\" -DEMSESP_DEFAULT_TX_MODE=8 -DEMSESP_DEFAULT_VERSION=\"3.7.1-dev\" -DEMSESP_DEFAULT_BOARD_PROFILE=\"S3\"
DEFAULTS = -DEMSESP_DEFAULT_LOCALE=\"en\" -DEMSESP_DEFAULT_TX_MODE=8 -DEMSESP_DEFAULT_VERSION=\"3.7.2-dev\" -DEMSESP_DEFAULT_BOARD_PROFILE=\"S3\"

#----------------------------------------------------------------------
# Sources & Files
Expand Down Expand Up @@ -108,7 +102,7 @@ CPPFLAGS += -Os

CFLAGS += $(CPPFLAGS)
CFLAGS += -Wall -Wextra -Werror -Wswitch-enum
CFLAGS += -Wno-tautological-constant-out-of-range-compare -Wno-unused-parameter -Wno-inconsistent-missing-override -Wno-missing-braces -Wno-unused-lambda-capture -Wno-sign-compare
CFLAGS += -Wno-unused-parameter -Wno-missing-braces -Wno-sign-compare
CXXFLAGS += $(CFLAGS) -MMD

#----------------------------------------------------------------------
Expand Down
44 changes: 44 additions & 0 deletions boards/c3_mini_4M.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,44 @@
{
"build": {
"arduino": {
"ldscript": "esp32c3_out.ld"
},
"core": "esp32",
"extra_flags": [
"-DARDUINO_LOLIN_C3_MINI",
"-DARDUINO_USB_MODE=1",
"-DARDUINO_USB_CDC_ON_BOOT=1"
],
"f_cpu": "160000000L",
"f_flash": "80000000L",
"flash_mode": "qio",
"hwids": [
[
"0X303A",
"0x1001"
]
],
"mcu": "esp32c3",
"variant": "lolin_c3_mini"
},
"connectivity": [
"wifi"
],
"debug": {
"openocd_target": "esp32c3.cfg"
},
"frameworks": [
"arduino",
"espidf"
],
"name": "WEMOS LOLIN C3 Mini",
"upload": {
"flash_size": "4MB",
"maximum_ram_size": 327680,
"maximum_size": 4194304,
"require_upload_port": true,
"speed": 460800
},
"url": "https://www.wemos.cc/en/latest/c3/c3_mini.html",
"vendor": "WEMOS"
}
47 changes: 47 additions & 0 deletions boards/s2_4M_P.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,47 @@
{
"build": {
"arduino": {
"ldscript": "esp32s2_out.ld"
},
"core": "esp32",
"extra_flags": [
"-DBOARD_HAS_PSRAM",
"-DTASMOTA_SDK",
"-DARDUINO_USB_CDC_ON_BOOT=1",
"-DARDUINO_USB_MODE=0"
],
"f_cpu": "240000000L",
"f_flash": "80000000L",
"flash_mode": "dio",
"hwids": [
[
"0X303A",
"0x80C2"
]
],
"mcu": "esp32s2",
"variant": "lolin_s2_mini"
},
"connectivity": [
"wifi"
],
"debug": {
"openocd_target": "esp32s2.cfg"
},
"frameworks": [
"arduino",
"espidf"
],
"name": "WEMOS LOLIN S2 Mini",
"upload": {
"flash_size": "4MB",
"maximum_ram_size": 327680,
"maximum_size": 4194304,
"use_1200bps_touch": true,
"wait_for_upload_port": true,
"require_upload_port": true,
"speed": 921600
},
"url": "https://www.wemos.cc/en/latest/s2/s2_mini.html",
"vendor": "WEMOS"
}
40 changes: 40 additions & 0 deletions boards/s3_16M_P.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,40 @@
{
"build": {
"core": "esp32",
"extra_flags": [
"-DBOARD_HAS_PSRAM",
"-DARDUINO_USB_MODE=1",
"-DARDUINO_USB_CDC_ON_BOOT=1",
"-DARDUINO_RUNNING_CORE=1",
"-DARDUINO_EVENT_RUNNING_CORE=1"
],
"f_cpu": "240000000L",
"f_flash": "80000000L",
"flash_mode": "qio",
"mcu": "esp32s3",
"variant": "esp32s3"
},
"connectivity": [
"wifi"
],
"debug": {
"openocd_target": "esp32s3.cfg"
},
"frameworks": [
"arduino",
"espidf"
],
"name": "Espressif Generic ESP32-S3 16M Flash OPI PSRAM, 4608KB Code/OTA, 2MB FS",
"upload": {
"flash_size": "16MB",
"maximum_ram_size": 327680,
"maximum_size": 16777216,
"require_upload_port": true,
"speed": 460800
},
"download": {
"speed": 230400
},
"url": "https://docs.espressif.com/projects/esp-idf/en/latest/esp32s3/hw-reference/esp32s3/",
"vendor": "Espressif"
}
37 changes: 37 additions & 0 deletions boards/s3_32M_P.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,37 @@
{
"build": {
"arduino":{
"memory_type": "opi_opi"
},
"core": "esp32",
"extra_flags": "-DBOARD_HAS_PSRAM",
"f_cpu": "240000000L",
"f_flash": "80000000L",
"flash_mode": "opi",
"mcu": "esp32s3",
"variant": "esp32s3"
},
"connectivity": [
"wifi"
],
"debug": {
"openocd_target": "esp32s3.cfg"
},
"frameworks": [
"arduino",
"espidf"
],
"name": "Espressif Generic ESP32-S3 32M Flash OPI PSRAM, 4608KB Code/OTA, 2MB FS",
"upload": {
"flash_size": "32MB",
"maximum_ram_size": 327680,
"maximum_size": 16777216,
"require_upload_port": true,
"speed": 460800
},
"download": {
"speed": 230400
},
"url": "https://docs.espressif.com/projects/esp-idf/en/latest/esp32s3/hw-reference/esp32s3/",
"vendor": "Espressif"
}
35 changes: 35 additions & 0 deletions boards/s_16M.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
{
"build": {
"core": "esp32",
"extra_flags": "-DTASMOTA_SDK",
"f_cpu": "240000000L",
"f_flash": "80000000L",
"flash_mode": "dio",
"mcu": "esp32",
"variant": "esp32"
},
"connectivity": [
"wifi",
"ethernet"
],
"debug": {
"openocd_target": "esp32.cfg"
},
"frameworks": [
"arduino",
"espidf"
],
"name": "Espressif Generic ESP32 16M Flash, Tasmota 4608KB Code/OTA, 2MB FS",
"upload": {
"flash_size": "16MB",
"maximum_ram_size": 327680,
"maximum_size": 16777216,
"require_upload_port": true,
"speed": 460800
},
"download": {
"speed": 230400
},
"url": "https://en.wikipedia.org/wiki/ESP32",
"vendor": "Espressif"
}
Loading