How scoobler/esp-thread-br-sonoff-donglem works
This repository is firmware for a Sonoff Dongle-M OpenThread Border Router: the ESP32 provides border-router services while the EFR32MG24 remains the Thread RCP. The documented user path is to connect Ethernet or provision Wi-Fi, then manage Thread networks through the web UI, REST API, or console; the device maintains Thread state and exposes topology and Home Assistant integration. The tree also shows web-server, CLI, and OTA/RCP-update components. Several README capabilities have no sampled implementation, so those branches are represented at their enclosing component directory; unsampled runtime wiring is not asserted.
Main entry points: esp_br_web_api.c REST handlers · esp_br_web.c Web server · esp_ot_br_server Ethernet uplink · esp_br_wifi_config.c Wi-Fi provisioning
Components 16
Uplink and recovery
- Ethernet uplink
components/esp_ot_br_server - Wi-Fi provisioning
components/esp_ot_br_server/src/esp_br_wifi_config.c - Failover recovery
components/esp_ot_br_server
Thread services
- Border router
components/esp_ot_br_server - Dataset management
components/esp_ot_br_server/src/esp_br_web_api.c - Topology view
components/esp_ot_br_server/src/esp_br_web_api.c - NAT64 services
components/esp_ot_cli_extension/src/esp_ot_dns64.c
User management
- Web interface
components/esp_ot_br_server/frontend/static/api.js - Web server
components/esp_ot_br_server/src/esp_br_web.c - REST handlers
components/esp_ot_br_server/src/esp_br_web_api.c - CLI extensions
components/esp_ot_cli_extension/src/esp_ot_cli_extension.c
Firmware updates
- HTTP OTA
components/esp_br_http_ota/src/esp_br_http_ota.c - RCP updater
components/esp_rcp_update/src/esp_rcp_update.c
Other components
- Operator
- Web browser
- Home Assistant
Connections 12
- Operator → Ethernet uplink: connects via
README.md - Operator → Wi-Fi provisioning: provisions
README.md - Ethernet uplink → Failover recovery: falls back
README.md - Wi-Fi provisioning → Failover recovery: recovers through
README.md - Web browser → Web interface: uses
README.md - Web server → Web interface: serves
- Web server → REST handlers: provides APIs
- Operator → CLI extensions: uses
README.md - REST handlers → Dataset management: manages
components/esp_ot_br_server/src/esp_br_web_api.c - REST handlers → Topology view: reports
components/esp_ot_br_server/src/esp_br_web_api.c - Home Assistant → Border router: integrates with
README.md - HTTP OTA → RCP updater: uses
components/esp_br_http_ota/src/esp_br_http_ota.c