xpadneo icon indicating copy to clipboard operation
xpadneo copied to clipboard

gentoo + 045e:02ea Microsoft Corp. Xbox One Controller (wired usb)

Open darkicekeel opened this issue 1 year ago • 7 comments

as you can imagine, i'm struggling to get this to work. installed xpadneo and modprobe hid-xpadneo, no success in having this working through usb cable. what am i missing here?

darkicekeel avatar Jul 01 '24 06:07 darkicekeel

xpadneo cannot work with USB unless your USB device would be a HID device. But Xbox controllers in USB mode use GIP instead of HID. The in-kernel xpad driver does support the GIP mode.

I'm planning on implementing GIP later by converting GIP und HID with a user-space daemon. That way, we can also work with the Xbox dongle. But currently there's no concrete plans on when to do that.

kakra avatar Jul 01 '24 08:07 kakra

so, only bluetooth? i'm waiting for a "supposed compatible" dongle. i'll see if xpadneo will work with that, as soon as it arrives

darkicekeel avatar Jul 01 '24 08:07 darkicekeel

so, only bluetooth?

Yes, in full context, it means exactly that. But xpadneo doesn't depend on Bluetooth, it is a HID driver. Actually, it doesn't even see the Bluetooth connection.

i'm waiting for a "supposed compatible" dongle. i'll see if xpadneo will work with that, as soon as it arrives

It should work. Until then, the stock-kernel xpad driver will support USB mode of this controller. It should just work via USB, no matter if xpadneo is installed. Both drivers do not conflict if used/enabled/installed at the same time because xpad does NOT handle HID.

kakra avatar Jul 01 '24 11:07 kakra

what if i've got xpadneo xboxdrv AND xpad in the kernel.... will they conflict somehow or is it possible to keep all together?

darkicekeel avatar Jul 02 '24 14:07 darkicekeel

You can use both at the same time.

There's one pitfall: If you disconnect Bluetooth, modern bluez versions will keep the device node around for fast reconnects. If you switch to USB then, your system sees two controllers: one seemingly dead, one over USB. Most Proton games are pretty silly and just look for inputs on the first connected controller, rendering the "second" useless. You can fix this by restarting the bluez service. But this is cumbersome while in a game.

There's a "secret hidden" configuration setting for bluez which will make it remove disconnected devices, but I don't remember what it is called. It's not documented, you only find it by looking in the git commit history of bluez. I think they just forgot to document that.

kakra avatar Jul 02 '24 15:07 kakra

otherwise, just shutting down bluez. i'll try asap and update here if succeeded

darkicekeel avatar Jul 06 '24 09:07 darkicekeel

You can follow up here if you're observing that behavior of the Bluetooth device staying visible despite being disconnected: https://github.com/atar-axis/xpadneo/issues/475#issuecomment-2208490082

kakra avatar Jul 06 '24 10:07 kakra