Case study
SF900 ESP32 Dongle: implementing the SF900 controller radio protocol
SF900 ESP32 Dongle implements the SF900/SF2000 controller's 2.4 GHz XN297L radio protocol on an ESP32-S3 receiver. It presents controller input as USB HID or BLE HID and includes a separate USB Wi-Fi mode.
- Targets
- Protocol
- Category
- Independent reconstruction cases
- Relationship
- Independent reconstruction project
- Sources reviewed
- Evidence class
- C2 code & docs, no demo or download
- Stars
- 2
- Last commit
- 2026-07-18
- Language
- C
GitHub data as of 2026-11-10
Evidence
- Observed
- Code, documentation and a demo observed; no download method found.
- Checked
- 2026-11-08
Requirements & limits
- Prerequisites: Requires an ESP32-S3 board, an XN297L radio and a USB-C OTG adapter for handheld use.
- Prerequisites: Building the firmware requires PlatformIO.
- License: MIT license; bundled third-party components retain their own licenses.
Cite
BibTeX
@misc{sf900-esp32-dongle-case,
title = {{SF900 ESP32 Dongle: implementing the SF900 controller radio protocol}},
howpublished = {\url{https://github.com/fernandoalves25/sf900-esp32-dongle}},
url = {https://github.com/fernandoalves25/sf900-esp32-dongle},
urldate = {2026-11-06},
note = {Awesome REA entry: \url{https://awesomerea.org/resources/sf900-esp32-dongle-case/}}
}Plain text
SF900 ESP32 Dongle: implementing the SF900 controller radio protocol. https://github.com/fernandoalves25/sf900-esp32-dongle (accessed 2026-11-06). Awesome REA entry: https://awesomerea.org/resources/sf900-esp32-dongle-case/
Useful? Star Awesome REA on GitHub2.4k
About this entry
The description was reviewed against primary sources.
Primary sources
- README.md GitHub · fernandoalves25/sf900-esp32-dongle · Revision f8b1436
- docs/PROTOCOL.md GitHub · fernandoalves25/sf900-esp32-dongle · Revision f8b1436
More in Protocols
- hydroshift2: reconstructing HydroShift II LCD-C USB control · Case study
- N2Elite-ng: reconstructing N2 Elite dongle control · Case study
- Huawei MateBook 13 · Linux: Goodix fingerprint protocol and Linux driver · Case study
- TP2-Y Label Studio: reconstructing Bluetooth label printing · Case study
- Halo Home for Home Assistant: reconstructing local Avi-on mesh control · Case study
- foobot-local: local Foobot service and reconstructed protocols · Case study