From 1dafb7a3fabce48efbf564a9f545fff0e99de21d Mon Sep 17 00:00:00 2001 From: Shailen Sobhee Date: Mon, 30 Mar 2026 03:03:08 +0200 Subject: [PATCH 01/13] minor edits to see the GPIO pins on ESP32-C6-WROOM-1 --- data-src/index.js | 7 ++++--- src/Somfy.cpp | 14 +++++++------- 2 files changed, 11 insertions(+), 10 deletions(-) diff --git a/data-src/index.js b/data-src/index.js index d2400e83..8dc93513 100644 --- a/data-src/index.js +++ b/data-src/index.js @@ -2795,16 +2795,17 @@ class Somfy { document.getElementById('divLinkedShadeList').innerHTML = divCfg; } pinMaps = [ - { name: '', maxPins: 39, inputs: [0, 1, 6, 7, 8, 9, 10, 11, 37, 38], outputs: [3, 6, 7, 8, 9, 10, 11, 34, 35, 36, 37, 38, 39] }, + { name: '', maxPins: 39, inputs: [], outputs: [] }, { name: 's2', maxPins: 46, inputs: [0, 19, 20, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 45], outputs: [0, 19, 20, 26, 27, 28, 29, 30, 31, 32, 45, 46]}, { name: 's3', maxPins: 48, inputs: [19, 20, 22, 23, 24, 25, 27, 28, 29, 30, 31, 32], outputs: [19, 20, 22, 23, 24, 25, 27, 28, 29, 30, 31, 32] }, - { name: 'c3', maxPins: 21, inputs: [11, 12, 13, 14, 15, 16, 17, 18, 19, 20], outputs: [11, 12, 13, 14, 15, 16, 17, 21] } + { name: 'c3', maxPins: 21, inputs: [11, 12, 13, 14, 15, 16, 17, 18, 19, 20], outputs: [11, 12, 13, 14, 15, 16, 17, 21] }, + { name: 'c6', maxPins: 23, inputs: [], outputs: [] } ]; loadPins(type, sel, opt) { while (sel.firstChild) sel.removeChild(sel.firstChild); let cm = document.getElementById('divContainer').getAttribute('data-chipmodel'); - let pm = this.pinMaps.find(x => x.name === cm) || { name: '', maxPins: 39, inputs: [0, 1, 6, 7, 8, 9, 10, 11, 37, 38], outputs: [3, 6, 7, 8, 9, 10, 11, 34, 35, 36, 37, 38, 39] }; + let pm = this.pinMaps.find(x => x.name === cm) || { name: '', maxPins: 39, inputs: [], outputs: [] }; //console.log({ cm: cm, pm: pm }); for (let i = 0; i <= pm.maxPins; i++) { if (type.includes('in') && pm.inputs.includes(i)) continue; diff --git a/src/Somfy.cpp b/src/Somfy.cpp index 7a8ad519..4dcc158e 100644 --- a/src/Somfy.cpp +++ b/src/Somfy.cpp @@ -4691,14 +4691,14 @@ void transceiver_config_t::load() { this->SCKPin = 15; this->CSNPin = 14; break; -#ifdef CHIP_ESP32C6 + #ifdef CHIP_ESP32C6 case esp_chip_model_t::CHIP_ESP32C6: - this->TXPin = 13; - this->RXPin = 12; - this->MOSIPin = 16; - this->MISOPin = 17; - this->SCKPin = 15; - this->CSNPin = 14; + this->TXPin = 10; + this->RXPin = 10; + this->MOSIPin = 7; + this->MISOPin = 2; + this->SCKPin = 6; + this->CSNPin = 0; break; #endif default: From ff1bb80adf7eae5f59c0044d6b58c28bceee75ba Mon Sep 17 00:00:00 2001 From: Shailen Sobhee Date: Mon, 30 Mar 2026 14:52:40 +0200 Subject: [PATCH 02/13] huge app due to partition size issues --- data-src/index.js | 3 +-- esp32_3MB.csv | 8 ++++---- platformio.ini | 39 +++++++++++++++++++++++++++++++++------ 3 files changed, 38 insertions(+), 12 deletions(-) diff --git a/data-src/index.js b/data-src/index.js index 40bd58e6..244816e7 100644 --- a/data-src/index.js +++ b/data-src/index.js @@ -1,6 +1,5 @@ //var hst = '192.168.1.208'; -var hst = '192.168.1.152'; -//var hst = '192.168.1.159'; +var hst = '192.168.178.20'; var _rooms = [{ roomId: 0, name: 'Home' }]; var errors = [ diff --git a/esp32_3MB.csv b/esp32_3MB.csv index f56623f4..08283683 100644 --- a/esp32_3MB.csv +++ b/esp32_3MB.csv @@ -1,7 +1,7 @@ # Name, Type, SubType, Offset, Size nvs, data, nvs, 0x9000, 0x5000 otadata, data, ota, 0xE000, 0x2000 -app0, app, ota_0, 0x10000, 0x180000 -app1, app, ota_1, 0x190000, 0x180000 -spiffs, data, spiffs, 0x310000, 0x0E0000 -coredump, data, coredump, 0x3F0000, 0x10000 +phy_init, data, phy, 0x10000, 0x1000 +app0, app, factory, 0x20000, 0x300000 +spiffs, data, spiffs, 0x320000, 0xE0000 +coredump, data, coredump, 0x3F0000, 0x10000 \ No newline at end of file diff --git a/platformio.ini b/platformio.ini index 3cbb4621..2614eb39 100644 --- a/platformio.ini +++ b/platformio.ini @@ -18,8 +18,11 @@ lib_deps = bblanchon/ArduinoJson@^7.2.2 lsatan/SmartRC-CC1101-Driver-Lib@^2.5.7 knolleary/PubSubClient@^2.8 - esp32async/ESPAsyncWebServer@^3.10.3 - esp32async/AsyncTCP@^3.4.10 + ; esp32async/ESPAsyncWebServer@^3.10.3 + ; esp32async/AsyncTCP@^3.4.10 + ; 4. ESP32-C6 / Arduino 3.0 Compatible Async Stack (CRITICAL) + https://github.com/mathieucarbou/AsyncTCP.git + https://github.com/mathieucarbou/ESPAsyncWebServer.git extra_scripts = pre:minify.py post:archive_elf.py @@ -55,12 +58,36 @@ board_build.partitions = esp32_3MB.csv board = esp32-s3-devkitc-1 [env:esp32c6] -platform = https://github.com/mnowak32/platform-espressif32.git#boards/seeed_xiao_esp32c6 -platform_packages = - framework-arduinoespressif32 @ https://github.com/espressif/arduino-esp32.git#3.0.4 - framework-arduinoespressif32-libs @ https://github.com/espressif/arduino-esp32/releases/download/3.0.4/esp32-arduino-libs-3.0.4.zip +; platform = https://github.com/mnowak32/platform-espressif32.git#boards/seeed_xiao_esp32c6 +; platform_packages = +; framework-arduinoespressif32 @ https://github.com/espressif/arduino-esp32.git#3.0.4 +; framework-arduinoespressif32-libs @ https://github.com/espressif/arduino-esp32/releases/download/3.0.4/esp32-arduino-libs-3.0.4.zip +; board = seeed_xiao_esp32c6 +; board_build.partitions = esp32_3MB.csv +; build_flags = +; ${env.build_flags} +; -I${platformio.packages_dir}/framework-arduinoespressif32/libraries/Network/src +; platform = espressif32 ; Not working +platform = https://github.com/pioarduino/platform-espressif32 +# Ensure we are using the 3.0+ core +; platform_packages = +; framework-arduinoespressif32 @ https://github.com/espressif/arduino-esp32.git#3.0.7 +; framework-arduinoespressif32-libs @ https://github.com/espressif/arduino-esp32/releases/download/3.0.7/esp32-arduino-libs-3.0.7.zip board = seeed_xiao_esp32c6 +; board = esp32-c6-devkitc-1 + +lib_deps = + bblanchon/ArduinoJson@^7.2.2 + lsatan/SmartRC-CC1101-Driver-Lib@^2.5.7 + knolleary/PubSubClient@^2.8 + https://github.com/ESP32Async/AsyncTCP.git + https://github.com/ESP32Async/ESPAsyncWebServer.git +; platform_packages = +; framework-arduinoespressif32 @ https://github.com/espressif/arduino-esp32.git#3.0.7 + board_build.partitions = esp32_3MB.csv + build_flags = ${env.build_flags} -I${platformio.packages_dir}/framework-arduinoespressif32/libraries/Network/src + From f67da0917a10209ed26edfa0ed56f5edaa973ba8 Mon Sep 17 00:00:00 2001 From: Shailen Sobhee Date: Mon, 30 Mar 2026 14:55:04 +0200 Subject: [PATCH 03/13] add somfycontoller.ino.cpp back From bb61a1703d4d227b6ada5a8e22e4a503f7ca7566 Mon Sep 17 00:00:00 2001 From: Shailen Sobhee Date: Mon, 30 Mar 2026 21:04:59 +0200 Subject: [PATCH 04/13] fixed esp32-c6 platform detection issue --- esp32_huge_app.csv | 6 +++++ platformio.ini | 58 +++++++++++++++--------------------------- src/ConfigSettings.cpp | 2 -- src/Somfy.cpp | 3 +-- 4 files changed, 27 insertions(+), 42 deletions(-) create mode 100644 esp32_huge_app.csv diff --git a/esp32_huge_app.csv b/esp32_huge_app.csv new file mode 100644 index 00000000..9070da5d --- /dev/null +++ b/esp32_huge_app.csv @@ -0,0 +1,6 @@ +# Name, Type, SubType, Offset, Size +nvs, data, nvs, 0x9000, 0x5000, +otadata, data, ota, 0xE000, 0x2000, +app0, app, factory, 0x10000, 0x300000, +spiffs, data, spiffs, 0x310000, 0xD0000, +coredump, data, coredump, 0x3E0000, 0x10000, \ No newline at end of file diff --git a/platformio.ini b/platformio.ini index 2614eb39..09132129 100644 --- a/platformio.ini +++ b/platformio.ini @@ -9,24 +9,22 @@ ; https://docs.platformio.org/page/projectconf.html [platformio] -default_envs = esp32devdbg +default_envs = esp32c6 +src_dir = src [env] -platform = espressif32 @ 5.4.0 +platform = https://github.com/pioarduino/platform-espressif32 +; platform = espressif32 @ 5.4.0 framework = arduino lib_deps = bblanchon/ArduinoJson@^7.2.2 lsatan/SmartRC-CC1101-Driver-Lib@^2.5.7 knolleary/PubSubClient@^2.8 - ; esp32async/ESPAsyncWebServer@^3.10.3 - ; esp32async/AsyncTCP@^3.4.10 - ; 4. ESP32-C6 / Arduino 3.0 Compatible Async Stack (CRITICAL) - https://github.com/mathieucarbou/AsyncTCP.git - https://github.com/mathieucarbou/ESPAsyncWebServer.git + esp32async/ESPAsyncWebServer@^3.10.3 + esp32async/AsyncTCP@^3.4.10 extra_scripts = pre:minify.py post:archive_elf.py - board_build.filesystem = littlefs build_flags = -DCORE_DEBUG_LEVEL=1 @@ -58,36 +56,20 @@ board_build.partitions = esp32_3MB.csv board = esp32-s3-devkitc-1 [env:esp32c6] -; platform = https://github.com/mnowak32/platform-espressif32.git#boards/seeed_xiao_esp32c6 -; platform_packages = -; framework-arduinoespressif32 @ https://github.com/espressif/arduino-esp32.git#3.0.4 -; framework-arduinoespressif32-libs @ https://github.com/espressif/arduino-esp32/releases/download/3.0.4/esp32-arduino-libs-3.0.4.zip -; board = seeed_xiao_esp32c6 -; board_build.partitions = esp32_3MB.csv -; build_flags = -; ${env.build_flags} -; -I${platformio.packages_dir}/framework-arduinoespressif32/libraries/Network/src -; platform = espressif32 ; Not working -platform = https://github.com/pioarduino/platform-espressif32 -# Ensure we are using the 3.0+ core -; platform_packages = -; framework-arduinoespressif32 @ https://github.com/espressif/arduino-esp32.git#3.0.7 -; framework-arduinoespressif32-libs @ https://github.com/espressif/arduino-esp32/releases/download/3.0.7/esp32-arduino-libs-3.0.7.zip board = seeed_xiao_esp32c6 -; board = esp32-c6-devkitc-1 - -lib_deps = - bblanchon/ArduinoJson@^7.2.2 - lsatan/SmartRC-CC1101-Driver-Lib@^2.5.7 - knolleary/PubSubClient@^2.8 - https://github.com/ESP32Async/AsyncTCP.git - https://github.com/ESP32Async/ESPAsyncWebServer.git -; platform_packages = -; framework-arduinoespressif32 @ https://github.com/espressif/arduino-esp32.git#3.0.7 - -board_build.partitions = esp32_3MB.csv - -build_flags = +board_build.partitions = esp32_huge_app.csv +build_flags = ${env.build_flags} - -I${platformio.packages_dir}/framework-arduinoespressif32/libraries/Network/src + -include "driver/gpio.h" +lib_deps = + ; Low-Level libs, frameowrks and drivers + ESP32Async/AsyncTCP + https://github.com/Viproz/SmartRC-CC1101-Driver-Lib.git + ; Commmunication Protocol + links2004/WebSockets + https://github.com/hmueller01/pubsubclient3.git + ; Data-Parsing + bblanchon/ArduinoJson + ; High-level wrappers/servers + ESP32Async/ESPAsyncWebServer diff --git a/src/ConfigSettings.cpp b/src/ConfigSettings.cpp index cb9a6a97..b10ca262 100644 --- a/src/ConfigSettings.cpp +++ b/src/ConfigSettings.cpp @@ -158,11 +158,9 @@ bool ConfigSettings::begin() { case esp_chip_model_t::CHIP_ESP32C3: strcpy(this->chipModel, "c3"); break; -#ifdef CHIP_ESP32C6 case esp_chip_model_t::CHIP_ESP32C6: strcpy(this->chipModel, "c6"); break; -#endif default: sprintf(this->chipModel, "UNK%d", static_cast(ci.model)); break; diff --git a/src/Somfy.cpp b/src/Somfy.cpp index 3807bf1e..af237cfa 100644 --- a/src/Somfy.cpp +++ b/src/Somfy.cpp @@ -4712,8 +4712,8 @@ void transceiver_config_t::load() { this->SCKPin = 15; this->CSNPin = 14; break; - #ifdef CHIP_ESP32C6 case esp_chip_model_t::CHIP_ESP32C6: + // Pinout applicable for the ESP32-C6-WROOM-1 module (ESP32-C6-DevKitC-1-N4) this->TXPin = 10; this->RXPin = 10; this->MOSIPin = 7; @@ -4721,7 +4721,6 @@ void transceiver_config_t::load() { this->SCKPin = 6; this->CSNPin = 0; break; -#endif default: this->TXPin = 13; this->RXPin = 12; From fe4aa83ed2353ea741af5347119365b1859a5b95 Mon Sep 17 00:00:00 2001 From: Shailen Sobhee Date: Mon, 30 Mar 2026 22:41:08 +0200 Subject: [PATCH 05/13] updated code logic to pic FW/App version from appversion instead of hard-coding in js/html/cpp files --- app_version.py | 32 ++++++++ data-src/appversion | 2 +- data-src/index.html | 8 +- data-src/index.js | 32 +++++++- platformio.ini | 4 +- src/ConfigSettings.h | 6 +- src/SomfyController.ino | 2 + src/SomfyController.ino.cpp | 147 ------------------------------------ 8 files changed, 78 insertions(+), 155 deletions(-) create mode 100644 app_version.py delete mode 100644 src/SomfyController.ino.cpp diff --git a/app_version.py b/app_version.py new file mode 100644 index 00000000..533442ac --- /dev/null +++ b/app_version.py @@ -0,0 +1,32 @@ +import os +Import("env") + +# Define the folder and filename +DATA_FOLDER = "data-src" +FILENAME = "appversion" + +# Construct the full path: /your/project/path/data-src/appversion +project_dir = env.get("PROJECT_DIR") +version_file_path = os.path.join(project_dir, DATA_FOLDER, FILENAME) + +# Default fallback if something goes wrong +version = "0.0.0" + +if os.path.exists(version_file_path): + try: + with open(version_file_path, "r") as f: + version = f.read().strip() + # Clean output for the PlatformIO console + print(f"--- SUCCESS: Found version {version} in {version_file_path} ---") + except Exception as e: + print(f"--- ERROR: could not read version file: {e} ---") +else: + print(f"--- ERROR: File NOT FOUND at {version_file_path} ---") + +# Apply to the build environment +# We use escaped quotes so C++ treats it as a string literal "vX.X.X" +full_version_str = f'\\"v{version}\\"' + +env.Append(CPPDEFINES=[ + ("FW_VERSION", full_version_str) +]) \ No newline at end of file diff --git a/data-src/appversion b/data-src/appversion index 752a79ef..fad066f8 100644 --- a/data-src/appversion +++ b/data-src/appversion @@ -1 +1 @@ -2.4.8 \ No newline at end of file +2.5.0 \ No newline at end of file diff --git a/data-src/index.html b/data-src/index.html index e46ab302..4e3383b9 100644 --- a/data-src/index.html +++ b/data-src/index.html @@ -8,9 +8,9 @@ - - - + + + @@ -114,7 +114,7 @@ rel="apple-touch-startup-image"> - +
diff --git a/data-src/index.js b/data-src/index.js index 244816e7..b7654a1b 100644 --- a/data-src/index.js +++ b/data-src/index.js @@ -1267,9 +1267,27 @@ class Security { } var security = new Security(); +// let appVersion = 'v0.0.0'; // Default placeholder +async function getAppVersion() { + try { + const response = await fetch('/appversion'); + if (!response.ok) throw new Error('File not found'); + + const data = await response.text(); + appVersion = `v${data.trim()}`; + + console.log("Loaded Version:", appVersion); + // Trigger any UI updates here + } catch (error) { + console.error("Error loading App version:", error); + appVersion = 'v0.0.0'; // Default placeholder + } + return appVersion; +} + class General { initialized = false; - appVersion = 'v2.4.8'; + appVersion = getAppVersion(); reloadApp = false; init() { if (this.initialized) return; @@ -4815,3 +4833,15 @@ class Firmware { } var firmware = new Firmware(); +window.addEventListener('load', async () => { + // 1. Initialize your main application logic + // await init(); + + // 2. Fetch and display the app version + appVersion = await getAppVersion(); + const spanAppVersion = document.getElementById('spanAppVersion'); + spanAppVersion.innerText = `${appVersion.trim()}`; + + console.log("Application fully loaded and version updated."); +}); + diff --git a/platformio.ini b/platformio.ini index 09132129..3f5e5ec7 100644 --- a/platformio.ini +++ b/platformio.ini @@ -23,11 +23,12 @@ lib_deps = esp32async/ESPAsyncWebServer@^3.10.3 esp32async/AsyncTCP@^3.4.10 extra_scripts = + pre:app_version.py pre:minify.py post:archive_elf.py board_build.filesystem = littlefs build_flags = - -DCORE_DEBUG_LEVEL=1 + -DCORE_DEBUG_LEVEL=5 -DCONFIG_ESP_COREDUMP_ENABLE_TO_FLASH=1 -DCONFIG_ESP_COREDUMP_DATA_FORMAT_ELF=1 -DCONFIG_ESP_COREDUMP_CHECKSUM_CRC32=1 @@ -57,6 +58,7 @@ board = esp32-s3-devkitc-1 [env:esp32c6] board = seeed_xiao_esp32c6 +build_type = debug board_build.partitions = esp32_huge_app.csv build_flags = ${env.build_flags} diff --git a/src/ConfigSettings.h b/src/ConfigSettings.h index bdd62a72..3fdc33cf 100644 --- a/src/ConfigSettings.h +++ b/src/ConfigSettings.h @@ -5,7 +5,11 @@ #ifndef configsettings_h #define configsettings_h #include "WResp.h" -#define FW_VERSION "v2.4.8" +// #define FW_VERSION "v2.4.8" +#ifndef FW_VERSION + #define FW_VERSION "v0.0.0" // Fallback if app_version.py script fails +#endif + enum class conn_types_t : byte { unset = 0x00, wifi = 0x01, diff --git a/src/SomfyController.ino b/src/SomfyController.ino index 976bb442..64840f64 100644 --- a/src/SomfyController.ino +++ b/src/SomfyController.ino @@ -92,8 +92,10 @@ void setup() { #if ESP_ARDUINO_VERSION_MAJOR >= 3 const esp_task_wdt_config_t wdt_config = { .timeout_ms = 15000, .idle_core_mask = 1, .trigger_panic = true }; esp_task_wdt_init(&wdt_config); + ESP_LOGE(TAG, "TEST 1"); #else esp_task_wdt_init(15, true); //enable panic so ESP32 restarts + ESP_LOGE(TAG, "TEST 2"); #endif esp_task_wdt_add(NULL); //add current thread to WDT watch diff --git a/src/SomfyController.ino.cpp b/src/SomfyController.ino.cpp deleted file mode 100644 index ce50111f..00000000 --- a/src/SomfyController.ino.cpp +++ /dev/null @@ -1,147 +0,0 @@ -# 1 "C:\\Users\\oem\\AppData\\Local\\Temp\\tmpahrx2jqr" -#include -# 1 "C:/Users/oem/Documents/PlatformIO/Projects/ESPSomfy-RTS/src/SomfyController.ino" -#include "esp_log.h" -#include -#include -#include -#include "ConfigSettings.h" -#include "ESPNetwork.h" -#include "Web.h" -#include "Sockets.h" -#include "Utils.h" -#include "Somfy.h" -#include "MQTT.h" -#include "GitOTA.h" -#include "esp_core_dump.h" - -static const char *TAG = "Main"; - -ConfigSettings settings; -Web webServer; -SocketEmitter sockEmit; -ESPNetwork net; -rebootDelay_t rebootDelay; -SomfyShadeController somfy; -MQTTClass mqtt; -GitUpdater git; - -uint32_t oldheap = 0; -void listDir(const char *dirname, uint8_t levels); -void setup(); -void loop(); -#line 28 "C:/Users/oem/Documents/PlatformIO/Projects/ESPSomfy-RTS/src/SomfyController.ino" -void listDir(const char *dirname, uint8_t levels) { - ESP_LOGI(TAG, "Listing: %s", dirname); - File root = LittleFS.open(dirname); - if (!root || !root.isDirectory()) { - ESP_LOGE(TAG, "Failed to open directory"); - return; - } - File file = root.openNextFile(); - while (file) { - if (file.isDirectory()) { - ESP_LOGI(TAG, " DIR : %s", file.name()); - if (levels) listDir(file.path(), levels - 1); - } else { - ESP_LOGI(TAG, " FILE: %-30s %d bytes", file.name(), file.size()); - } - file = root.openNextFile(); - } -} - -void setup() { - Serial.begin(115200); - ESP_LOGI(TAG, "Startup/Boot...."); - esp_core_dump_summary_t summary; - if (esp_core_dump_get_summary(&summary) == ESP_OK) { - ESP_LOGW(TAG, "*** Previous crash coredump found ***"); - ESP_LOGW(TAG, " Task: %s", summary.exc_task); - ESP_LOGW(TAG, " PC: 0x%08x", summary.exc_pc); -#ifdef CONFIG_IDF_TARGET_ARCH_XTENSA - ESP_LOGW(TAG, " Cause: %d", summary.ex_info.exc_cause); - char bt_buf[256] = {0}; - int pos = 0; - for (int i = 0; i < summary.exc_bt_info.depth; i++) { - pos += snprintf(bt_buf + pos, sizeof(bt_buf) - pos, " 0x%08x", summary.exc_bt_info.bt[i]); - } - ESP_LOGW(TAG, " Backtrace:%s", bt_buf); -#elif CONFIG_IDF_TARGET_ARCH_RISCV - ESP_LOGW(TAG, " Cause: %d", summary.ex_info.mcause); - ESP_LOGW(TAG, " MTVAL: 0x%08x RA: 0x%08x SP: 0x%08x", - summary.ex_info.mtval, summary.ex_info.ra, summary.ex_info.sp); -#endif - } - ESP_LOGI(TAG, "Mounting File System..."); - - - if (LittleFS.begin()) { - ESP_LOGI(TAG, "Total: %d bytes", LittleFS.totalBytes()); - ESP_LOGI(TAG, "Used: %d bytes", LittleFS.usedBytes()); - ESP_LOGI(TAG, "Free: %d bytes", LittleFS.totalBytes() - LittleFS.usedBytes()); - listDir("/", 3); - } else { - ESP_LOGE(TAG, "LittleFS mount failed!"); - } - - if(LittleFS.begin()) ESP_LOGI(TAG, "File system mounted successfully"); - else ESP_LOGE(TAG, "Error mounting file system"); - settings.begin(); - if(WiFi.status() == WL_CONNECTED) WiFi.disconnect(true); - delay(10); - webServer.startup(); - webServer.begin(); - delay(1000); - net.setup(); - somfy.begin(); - -#if ESP_ARDUINO_VERSION_MAJOR >= 3 - const esp_task_wdt_config_t wdt_config = { .timeout_ms = 15000, .idle_core_mask = 1, .trigger_panic = true }; - esp_task_wdt_init(&wdt_config); -#else - esp_task_wdt_init(15, true); -#endif - esp_task_wdt_add(NULL); - -} - -void loop() { - - - if(rebootDelay.reboot && millis() > rebootDelay.rebootTime) { - ESP_LOGI(TAG, "Rebooting after %lums", rebootDelay.rebootTime); - net.end(); - ESP.restart(); - return; - } - uint32_t timing = millis(); - - net.loop(); - if(millis() - timing > 100) ESP_LOGD(TAG, "Timing Net: %ldms", millis() - timing); - timing = millis(); - esp_task_wdt_reset(); - somfy.loop(); - if(millis() - timing > 100) ESP_LOGD(TAG, "Timing Somfy: %ldms", millis() - timing); - timing = millis(); - esp_task_wdt_reset(); - if(net.connected() || net.softAPOpened) { - if(!rebootDelay.reboot && net.connected() && !net.softAPOpened) { - git.loop(); - esp_task_wdt_reset(); - } - webServer.loop(); - esp_task_wdt_reset(); - if(millis() - timing > 100) ESP_LOGD(TAG, "Timing WebServer: %ldms", millis() - timing); - esp_task_wdt_reset(); - timing = millis(); - sockEmit.loop(); - if(millis() - timing > 100) ESP_LOGD(TAG, "Timing Socket: %ldms", millis() - timing); - esp_task_wdt_reset(); - timing = millis(); - } - if(rebootDelay.reboot && millis() > rebootDelay.rebootTime) { - net.end(); - ESP.restart(); - } - esp_task_wdt_reset(); -} \ No newline at end of file From 08bab053437f514ca74e5638177c75c71448599c Mon Sep 17 00:00:00 2001 From: Shailen Sobhee Date: Sun, 5 Apr 2026 19:08:32 +0200 Subject: [PATCH 06/13] merge conflicts from 05.04 --- .gitignore | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.gitignore b/.gitignore index d384d46d..8568304e 100644 --- a/.gitignore +++ b/.gitignore @@ -15,4 +15,5 @@ build/ coredump_report.txt coredump.bin logs/ -elf_archive/ \ No newline at end of file +elf_archive/ +managed_components/ From 51109a16c5c5b2b8ee06209707f5f6e5b4e7e18c Mon Sep 17 00:00:00 2001 From: Shailen Sobhee Date: Sun, 5 Apr 2026 19:55:09 +0200 Subject: [PATCH 07/13] updated gitignore file --- .gitignore | 4 ++++ esp32_3MB.csv | 8 ++++---- platformio.ini | 3 ++- src/SomfyController.ino | 2 -- 4 files changed, 10 insertions(+), 7 deletions(-) diff --git a/.gitignore b/.gitignore index 8568304e..41434ccb 100644 --- a/.gitignore +++ b/.gitignore @@ -15,5 +15,9 @@ build/ coredump_report.txt coredump.bin logs/ + +# Ignore ELF binary archives elf_archive/ +*.elf + managed_components/ diff --git a/esp32_3MB.csv b/esp32_3MB.csv index 08283683..f56623f4 100644 --- a/esp32_3MB.csv +++ b/esp32_3MB.csv @@ -1,7 +1,7 @@ # Name, Type, SubType, Offset, Size nvs, data, nvs, 0x9000, 0x5000 otadata, data, ota, 0xE000, 0x2000 -phy_init, data, phy, 0x10000, 0x1000 -app0, app, factory, 0x20000, 0x300000 -spiffs, data, spiffs, 0x320000, 0xE0000 -coredump, data, coredump, 0x3F0000, 0x10000 \ No newline at end of file +app0, app, ota_0, 0x10000, 0x180000 +app1, app, ota_1, 0x190000, 0x180000 +spiffs, data, spiffs, 0x310000, 0x0E0000 +coredump, data, coredump, 0x3F0000, 0x10000 diff --git a/platformio.ini b/platformio.ini index 0e5f5ea0..d74fb1ca 100644 --- a/platformio.ini +++ b/platformio.ini @@ -9,7 +9,7 @@ ; https://docs.platformio.org/page/projectconf.html [platformio] -default_envs = esp32c6 +default_envs = esp32devdbg src_dir = src [env] @@ -56,6 +56,7 @@ board_build.partitions = esp32_3MB.csv board = esp32-s3-devkitc-1 [env:esp32c6] +platform = https://github.com/pioarduino/platform-espressif32/releases/download/stable/platform-espressif32.zip board = seeed_xiao_esp32c6 build_type = debug board_build.partitions = esp32_huge_app.csv diff --git a/src/SomfyController.ino b/src/SomfyController.ino index 64840f64..976bb442 100644 --- a/src/SomfyController.ino +++ b/src/SomfyController.ino @@ -92,10 +92,8 @@ void setup() { #if ESP_ARDUINO_VERSION_MAJOR >= 3 const esp_task_wdt_config_t wdt_config = { .timeout_ms = 15000, .idle_core_mask = 1, .trigger_panic = true }; esp_task_wdt_init(&wdt_config); - ESP_LOGE(TAG, "TEST 1"); #else esp_task_wdt_init(15, true); //enable panic so ESP32 restarts - ESP_LOGE(TAG, "TEST 2"); #endif esp_task_wdt_add(NULL); //add current thread to WDT watch From 3d642509a5a327204853cd00b72e8c8dc17fcd9e Mon Sep 17 00:00:00 2001 From: Shailen Sobhee Date: Sun, 5 Apr 2026 20:02:59 +0200 Subject: [PATCH 08/13] updated platformio.ini to pass build tests --- platformio.ini | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/platformio.ini b/platformio.ini index d74fb1ca..a8cf6bed 100644 --- a/platformio.ini +++ b/platformio.ini @@ -13,7 +13,8 @@ default_envs = esp32devdbg src_dir = src [env] -platform = espressif32 @ 6.13.0 +; platform = espressif32 @ 6.13.0 +platform = https://github.com/pioarduino/platform-espressif32/releases/download/stable/platform-espressif32.zip framework = arduino lib_deps = bblanchon/ArduinoJson@^7.2.2 @@ -56,7 +57,7 @@ board_build.partitions = esp32_3MB.csv board = esp32-s3-devkitc-1 [env:esp32c6] -platform = https://github.com/pioarduino/platform-espressif32/releases/download/stable/platform-espressif32.zip +; platform = https://github.com/pioarduino/platform-espressif32/releases/download/stable/platform-espressif32.zip board = seeed_xiao_esp32c6 build_type = debug board_build.partitions = esp32_huge_app.csv From 3e60dfeb21efb9756c0a3f56ac5627bf7c4c7911 Mon Sep 17 00:00:00 2001 From: Shailen Sobhee Date: Sun, 5 Apr 2026 20:08:53 +0200 Subject: [PATCH 09/13] updated platformio.ini to pass build tests --- platformio.ini | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/platformio.ini b/platformio.ini index a8cf6bed..52573e39 100644 --- a/platformio.ini +++ b/platformio.ini @@ -13,8 +13,8 @@ default_envs = esp32devdbg src_dir = src [env] -; platform = espressif32 @ 6.13.0 -platform = https://github.com/pioarduino/platform-espressif32/releases/download/stable/platform-espressif32.zip +platform = espressif32 @ 6.13.0 +; platform = https://github.com/pioarduino/platform-espressif32/releases/download/stable/platform-espressif32.zip framework = arduino lib_deps = bblanchon/ArduinoJson@^7.2.2 @@ -57,7 +57,7 @@ board_build.partitions = esp32_3MB.csv board = esp32-s3-devkitc-1 [env:esp32c6] -; platform = https://github.com/pioarduino/platform-espressif32/releases/download/stable/platform-espressif32.zip +platform = https://github.com/pioarduino/platform-espressif32/releases/download/stable/platform-espressif32.zip board = seeed_xiao_esp32c6 build_type = debug board_build.partitions = esp32_huge_app.csv From 7524ce1d605386e711c1b02e863d722428e185aa Mon Sep 17 00:00:00 2001 From: Shailen Sobhee Date: Sun, 5 Apr 2026 20:19:23 +0200 Subject: [PATCH 10/13] updated platformio.ini + add -D CHIP_ESP32C6 --- platformio.ini | 1 + src/ConfigSettings.cpp | 2 ++ 2 files changed, 3 insertions(+) diff --git a/platformio.ini b/platformio.ini index 52573e39..23cf8263 100644 --- a/platformio.ini +++ b/platformio.ini @@ -63,6 +63,7 @@ build_type = debug board_build.partitions = esp32_huge_app.csv build_flags = ${env.build_flags} + -D CHIP_ESP32C6 -include "driver/gpio.h" lib_deps = ; Low-Level libs, frameowrks and drivers diff --git a/src/ConfigSettings.cpp b/src/ConfigSettings.cpp index b10ca262..c66129e5 100644 --- a/src/ConfigSettings.cpp +++ b/src/ConfigSettings.cpp @@ -158,9 +158,11 @@ bool ConfigSettings::begin() { case esp_chip_model_t::CHIP_ESP32C3: strcpy(this->chipModel, "c3"); break; + #ifdef CHIP_ESP32C6 case esp_chip_model_t::CHIP_ESP32C6: strcpy(this->chipModel, "c6"); break; + #endif default: sprintf(this->chipModel, "UNK%d", static_cast(ci.model)); break; From 25f6195bbcd80f73b913553a6d3b270b4d873150 Mon Sep 17 00:00:00 2001 From: Shailen Sobhee Date: Sun, 5 Apr 2026 21:06:48 +0200 Subject: [PATCH 11/13] build pass for esp32c6, added dependencies.lock --- .gitignore | 27 +++- CMakeLists.txt | 3 + dependencies.lock | 322 +++++++++++++++++++++++++++++++++++++++++ platformio.ini | 3 +- src/CMakeLists.txt | 6 + src/ConfigSettings.cpp | 2 +- src/Somfy.cpp | 4 +- src/idf_component.yml | 2 + 8 files changed, 358 insertions(+), 11 deletions(-) create mode 100644 CMakeLists.txt create mode 100644 dependencies.lock create mode 100644 src/CMakeLists.txt create mode 100644 src/idf_component.yml diff --git a/.gitignore b/.gitignore index 41434ccb..ee55dbd1 100644 --- a/.gitignore +++ b/.gitignore @@ -3,21 +3,34 @@ debug_custom.json esp32.vsd esp32s3.svd debug.cfg +data/ +build/ +coredump_report.txt +coredump.bin +logs/ +managed_components/ +#Ignore Somfy INO/Bin files SomfyController.ino.XIAO_ESP32S3.bin SomfyController.ino.esp32c3.bin SomfyController.ino.esp32s2.bin + +#Ignore IDE files .vscode/ -.pio/ .claude/ -data/ -build/ -coredump_report.txt -coredump.bin -logs/ # Ignore ELF binary archives elf_archive/ *.elf -managed_components/ +# Ignore PlatformIO build folder +.pio/ + +# Ignore auto-generated ESP-IDF files +sdkconfig +sdkconfig.old +sdkconfig.* + +# Ignore temporary backup files +*.orig +*.bak diff --git a/CMakeLists.txt b/CMakeLists.txt new file mode 100644 index 00000000..3f240ee6 --- /dev/null +++ b/CMakeLists.txt @@ -0,0 +1,3 @@ +cmake_minimum_required(VERSION 3.16.0) +include($ENV{IDF_PATH}/tools/cmake/project.cmake) +project(ESPSomfy-RTS) diff --git a/dependencies.lock b/dependencies.lock new file mode 100644 index 00000000..ecbac7aa --- /dev/null +++ b/dependencies.lock @@ -0,0 +1,322 @@ +dependencies: + chmorgan/esp-libhelix-mp3: + component_hash: cbb76089dc2c5749f7b470e2e70aedc44c9da519e04eb9a67d4c7ec275229e53 + dependencies: + - name: idf + require: private + version: '>=4.1.0' + source: + registry_url: https://components.espressif.com/ + type: service + version: 1.0.3 + espressif/cbor: + component_hash: dad9ca860963e930366510a10b422b3125a4fb27b979712ed65efcbcd742de50 + dependencies: + - name: idf + require: private + version: '>=5.0' + source: + registry_url: https://components.espressif.com/ + type: service + version: 0.6.1~4 + espressif/esp-dsp: + component_hash: 939e9c053487d6e7b7320a5cb761b2200e4b331730d6721668755ef76ab9f067 + dependencies: + - name: idf + require: private + version: '>=4.2' + source: + registry_url: https://components.espressif.com/ + type: service + version: 1.7.1 + espressif/esp-modbus: + component_hash: 5d5e90b9e55721a8a194b301ad8102d4affb647f47b74cd413ff7d1ce2c1169c + dependencies: + - name: idf + require: private + version: '>=4.3' + source: + registry_url: https://components.espressif.com/ + type: service + version: 1.0.18 + espressif/esp-serial-flasher: + component_hash: dcc42a16712a1a636509cf0bf90e14032d7f2141784b533613b267b6aa318d52 + dependencies: [] + source: + registry_url: https://components.espressif.com + type: service + version: 0.0.11 + espressif/esp-zboss-lib: + component_hash: 321883d142421f65009972408287441794250057668a11abbdfd8bec77c3309a + dependencies: + - name: idf + require: private + version: '>=5.0' + source: + registry_url: https://components.espressif.com/ + type: service + version: 1.6.4 + espressif/esp-zigbee-lib: + component_hash: fa0812e6743e2a7d999af9f44ccdcea17ccb1e80f98d6b2956f44687503a88fd + dependencies: + - name: idf + require: private + version: '>=5.0' + source: + registry_url: https://components.espressif.com/ + type: service + version: 1.6.8 + espressif/esp_diag_data_store: + component_hash: c1e5cf62f545d2b136db299f4df1b228b9840be5bc3410c9ad2d2a882b5c0d64 + dependencies: + - name: idf + require: private + version: '>=4.1' + source: + registry_url: https://components.espressif.com/ + type: service + version: 1.0.2 + espressif/esp_diagnostics: + component_hash: 5ea8e8da8217ed9ed778db3973139e726e17cd27ef5cf6429c787d19226c79f3 + dependencies: + - name: idf + require: private + version: '>=4.1' + - name: espressif/rmaker_common + registry_url: https://components.espressif.com + require: private + version: ~1.4.0 + source: + registry_url: https://components.espressif.com/ + type: service + version: 1.2.1 + espressif/esp_insights: + component_hash: 4015c524b9955528f941268cf080174076b195800de910d061efc46113bc2e0c + dependencies: + - name: idf + require: private + version: '>=4.1' + - name: espressif/cbor + registry_url: https://components.espressif.com + require: private + rules: + - if: idf_version >=5.0 + version: ~0.6 + - name: espressif/esp_diag_data_store + registry_url: https://components.espressif.com + require: private + version: 1.0.2 + - name: espressif/esp_diagnostics + registry_url: https://components.espressif.com + require: private + version: 1.2.1 + - name: espressif/rmaker_common + registry_url: https://components.espressif.com + require: private + version: ~1.4.0 + source: + registry_url: https://components.espressif.com/ + type: service + version: 1.2.2 + espressif/esp_modem: + component_hash: f4fa6dab2496af2673a68881132bb7ce0f05bf62e30e5bd0d45b607066378a28 + dependencies: + - name: idf + require: private + version: '>=4.1' + source: + registry_url: https://components.espressif.com/ + type: service + version: 2.0.1 + espressif/esp_rainmaker: + component_hash: f6fe458fc7a0102ee2879f0247da4b41419e6c07de12031f66e5e9454d25baaa + dependencies: + - name: espressif/esp_rcp_update + registry_url: https://components.espressif.com + require: private + rules: + - if: idf_version >= 5.1 + version: ~1.2.0 + - name: espressif/esp_schedule + registry_url: https://components.espressif.com + require: private + version: ~1.2.0 + - name: espressif/esp_secure_cert_mgr + registry_url: https://components.espressif.com + require: private + rules: + - if: idf_version >=4.3 + version: ^2.2.1 + - name: espressif/json_generator + registry_url: https://components.espressif.com + require: private + version: ~1.1.1 + - name: espressif/json_parser + registry_url: https://components.espressif.com + require: private + version: ~1.0.3 + - name: espressif/mdns + registry_url: https://components.espressif.com + require: private + rules: + - if: idf_version >=5.0 + version: ^1.2.0 + - name: espressif/network_provisioning + registry_url: https://components.espressif.com + require: private + rules: + - if: idf_version >= 5.1 + version: ~1.0.0 + - name: espressif/rmaker_common + registry_url: https://components.espressif.com + require: private + version: ~1.4.6 + source: + registry_url: https://components.espressif.com/ + type: service + version: 1.5.2 + espressif/esp_rcp_update: + component_hash: c10afbd54a17f27eed880e61262b161656e6d36ad63376c307f9273e99d0abcd + dependencies: + - name: espressif/esp-serial-flasher + registry_url: https://components.espressif.com + require: private + version: ~0.0.0 + - name: idf + require: private + version: '>=5.0' + source: + registry_url: https://components.espressif.com + type: service + version: 1.2.0 + espressif/esp_schedule: + component_hash: e202a9c688f7f1ab601efb91d682e4bcfaebc508dcceee1a1e0a0d2d1ca75a26 + dependencies: + - name: espressif/rmaker_common + registry_url: https://components.espressif.com + require: private + version: ~1.4.2 + source: + registry_url: https://components.espressif.com + type: service + version: 1.2.0 + espressif/esp_secure_cert_mgr: + component_hash: 2587797e68395edb67f30a7f9a7ce6a529492fa5fa6468592e912bc7ea34dbae + dependencies: + - name: idf + require: private + version: '>=4.3' + source: + registry_url: https://components.espressif.com + type: service + version: 2.9.1 + espressif/jsmn: + component_hash: d80350c41bbaa827c98a25b6072df00884e72f54885996fab4a4f0aebce6b6c3 + dependencies: + - name: idf + require: private + version: '>=4.3' + source: + registry_url: https://components.espressif.com + type: service + version: 1.1.0 + espressif/json_generator: + component_hash: 45033e1c199b13f1c8c1b544fb7d4e2df6a8e3071ebdcb1b22582b61a7974ff2 + dependencies: [] + source: + registry_url: https://components.espressif.com + type: service + version: 1.1.2 + espressif/json_parser: + component_hash: d74b81729ad06ec11ff5eb5b1b0d7df1d00e6027fc11471f4b139c70dcf1b1e4 + dependencies: + - name: espressif/jsmn + registry_url: https://components.espressif.com + require: private + rules: + - if: idf_version >=5.0 + version: ~1.1 + source: + registry_url: https://components.espressif.com + type: service + version: 1.0.3 + espressif/libsodium: + component_hash: b51f5836f044d8b7fbb1784257605c47ff7356f701377b005912fe6a2f12db37 + dependencies: + - name: idf + require: private + version: '>=4.2' + source: + registry_url: https://components.espressif.com/ + type: service + version: 1.0.21 + espressif/mdns: + component_hash: 1ebe3bd675bb9d1c58f52bc0b609b32f74e572b01c328f9e61282040c775495c + dependencies: + - name: idf + require: private + version: '>=5.0' + source: + registry_url: https://components.espressif.com/ + type: service + version: 1.11.0 + espressif/network_provisioning: + component_hash: ef2e10182fd1861e68b821491916327c25416ca7ae70e5a6e43313dbc71fe993 + dependencies: + - name: idf + require: private + version: '>=5.1' + source: + registry_url: https://components.espressif.com/ + type: service + version: 1.0.2 + espressif/qrcode: + component_hash: 3b493771bc5d6ad30cbf87c25bf784aada8a08c941504355b55d6b75518ed7bc + dependencies: [] + source: + registry_url: https://components.espressif.com/ + type: service + version: 0.1.0~2 + espressif/rmaker_common: + component_hash: a3a1df881278d0351fc850b77792fe8a196ddd6dcacbea203d606329cc6a0239 + dependencies: [] + source: + registry_url: https://components.espressif.com/ + type: service + version: 1.4.6 + idf: + source: + type: idf + version: 5.5.2 + joltwallet/littlefs: + component_hash: dcea25bcef2de023f089f5f01e8d8c46ad1b8ffef75861ad5ffb4098555839df + dependencies: + - name: idf + require: private + version: '>=5.0' + source: + registry_url: https://components.espressif.com/ + type: service + version: 1.20.4 +direct_dependencies: +- chmorgan/esp-libhelix-mp3 +- espressif/cbor +- espressif/esp-dsp +- espressif/esp-modbus +- espressif/esp-zboss-lib +- espressif/esp-zigbee-lib +- espressif/esp_diag_data_store +- espressif/esp_diagnostics +- espressif/esp_insights +- espressif/esp_modem +- espressif/esp_rainmaker +- espressif/libsodium +- espressif/mdns +- espressif/network_provisioning +- espressif/qrcode +- espressif/rmaker_common +- idf +- joltwallet/littlefs +manifest_hash: 3e908f06feb1567024342d2aa7f9257e07d7fd89e839fca4eec0522ea95a34de +target: esp32c6 +version: 2.0.0 diff --git a/platformio.ini b/platformio.ini index 23cf8263..a3537430 100644 --- a/platformio.ini +++ b/platformio.ini @@ -14,7 +14,6 @@ src_dir = src [env] platform = espressif32 @ 6.13.0 -; platform = https://github.com/pioarduino/platform-espressif32/releases/download/stable/platform-espressif32.zip framework = arduino lib_deps = bblanchon/ArduinoJson@^7.2.2 @@ -63,7 +62,7 @@ build_type = debug board_build.partitions = esp32_huge_app.csv build_flags = ${env.build_flags} - -D CHIP_ESP32C6 + -DCONFIG_FREERTOS_HZ=1000 -include "driver/gpio.h" lib_deps = ; Low-Level libs, frameowrks and drivers diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt new file mode 100644 index 00000000..483bc0cf --- /dev/null +++ b/src/CMakeLists.txt @@ -0,0 +1,6 @@ +# This file was automatically generated for projects +# without default 'CMakeLists.txt' file. + +FILE(GLOB_RECURSE app_sources ${CMAKE_SOURCE_DIR}/src/*.*) + +idf_component_register(SRCS ${app_sources}) diff --git a/src/ConfigSettings.cpp b/src/ConfigSettings.cpp index c66129e5..925c2a75 100644 --- a/src/ConfigSettings.cpp +++ b/src/ConfigSettings.cpp @@ -158,7 +158,7 @@ bool ConfigSettings::begin() { case esp_chip_model_t::CHIP_ESP32C3: strcpy(this->chipModel, "c3"); break; - #ifdef CHIP_ESP32C6 + #ifdef CONFIG_IDF_TARGET_ESP32C6 case esp_chip_model_t::CHIP_ESP32C6: strcpy(this->chipModel, "c6"); break; diff --git a/src/Somfy.cpp b/src/Somfy.cpp index af237cfa..04665207 100644 --- a/src/Somfy.cpp +++ b/src/Somfy.cpp @@ -4712,8 +4712,9 @@ void transceiver_config_t::load() { this->SCKPin = 15; this->CSNPin = 14; break; +#ifdef CONFIG_IDF_TARGET_ESP32C6 case esp_chip_model_t::CHIP_ESP32C6: - // Pinout applicable for the ESP32-C6-WROOM-1 module (ESP32-C6-DevKitC-1-N4) + // Pinout applicable for the ESP32-C6-WROOM-1 module (ESP32-C6-DevKitC-1-N4) this->TXPin = 10; this->RXPin = 10; this->MOSIPin = 7; @@ -4721,6 +4722,7 @@ void transceiver_config_t::load() { this->SCKPin = 6; this->CSNPin = 0; break; +#endif default: this->TXPin = 13; this->RXPin = 12; diff --git a/src/idf_component.yml b/src/idf_component.yml new file mode 100644 index 00000000..d752765f --- /dev/null +++ b/src/idf_component.yml @@ -0,0 +1,2 @@ +dependencies: + idf: '>=5.1' From 4843751bae37e10aa23350732f147ce62bff5de7 Mon Sep 17 00:00:00 2001 From: cjkas Date: Mon, 6 Apr 2026 20:28:06 +0200 Subject: [PATCH 12/13] Delete .github/workflows/ci.yaml --- .github/workflows/ci.yaml | 51 --------------------------------------- 1 file changed, 51 deletions(-) delete mode 100644 .github/workflows/ci.yaml diff --git a/.github/workflows/ci.yaml b/.github/workflows/ci.yaml deleted file mode 100644 index 8e0a5c1a..00000000 --- a/.github/workflows/ci.yaml +++ /dev/null @@ -1,51 +0,0 @@ -name: ESPSomfy-RTS - -on: [push, pull_request] - -jobs: - build: - name: ${{ matrix.name }} - runs-on: ubuntu-latest - - strategy: - fail-fast: false - matrix: - include: - - env: esp32dev - name: ESP32 - - env: esp32c3 - name: ESP32-C3 - - env: esp32s3 - name: ESP32-S3 - - env: esp32c6 - name: ESP32-C6 - - steps: - - name: Check out code - uses: actions/checkout@v4 - - - name: Set up Python - uses: actions/setup-python@v5 - with: - python-version: "3.12" - - - name: Install PlatformIO - run: pip install platformio - - - name: Build ${{ matrix.name }} - run: pio run -e ${{ matrix.env }} - - - name: Build LittleFS image - run: pio run -e ${{ matrix.env }} -t buildfs - - - name: Upload firmware - uses: actions/upload-artifact@v4 - with: - name: ${{ matrix.name }} - path: | - .pio/build/${{ matrix.env }}/firmware.bin - .pio/build/${{ matrix.env }}/firmware.elf - .pio/build/${{ matrix.env }}/partitions.bin - .pio/build/${{ matrix.env }}/bootloader.bin - .pio/build/${{ matrix.env }}/littlefs.bin - retention-days: 5 From 7e6b65bc8daa07f321f70841afcd4d54d37a3229 Mon Sep 17 00:00:00 2001 From: cjkas Date: Mon, 6 Apr 2026 20:30:26 +0200 Subject: [PATCH 13/13] Update ConfigSettings.h --- src/ConfigSettings.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/ConfigSettings.h b/src/ConfigSettings.h index 3fdc33cf..39c8a6d1 100644 --- a/src/ConfigSettings.h +++ b/src/ConfigSettings.h @@ -5,7 +5,7 @@ #ifndef configsettings_h #define configsettings_h #include "WResp.h" -// #define FW_VERSION "v2.4.8" + #ifndef FW_VERSION #define FW_VERSION "v0.0.0" // Fallback if app_version.py script fails #endif