docs: mark rumble TX verified on hardware

Rumble works from the Rumble button in the app; Phase 3 is complete.
Next up is Phase 4 (virtual HID gamepad).

Co-Authored-By: qwen3.8-27b@q3_k_xl: marked rumble verified
This commit is contained in:
portersky
2026-08-29 15:22:16 +02:00
parent 490b8af585
commit 73c026218d
2 changed files with 9 additions and 9 deletions
+6 -6
View File
@@ -44,16 +44,16 @@ and exposes connected controllers as HID gamepads.
- Phase 3 (MT76 chip): register/EFUSE access, firmware load, radio init - Phase 3 (MT76 chip): register/EFUSE access, firmware load, radio init
(registers, crystal, MAC/BSSID, channel eval, beacon), pairing mode, (registers, crystal, MAC/BSSID, channel eval, beacon), pairing mode,
controller association, GIP handshake + auth. Verified end-to-end on controller association, GIP handshake + auth. Verified end-to-end on
hardware: live controller input is shown in the app (RX data path). hardware: live controller input is shown in the app (RX data path) and
rumble TX works from the app's Rumble button.
- C API + Swift app: async session (fast probe; firmware + radio on a worker - C API + Swift app: async session (fast probe; firmware + radio on a worker
thread), state display (idle/starting/ready/error), controller list with thread), state display (idle/starting/ready/error), controller list with
live input monitor, battery level, and a rumble test button. live input monitor, battery level, and a rumble test button.
Host to controller TX over the data path (rumble) is implemented; the dongle The dongle LED is driven at chip level for pairing and client lifecycle.
LED is driven at chip level for pairing and client lifecycle. Phase 3 is Phase 3 is complete. Next: Phase 4 (virtual HID gamepad) and Phase 5 (app
complete pending hardware confirmation of rumble. Next: Phase 4 (HID) and polish); exposing the controller as a macOS HID gamepad is the main
Phase 5 (app polish); exposing the controller as a macOS HID gamepad is the user-visible gap.
main user-visible gap.
## Directory Layout ## Directory Layout
+3 -3
View File
@@ -89,10 +89,10 @@ Strike through or check off as each is resolved.
- [x] **Frame encapsulation**: Resolved: TX/RX chip headers handled per the - [x] **Frame encapsulation**: Resolved: TX/RX chip headers handled per the
Linux driver (`send_wlan` / `process_wlan`). Association, pairing, and Linux driver (`send_wlan` / `process_wlan`). Association, pairing, and
encryption-enable management frames verified against hardware. encryption-enable management frames verified against hardware.
- [ ] **QoS data frames**: RX path verified: controller input QoS frames are - [x] **QoS data frames**: RX path verified: controller input QoS frames are
decrypted, fed to the GIP layer, and shown live in the app. Host to decrypted, fed to the GIP layer, and shown live in the app. Host to
controller TX (rumble) is implemented via the app's Rumble button, controller TX (rumble) verified on hardware via the app's Rumble
pending hardware verification. button.
### 5. AES-CCMP Encryption ### 5. AES-CCMP Encryption