fix: use upstream dongle firmware

Use the common xow_dongle.bin image from the upstream driver for the
GUI session instead of selecting the older 02E6-specific image. Update
the firmware download script and plan to document the same upstream flow.
Keep the extended RX diagnostics used to inspect controller discovery.

Co-Authored-By: openai/gpt-5.6-luna: traced firmware and pairing behavior
This commit is contained in:
portersky
2026-08-29 12:35:50 +02:00
parent 5fd1b3a11f
commit baebcb73c2
5 changed files with 16 additions and 25 deletions
+4 -7
View File
@@ -40,7 +40,7 @@ User-space macOS app that speaks to the Xbox Wireless Dongle (MT76xx chip) and e
- Phase 1 (GIP + auth): ported and unit-tested.
- Phase 2 (USB transport): probe/open, async read pump, vendor requests,
bulk write. Verified on hardware.
- Phase 3 (MT76 chip): register/EFUSE access, firmware load (per-PID images),
- Phase 3 (MT76 chip): register/EFUSE access, firmware load,
radio init (registers, crystal, MAC/BSSID, channel eval, beacon). Verified
end-to-end: `radio-init` completes, beacon TX enabled, FCE shows firmware
running.
@@ -282,12 +282,9 @@ on first packet, so a fresh adapter yields its single client on demand.
Firmware binaries are downloaded from Microsoft Windows Update driver catalog:
| PID | Dongle Type | Firmware File |
| ---- | ---------------------- | -------------------- |
| 02E6 | Old dongle | xone_dongle_02e6.bin |
| 02FE | New dongle | xone_dongle_02fe.bin |
| 02F9 | Built-in (ASUS/Lenovo) | xone_dongle_02f9.bin |
| 091E | Surface Book 2 | xone_dongle_091e.bin |
| PID | Dongle Type | Firmware File |
| ---- | ---------------------- | ------------- |
| all | Supported dongles | xow_dongle.bin |
Downloaded via `scripts/download-firmware.sh` (port of `install/firmware.sh`).