⚡ Sensyte ESM — Firmware Updates

Over-the-air update server for ESP32-S3 energy monitors

Latest Firmware v2.2.8
Released 2026-06-06
Flash layout 16 MB — OTA + Balanced
SHA256 6fb78c4146046fad66d292d2fbcabb62425014f41154e5e0bbba58db1676d4ef

Changes: Initial OTA-enabled release — 16MB flash, dual OTA slots, LoRa support, 5-LED status system

How OTA Works
1 Devices poll this server every 6 hours:
GET /version.json
2 If version in the manifest is newer than the running firmware:
GET /firmware/sensyte-esm-v2.2.8.bin
3 Firmware writes to the inactive OTA slot, sets boot flag, and reboots
4 If the new firmware panics, the bootloader auto-rolls back
API Reference
Version check GET /version.json
Download firmware GET /firmware/sensyte-esm-v2.2.8.bin
# Check latest version
curl https://updates.sensyte.io/firmware/version.json

# Response:
# {"version":"1.0.0","url":"/firmware/sensyte-esm-v2.2.8.bin","sha256":"..."}
📦 Adding a New Firmware Version
  1. Build the firmware: idf.py build
  2. Copy build/sensyte-esm-firmware-esp-idf.bin to firmware/sensyte-esm-vX.Y.Z.bin
  3. Get SHA256: sha256sum firmware/sensyte-esm-vX.Y.Z.bin
  4. Update version.json with the new version, url, and SHA256
  5. Push to git → Cloudflare Pages auto-deploys