ValveSoftware / ValveSoftware/steam-devices
Missing hidraw uaccess rule for Xbox Wireless Controller over Bluetooth (045E:02E0)
Nobody has claimed this yet.
- Dominant language
- No language data
- Stars
- 241
- Forks
- 59
- PR merge metrics
- No merged PRs in 30d
Description
60-steam-input.rules has hidraw uaccess rules for Valve, Sony, Nintendo, and the Xbox Elite Series 2 (045E:0B22), but not for the standard Xbox Wireless Controller over Bluetooth (045E:02E0, kernel hid-microsoft driver).
So after yesterdays update to current Proton Experimental build, it now rteads Xbox Bluetooth pads via hidraw and not the old evdev.
With no rule, /dev/hidraw* for this controller stays root:root 0600, so any game running with Steam Input disabled sees no controller at all depite Steam itself still detecting it fine via evdev, which made this a pain to diagnose.
Verified on: CachyOS (Arch), steam-devices 1.0.0.86, Xbox Wireless Controller over Bluetooth.
Reproduce steps:
- Pair the controller over Bluetooth (shows up as 045E:02E0, hid-microsoft).
- Launch any Proton game with Steam Input disabled (I used Exo One, appid 773370) on Proton Experimental. Controller is not detected in-game.
getfacl /dev/hidrawNfor the controller shows no user ACL (root-only, 0600).setfacl -m u:$USER:rw /dev/hidrawNand the controller is detected in-game immediately.
Fixed via the following rule:
KERNEL=="hidraw*", KERNELS=="*045E:02E0*", MODE="0660", TAG+="uaccess"
The USB PID for the same controller (045E:02EA) and newer Xbox Series pads likely have the same gap, but I've only verified 02E0 over Bluetooth.
For my own permanent fix I ran the following:
echo 'KERNEL=="hidraw*", KERNELS=="*045E:02E0*", MODE="0660", TAG+="uaccess"' | sudo tee /etc/udev/rules.d/71-xbox-bt-hidraw.rules
sudo udevadm control --reload
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Open 60-steam-input.rules and inspect the existing hidraw uaccess entries for Xbox devices. Reload the udev rules and verify that the 045E:02E0 Bluetooth controller receives a user ACL and is detected by a Proton game with Steam Input disabled; keep the change scoped to the verified device.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- linux
- Domain
- operating-systems
- Issue type
- Bug
- Difficulty
- 1/5
- Estimated time
- Under an hour
- Activity status
- Quiet
- Clarity
- Clearly specified
- Newbie friendliness
- 78/100