Commit graph

159 commits

Author SHA1 Message Date
eddy
0bf2dcd00f Merge fix/issue-5-hs-s43a-s3r-cleanup: HS-S43A touch migration + S3R cleanup (closes #5)
All checks were successful
CI / firmware (push) Successful in 1m18s
CI / android (push) Successful in 14s
2026-08-02 00:54:12 +02:00
eddy
109088cf52 Merge branch 'fix/issue-5-hs-s43a-s3r-cleanup' 2026-08-02 00:53:03 +02:00
eddy
b192c26ff6 Merge fix/issue-1-ota-ack: OTA confirm protocol, version 15
Some checks failed
CI / firmware (push) Failing after 58s
CI / android (push) Has been skipped
2026-08-02 00:48:32 +02:00
eddy
516a938c7b fix: OTA wait for 0xFF confirm before reboot, version bump to 15, improved logging 2026-08-02 00:48:28 +02:00
eddy
f74a4a5420 fix: Android send 0xFF reboot confirmation after OTA COMPLETE (closes #1)
Some checks failed
CI / firmware (pull_request) Failing after 1m13s
CI / android (pull_request) Has been skipped
2026-08-01 23:14:29 +02:00
eddy
e5bb09e96e docs: purge remaining S3R references from historical docs and handleiding
All checks were successful
CI / firmware (pull_request) Successful in 1m20s
CI / android (pull_request) Successful in 13s
2026-08-01 22:57:40 +02:00
eddy
81779b6834 docs: purge S3R references from historical design docs and plans 2026-08-01 22:56:18 +02:00
eddy
23562352f6 fix: update build paths m5stack-atoms3r → s3lite-server 2026-08-01 22:55:30 +02:00
eddy
0860be0e2b docs: update README for S3 Lite + HS-S43A, remove S3R references 2026-08-01 22:55:19 +02:00
eddy
165822735c docs: update AGENTS.md for S3 Lite + HS-S43A touch sensors 2026-08-01 22:54:54 +02:00
eddy
5bb87ed4a4 fix: remove pullups, invert touch logic for HS-S43A sensors 2026-08-01 22:54:31 +02:00
eddy
a84727abdc fix: relay pins G1/G2, OTA CCCD+retry, single version source
Some checks failed
CI / firmware (push) Failing after 57s
CI / android (push) Has been skipped
- Relay pins: G39→G1, G38→G2
- BUNDLED_FIRMWARE_VERSION → SylDaVersions.SERVER (version.txt)
- OTA: explicit CCCD descriptor write for Android 13+
- OTA: start packet retry (previously no retry, blocked by pending CCCD)
- OTA: firmware path device-mode-aware (server/client subdirs)
- Removed stale root firmware.bin, flashMethodGroup, dialog_overwrite_confirm
- PrefsHelper: serverUUID/clientUUID persistence
2026-08-01 03:11:43 +02:00
eddy
45f8f38e81 chore: cleanup — .gitignore, track design docs 2026-08-01 00:52:03 +02:00
eddy
92c79ac93f feat: MainActivity device mode — disable relay controls for client mode 2026-08-01 00:38:32 +02:00
eddy
ccfd7cb693 feat: EspFlasher split assets server/client based on deviceMode 2026-08-01 00:38:19 +02:00
eddy
793c8f190c feat: Android — device/transport radio buttons, PrefsHelper keys 2026-08-01 00:37:52 +02:00
eddy
bce5fc4107 fix: client — spec compliance, memory leak, LED order 2026-08-01 00:35:15 +02:00
eddy
97c79b9f4c feat: client firmware — touch/button, BLE scan, HMAC, server UUID verify, USB CDC provisioning 2026-08-01 00:32:23 +02:00
eddy
1e47fc3de7 fix: button toggle logic for relay1 2026-08-01 00:26:50 +02:00
eddy
a371e29058 chore: branch setup — version.txt, platformio.ini envs, qio_qspi 2026-08-01 00:19:42 +02:00
eddy
7b583c4a67 CI: fix ANDROID_HOME path for self-hosted runner
All checks were successful
CI / firmware (push) Successful in 18s
CI / android (push) Successful in 16s
2026-07-31 00:10:05 +02:00
eddy
f87443148f CI: replace unsupported upload/download-artifact@v4 with shared host dir
Some checks failed
CI / firmware (push) Successful in 22s
CI / android (push) Failing after 4s
Forgejo does not support @actions/artifact v2 (GHES limitation).
Self-hosted jobs share /tmp/ci-artifacts between jobs.
2026-07-31 00:08:02 +02:00
eddy
7c0d817018 CI: remove pip install platformio (already in PATH via linuxbrew)
Some checks failed
CI / firmware (push) Failing after 21s
CI / android (push) Has been skipped
2026-07-31 00:06:19 +02:00
eddy
27663d3aac chore: trigger CI after Forgejo upgrade to v16
Some checks failed
CI / firmware (push) Failing after 24s
CI / android (push) Has been skipped
2026-07-31 00:03:03 +02:00
eddy
1156199cff test: trigger CI with forgejo runner 2026-07-30 23:57:03 +02:00
eddy
044629e6ef feat: add CI/CD pipelines — firmware + Android build, automated release 2026-07-30 23:45:31 +02:00
eddy
3debc3b31d fix: newline in .gitignore 2026-07-30 23:41:44 +02:00
eddy
820d09ab63 chore: rebuild release with fixed firmware, gitignore release/ 2026-07-30 23:41:24 +02:00
eddy
84503f3a24 fix: revert SDK 36 bump, fix NimBLE setMTU crash, add --no-stub for OPI flash 2026-07-30 23:38:32 +02:00
eddy
3b9028b096 Merge branch 'bump/targetsdk-36' 2026-07-30 22:17:03 +02:00
eddy
799c4dfae8 chore: bump compileSdk/targetSdk to 36, fix layout fitsSystemWindows 2026-07-30 22:17:00 +02:00
eddy
b2662247bb fix: cd to release dir before uploading assets v1.0 2026-07-30 19:55:15 +02:00
eddy
70f004c45b docs: add release build spec and implementation plan
Also un-ignores docs/ directory so project documentation (specs, plans)
is tracked in git. Individual research files remain gitignored.
2026-07-30 19:54:13 +02:00
eddy
ff3e92b8dd feat: add release build script 2026-07-30 19:51:42 +02:00
eddy
f26ab1542b chore: gitignore keystore and signing.properties 2026-07-30 19:51:12 +02:00
eddy
9d2d3e6e91 feat: add release signing config via signing.properties 2026-07-30 19:50:57 +02:00
eddy
20bb151d09 Make settings gear icon clickable in MainActivity 2026-07-30 19:27:42 +02:00
eddy
97a1eff6fa chore: update bundled firmware.bin with SHA256 verification 2026-07-30 19:17:20 +02:00
eddy
69c4ee040d chore: remove unused otaStatusText widget 2026-07-30 19:16:56 +02:00
eddy
44297d30ad fix: check writeCharacteristic return value in sendOtaData 2026-07-30 19:16:28 +02:00
eddy
fcbf1e9b5f feat: ESP MTU 512 + dynamic Android chunk size based on negotiated MTU 2026-07-30 19:15:55 +02:00
eddy
475c029512 feat: OTA notification handling with ACK/NAK retry logic 2026-07-30 19:14:23 +02:00
eddy
ea8bab4571 feat: incremental SHA256 verification before esp_ota_set_boot_partition 2026-07-30 19:13:27 +02:00
eddy
8a54367e30 docs: OTA improvements implementation plan 2026-07-30 19:08:18 +02:00
eddy
b1591b7bdb docs: OTA improvements design spec 2026-07-30 19:04:34 +02:00
eddy
0513e7777d fix: USB/OTA update flow - version check, chunk size, UX improvements
- MainActivity: suppress toast when activity not resumed, auto-navigate to
  Settings on new firmware
- SettingsActivity: unified BLE/USB radio buttons + single update button,
  version check before OTA, show dialog before loadFirmware, spinner timeout
- BleRelayManager: expose getEspVersion()
- OtaManager: reduce chunk size 500→248 to fit BLE MTU 255
- ESP: WRITE→WRITE_NR on OTA characteristic (was silently dropping data)
- Layout/strings: remove intro text, add method radio buttons
- Bump all firmware versions to v5
2026-07-30 18:59:08 +02:00
eddy
e05d57a32c fix: detecteer ontbrekende OTA characteristic en toon USB-flash melding 2026-07-30 17:37:05 +02:00
eddy
7e45cb4c56 feat: toon 'Firmware is up-to-date' toast bij gelijke versies 2026-07-30 17:29:09 +02:00
eddy
57ef68fcab fix: toast tekst ingekort, settings balk volledig klikbaar, version-check fallback voor oude ESP firmware 2026-07-30 17:25:57 +02:00
eddy
1499d840ce fix: handle missing VERSION characteristic gracefully on old ESP firmware 2026-07-30 17:20:38 +02:00