merge conflicts from 05.04

This commit is contained in:
Shailen Sobhee 2026-04-05 19:08:01 +02:00
commit 3271327208
7 changed files with 59 additions and 14 deletions

View file

@ -1,6 +1,9 @@
name: ESPSomfy-RTS Release
name: ESPSomfy-RTS Build
on:
push:
branches: [main]
pull_request:
release:
types: [published]
@ -16,7 +19,7 @@ jobs:
# fwname: firmware-only binary for OTA updates
# obname: onboard image (bootloader + partitions + firmware + littlefs merged)
# for flashing a new chip via USB/serial
# addr_bootloader: chip-dependent (ESP32: 0x1000, C3/S3: 0x0)
# addr_bootloader: chip-dependent (ESP32: 0x1000, C3/S3/C6: 0x0)
# addr_fs: must match spiffs/littlefs offset in esp32_3MB.csv
include:
- env: esp32dev
@ -54,6 +57,7 @@ jobs:
steps:
- name: Get Release
if: github.event_name == 'release'
id: get_release
uses: bruceadams/get-release@v1.3.2
env:
@ -63,6 +67,7 @@ jobs:
uses: actions/checkout@v4
- name: Update version from release tag
if: github.event_name == 'release'
run: |
VERSION="${{ github.event.release.tag_name }}"
VERSION="${VERSION#v}"
@ -71,6 +76,15 @@ jobs:
sed -i "s/\?v=[0-9.]*c/?v=${VERSION}c/g" data-src/index.html
sed -i "s/appVersion = 'v[0-9.]*'/appVersion = 'v${VERSION}'/" data-src/index.js
- name: Commit version update
if: github.event_name == 'release' && matrix.env == 'esp32dev'
run: |
git config user.name "github-actions[bot]"
git config user.email "github-actions[bot]@users.noreply.github.com"
git add src/ConfigSettings.h data-src/appversion data-src/index.html data-src/index.js
git commit -m "chore: bump version to ${{ github.event.release.tag_name }}"
git push origin HEAD:${{ github.event.release.target_commitish }}
- name: Set up Python
uses: actions/setup-python@v5
with:
@ -79,16 +93,25 @@ jobs:
- name: Install PlatformIO and esptool
run: pip install platformio esptool
- name: Build LittleFS image
run: pio run -e ${{ matrix.env }} -t buildfs
- name: Save LittleFS image
run: cp .pio/build/${{ matrix.env }}/littlefs.bin littlefs.bin
- name: Build firmware
run: pio run -e ${{ matrix.env }}
- name: Build LittleFS image
run: pio run -e ${{ matrix.env }} -t buildfs
- name: Restore LittleFS image
run: cp littlefs.bin .pio/build/${{ matrix.env }}/littlefs.bin
- name: List build artifacts
run: find .pio/build/${{ matrix.env }} -maxdepth 1 -name "*.bin" | sort
- name: Create onboard image
run: |
python -m esptool --chip ${{ matrix.chip }} \
merge_bin -o ${{ matrix.obname }} \
merge-bin -o ${{ matrix.obname }} \
${{ matrix.addr_bootloader }} .pio/build/${{ matrix.env }}/bootloader.bin \
0x8000 .pio/build/${{ matrix.env }}/partitions.bin \
0x10000 .pio/build/${{ matrix.env }}/firmware.bin \
@ -97,7 +120,22 @@ jobs:
- name: Compress onboard image
run: zip ${{ matrix.obname }}.zip ${{ matrix.obname }}
- name: Upload artifacts
if: github.event_name != 'release'
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
${{ matrix.obname }}.zip
retention-days: 5
- name: Upload LittleFS
if: github.event_name == 'release'
uses: shogo82148/actions-upload-release-asset@v1.7.5
with:
github_token: ${{ github.token }}
@ -107,6 +145,7 @@ jobs:
overwrite: true
- name: Upload firmware
if: github.event_name == 'release'
uses: shogo82148/actions-upload-release-asset@v1.7.5
with:
github_token: ${{ github.token }}
@ -116,6 +155,7 @@ jobs:
overwrite: true
- name: Upload onboard image
if: github.event_name == 'release'
uses: shogo82148/actions-upload-release-asset@v1.7.5
with:
github_token: ${{ github.token }}

View file

@ -7,6 +7,10 @@
* Backup does no longer use LITTLEFS. Only RAM is used. Storage should not wear out so quick.
* Added uptime info in web UI
## There is a partition layout modification it's just better to perform full ESP32 wipeout. Perform backup then wipeout the firmware and restore from the bkp.
* fwname: firmware-only binary for OTA updates
* obname: onboard image (bootloader + partitions + firmware + littlefs merged) for flashing a new chip via USB/serial
# ESPSomfy-RTS <image src="https://user-images.githubusercontent.com/47839015/218898940-3541b360-5c49-4e38-a918-392cd0408b76.png" align="right" style="width:177px;display:inline-block;float:right"></image>
A controller for Somfy RTS blinds and shades that supports up to 32 individual shades and 16 groups over 433MHz RTx protocols. If you have IO Home Control motors this project is not for you but you can use the IO Remote protocol to connect the ESPSomfy RTS device to a disected remote. Look in the [Wiki](https://github.com/rstrouse/ESPSomfy-RTS/wiki/Controlling-Motors-with-GPIO) for options and verify whether the solution is workable for you.

View file

@ -1 +1 @@
2.5.0
3.0.10

View file

@ -8,9 +8,9 @@
<meta name="apple-mobile-web-app-title" content="ESPSomfy RTS App">
<meta name="apple-mobile-web-app-status-bar-style" content="black">
<link rel="stylesheet" href="main.css" type="text/css" />
<link rel="stylesheet" href="widgets.css" type="text/css" />
<link rel="stylesheet" href="icons.css" type="text/css" />
<link rel="stylesheet" href="main.css?v=3.0.10c" type="text/css" />
<link rel="stylesheet" href="widgets.css?v=3.0.10c" type="text/css" />
<link rel="stylesheet" href="icons.css?v=3.0.10c" type="text/css" />
<link rel="icon" type="image/png" href="favicon.png" />
<!-- iPad retina icon -->
@ -114,7 +114,7 @@
rel="apple-touch-startup-image">
<script type="text/javascript" src="index.js"></script>
<script type="text/javascript" src="index.js?v=3.0.10c"></script>
</head>
<body>
<div id="divContainer" class="container main" data-auth="false">

View file

@ -13,8 +13,7 @@ default_envs = esp32c6
src_dir = src
[env]
platform = https://github.com/pioarduino/platform-espressif32
; platform = espressif32 @ 5.4.0
platform = espressif32 @ 6.13.0
framework = arduino
lib_deps =
bblanchon/ArduinoJson@^7.2.2
@ -28,7 +27,7 @@ extra_scripts =
post:archive_elf.py
board_build.filesystem = littlefs
build_flags =
-DCORE_DEBUG_LEVEL=5
-DCORE_DEBUG_LEVEL=3
-DCONFIG_ESP_COREDUMP_ENABLE_TO_FLASH=1
-DCONFIG_ESP_COREDUMP_DATA_FORMAT_ELF=1
-DCONFIG_ESP_COREDUMP_CHECKSUM_CRC32=1

View file

@ -7,7 +7,7 @@
//enum class conn_types_t : byte;
#define CONNECT_TIMEOUT 20000
#define SSID_SCAN_INTERVAL 60000
#define SSID_SCAN_INTERVAL 600000
class ESPNetwork {
protected:
unsigned long lastEmit = 0;

View file

@ -2115,8 +2115,10 @@ void Web::begin() {
AsyncJsonResp resp;
resp.beginResponse(request, g_async_content, sizeof(g_async_content));
resp.beginObject();
resp.beginObject("config");
serializeTransceiverConfig(resp);
resp.endObject();
resp.endObject();
resp.endResponse();
}));