ESPSomfy-RTS/src
cjkas a1622e652d build: move to pioarduino 55.03.312 (Arduino 3.3.12, ESP-IDF 5.5)
IDF 4.4 gets no more security fixes, and the planned RMT radio needs
IDF 5's RMT driver.  See docs/adr/0003-pioarduino-idf55.md.

- Every env on one pinned pioarduino release.  C6 drops its own
  library list and flags but stays a debug build on huge_app.
- Release envs build at CORE_DEBUG_LEVEL=2 so the ESP32 image fits its
  1.5 MB OTA slot (17 KB free); debug envs stay at 3.
- Drop the C3: its image is 76.5 KB over the OTA slot on IDF 5.5.
- CI installs pioarduino's Core and checks firmware.bin against the app
  partition, failing under 8 KB free.  PlatformIO's "Flash:" figure
  reads ~45 KB low and passed a C3 image that doesn't fit.
- esp_task_wdt_reconfigure(): on 3.x the core already starts the watchdog
  and esp_task_wdt_init() fails, so the C6 build kept the 5 s default.
- An updated firmware is kept only once it has run 60 s with the
  network up; a reset before then rolls back to the previous one.
- ETH.begin() takes the 3.x argument order; Arduino 2.x branches gone.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-19 22:05:22 +02:00
..
entryPoints feat: keep Ethernet settings independent of the framework 2026-10-19 21:13:49 +02:00
outputs fix: stop the 5 s boot wait, tell the client about a bad restore 2026-10-19 18:08:16 +02:00
ConfigFile.cpp feat: keep Ethernet settings independent of the framework 2026-10-19 21:13:49 +02:00
ConfigFile.h fix: stop the 5 s boot wait, tell the client about a bad restore 2026-10-19 18:08:16 +02:00
ConfigHeader.h fix: stop the 5 s boot wait, tell the client about a bad restore 2026-10-19 18:08:16 +02:00
ConfigSettings.cpp feat: keep Ethernet settings independent of the framework 2026-10-19 21:13:49 +02:00
ConfigSettings.h feat: keep Ethernet settings independent of the framework 2026-10-19 21:13:49 +02:00
ESPNetwork.cpp build: move to pioarduino 55.03.312 (Arduino 3.3.12, ESP-IDF 5.5) 2026-10-19 22:05:22 +02:00
ESPNetwork.h test: cover the roam threshold and who gets memStatus 2026-10-13 15:37:12 +02:00
EthPhy.h feat: keep Ethernet settings independent of the framework 2026-10-19 21:13:49 +02:00
GitOTA.cpp refactor: split the transports into the modules GLOSSARY.md names 2026-10-16 13:47:56 +02:00
GitOTA.h remove sync server 2026-03-24 19:23:35 +01:00
JsonFormatter.cpp fix: track the JSON length instead of recounting it 2026-10-12 16:04:13 +02:00
JsonFormatter.h fix: track the JSON length instead of recounting it 2026-10-12 16:04:13 +02:00
LogLock.cpp build: move to pioarduino 55.03.312 (Arduino 3.3.12, ESP-IDF 5.5) 2026-10-19 22:05:22 +02:00
LogLockPolicy.h fix: don't wait on a log lock holder that can't run 2026-10-12 18:35:42 +02:00
LoopQueue.cpp fix: stop the 5 s boot wait, tell the client about a bad restore 2026-10-19 18:08:16 +02:00
LoopQueue.h refactor: apply shade model edits on loop() through ModelEditor 2026-10-16 10:26:45 +02:00
ModelEditor.cpp refactor: apply shade model edits on loop() through ModelEditor 2026-10-16 10:26:45 +02:00
ModelEditor.h refactor: apply shade model edits on loop() through ModelEditor 2026-10-16 10:26:45 +02:00
ModelSnapshot.cpp fix: give out ids up to the maximum 2026-10-17 23:03:16 +02:00
ModelSnapshot.h test: prove no read item can outgrow the snapshot unit 2026-10-17 23:29:04 +02:00
MqttConnection.cpp refactor: split the transports into the modules GLOSSARY.md names 2026-10-16 13:47:56 +02:00
MqttConnection.h refactor: split the transports into the modules GLOSSARY.md names 2026-10-16 13:47:56 +02:00
PulseDecoder.cpp refactor: move the RX pulse decoder into PulseDecoder 2026-10-13 21:21:05 +02:00
PulseDecoder.h refactor: move the RX pulse decoder into PulseDecoder 2026-10-13 21:21:05 +02:00
RadioScheduler.cpp refactor: name radio jobs as GLOSSARY.md does 2026-10-13 15:13:03 +02:00
RadioScheduler.h refactor: name radio jobs as GLOSSARY.md does 2026-10-13 15:13:03 +02:00
RollingCode.h refactor: rename what is left of Somfy.cpp to SomfyShade.cpp 2026-10-13 20:47:14 +02:00
Secrets.h fix: keep stored secrets when an older UI sends them empty 2026-10-18 20:07:31 +02:00
ShadeBehaviour.cpp cleanup: drop the step cases onWaitingFrame never reaches 2026-10-17 23:25:16 +02:00
ShadeBehaviour.h fix: keep a tilt-only shade's lift at 100 whatever sends the command 2026-10-16 22:47:53 +02:00
ShadeChanges.cpp refactor: send shade and group changes once per loop() pass 2026-10-16 10:40:44 +02:00
ShadeChanges.h refactor: send shade and group changes once per loop() pass 2026-10-16 10:40:44 +02:00
ShadeController.cpp Merge pull request #57 from cjkas/fix/full-id-range 2026-10-17 23:12:31 +02:00
ShadeGpio.cpp refactor: move the shade's behaviour into ShadeBehaviour 2026-10-16 21:21:38 +02:00
ShadeMotion.cpp fix: default a set-favorite request's tilt to the favorite tilt 2026-10-14 15:57:49 +02:00
ShadeMotion.h fix: default a set-favorite request's tilt to the favorite tilt 2026-10-14 15:57:49 +02:00
ShadeRequests.cpp refactor: carry out shade requests from one module behind a LoopQueue 2026-10-16 09:42:58 +02:00
ShadeRequests.h refactor: carry out shade requests from one module behind a LoopQueue 2026-10-16 09:42:58 +02:00
ShadeSensors.cpp fix: move only the tilt of a tilt-only shade for sun and wind 2026-10-13 21:14:20 +02:00
ShadeSensors.h fix: move only the tilt of a tilt-only shade for sun and wind 2026-10-13 21:14:20 +02:00
ShadeSettings.h refactor: hold shade settings in ShadeSettings and RemoteSettings 2026-10-16 20:31:39 +02:00
ShadeTypes.h refactor: move the shade's behaviour into ShadeBehaviour 2026-10-16 21:21:38 +02:00
Somfy.h refactor: move the shade's behaviour into ShadeBehaviour 2026-10-16 21:21:38 +02:00
SomfyController.ino build: move to pioarduino 55.03.312 (Arduino 3.3.12, ESP-IDF 5.5) 2026-10-19 22:05:22 +02:00
SomfyEditor.h refactor: apply shade model edits on loop() through ModelEditor 2026-10-16 10:26:45 +02:00
SomfyFrame.cpp refactor: move the shade's behaviour into ShadeBehaviour 2026-10-16 21:21:38 +02:00
SomfyFrame.h refactor: move the shade's behaviour into ShadeBehaviour 2026-10-16 21:21:38 +02:00
SomfyGroup.cpp refactor: hold shade settings in ShadeSettings and RemoteSettings 2026-10-16 20:31:39 +02:00
SomfyJson.cpp feat: keep Ethernet settings independent of the framework 2026-10-19 21:13:49 +02:00
SomfyRemote.cpp refactor: move the shade's behaviour into ShadeBehaviour 2026-10-16 21:21:38 +02:00
SomfyShade.cpp refactor: move the shade's behaviour into ShadeBehaviour 2026-10-16 21:21:38 +02:00
SomfyShadeOps.cpp refactor: move the shade's behaviour into ShadeBehaviour 2026-10-16 21:21:38 +02:00
SomfyShadeOps.h refactor: carry out shade requests from one module behind a LoopQueue 2026-10-16 09:42:58 +02:00
SomfySnapshot.cpp refactor: move the shade's behaviour into ShadeBehaviour 2026-10-16 21:21:38 +02:00
SomfySnapshot.h refactor: serve the read routes from a ModelSnapshot that loop() fills 2026-10-16 10:05:22 +02:00
SSDP.cpp feat: keep Ethernet settings independent of the framework 2026-10-19 21:13:49 +02:00
SSDP.h init 2026-03-10 20:23:48 +01:00
Timing.h refactor: time steps with ElapsedTimer::lap() 2026-10-13 15:39:14 +02:00
Transceiver.cpp fix: make the socket buffer big enough for the largest event 2026-10-17 23:32:50 +02:00
Transceiver.h refactor: move the RX pulse decoder into PulseDecoder 2026-10-13 21:21:05 +02:00
TxBuffer.cpp test: cover the radio queue rules, shade TX state, rolling codes and web command hold 2026-10-12 20:26:33 +02:00
TxBuffer.h refactor: name radio jobs as GLOSSARY.md does 2026-10-13 15:13:03 +02:00
Utils.cpp build: move to pioarduino 55.03.312 (Arduino 3.3.12, ESP-IDF 5.5) 2026-10-19 22:05:22 +02:00
Utils.h build: move to pioarduino 55.03.312 (Arduino 3.3.12, ESP-IDF 5.5) 2026-10-19 22:05:22 +02:00
WResp.cpp fix: track the JSON length instead of recounting it 2026-10-12 16:04:13 +02:00
WResp.h feat: log timings for slow work, socket clients and boot crashes 2026-10-11 20:35:43 +02:00