Fix Xbox Elite Series 2 Bluetooth input - #643
Conversation
|
Thanks for staring a PR 🙏🏻 let me know when you're ready for a review and I'll jump in. |
|
I’ll let you know. It’s been a slog I don’t feel super close to getting it
done yet. I have to babysit the computer and try button input to see if it
captures it
Sent from iPhone
…On Thu, Jul 16, 2026 at 7:00 PM Nick Blackmon ***@***.***> wrote:
*nickybmon* left a comment (nickybmon/OpenEmu-Silicon#643)
<#643 (comment)>
Thanks for staring a PR 🙏🏻 let me know when you're ready for a review
and I'll jump in.
—
Reply to this email directly, view it on GitHub
<#643?email_source=notifications&email_token=AAJUO7RTEVWNNRMOSP72RHL5FFM7TA5CNFSNUABFM5UWIORPF5TWS5BNNB2WEL2JONZXKZKDN5WW2ZLOOQXTIOJZG4ZTKMRTGIZ2M4TFMFZW63VGMF2XI2DPOKSWK5TFNZ2KYZTPN52GK4S7MNWGSY3L#issuecomment-4997352323>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AAJUO7WGQSPCWXW45WBO3D35FFM7TAVCNFSNUABGKJSXA33TNF2G64TZHMYTCOBXGI4DCOJUGY5US43TOVSTWNBYHA3TKNJUGQ2TBILWAI>
.
You are receiving this because you authored the thread.Message ID:
***@***.***>
|
|
@jeffscottward haha, no problem! Should I wait and merge this with the other PR back to back once you get this one sorted? or would it be helpful to you to go ahead and merge the other? |
@nickybmon I would definitely wait I'd rather inherit anything upstream from you and then be sure of what I have |
|
@jeffscottward I don't have an Xbox bluetooth controller, so there may not be much I can do to help you, but let me know if there's anything that comes to mind that I could do to help out. |
Summary
IOHIDDeviceRefwrappers that resolve to the same IOKit registry service045e:0b05) through Apple’s GameController frameworkRoot cause
The Elite Series 2 Bluetooth descriptor advertises both Keyboard and GamePad collections. OpenEmu’s keyboard-only routing treated that hybrid device as a keyboard, and the same physical controller could also appear through multiple HID wrappers. After correcting classification and deduplication, raw HID still did not provide usable game input because macOS owns this supported controller through GameController.
The new handler is deliberately limited to the live-proven Bluetooth VID/PID and requires GameController support plus an unambiguous one-controller/one-handler/raw-device match. It does not change the separate wired
045e:0b00path handled by #641.Validation
OEGameControllerHIDDeviceHandlerTestsandOEHIDDeviceClassificationTestsOpenEmuSystemtest suitexcodebuild analyzewith only pre-existing baseline warningsGameController.frameworklinkage and staged-diff integrity checksThe earlier classification/dedup build was live-verified to register exactly one Elite HID handler. Final physical button/mapping and disconnect/reconnect verification remains pending, so this PR is intentionally opened as a draft.
Addresses #642