[LE 9.0] Xbox One S Gamepad - no inputs are recognized

  • Hi Guys :)

    I have installed Libreelec 9.0.0 (fresh - w/o any plugins or any old stuff) and wanted to connect my Xbox One S Gamepad (newest revision with Bluetooth builtin) to my Rpi3 to test the new "Retro Gaming Feature.

    I have connected the gamepad over bluetooth successfully but it doesnt regognized any buttons / axis / dpad / trigger.

    What I have done:

    • In Libreelec Addon: Enabled Bluetooth and Disabled OBEX
    • created '/storage/.config/autostart.sh' and made it executable
    • put the following in autostart.sh = bash -c 'echo 1 > /sys/module/bluetooth/parameters/disable_ertm'
    • then restarted my Rpi3
    • Then again in Libreelec Addon (Bluetooth): Paired my Gamepad (with no errors)
    • In Kodi Settings / System / Input / Driver-Settings / Joystick Support: I choosed the Linux driver

    And now the gamepad stays connected over bluetooth and also reconnect auto after LE has restarted - but dont recognize anything no buttons etc...

    cat /proc/bus/input/devices shows the following (cutted):

    I: Bus=0005 Vendor=045e Product=02fd Version=0903

    N: Name="Xbox Wireless Controller"

    H:Handlers=kbd js0 event0

    I: Bus=0005 Vendor=045e Product=02fd Version=0903

    N: Name="Xbox Wireless Controller Consumer Control"

    H: Handlers=kbd event1

    I also made "cat /dev/input/event0" and "cat /dev/input/event1" directly and tried to pressed some buttons - no luck

    So now I am at end with my linux gamepad experience and hope somebody can help me out of this ;)

    Have a nice day!

  • No one an Idea ? :(

    EDIT: I connected the Gamepad directly thru USB (bluetooth disabled). Libreelec then just detects the gamepad with xhe xpad linux driver and works flawlessy and all buttons are recognized and also can assign buttons in kodi.

    Then I disconnect USB cable and re-enable bluetooth -> Gamepad connects like always thru bluetooth and stay connected - but no buttons recognized like before...

    I then checked "btmon" command on putty and then If I press any buttons on the Gamepad: it shows the keypresses...

    When I make a cat command like: "cat /dev/input/event0" or on event1 -> Keypresses not recognized (like I said above).

    Seems to be no linux driver will be used on libreelec when gamepad is connected thru bluetooth or maybe the xpad driver is not supported with bluetooth connection ?

    Is there a way to implement xpadneo drivers: GitHub - atar-axis/xpadneo: Advanced Linux Driver for Xbox One Wireless Controller (shipped with Xbox One S)

    Need help from a Libreelec developer to track it down and maybe get to work in the future - would be nice :)

    Edited once, last by MisterT: new testings made (February 6, 2019 at 1:03 PM).

  • I am also having the same problem. The only difference is that one of the buttons work, that is the Select (or View) button. In my case, it worked like a "back" button, returning navigation to previous menu.

  • Hey all. Same problem here. Everything which was written. Connected, but nothing worked except the large X button as "back" button.

    Like MisterT sayed. Any possibility to add support for xpadneo? Or another driver? or another profile? or an bruteforce controller setup?

    Needed! i cant't play :(

  • Same here. Xbox One S controller. Wired is good, bluetooth is bad. Only the back button works.

    Still nothing after all this time? Alternatives?

    My RP4 is too far away tu use wired *sadface*

  • The problem is in the Kodi 18 switching to libinput. It handles keyboards and mice but doesn’t handle joysticks so you need to tell the libinput to ignore this device by assigning the LIBINPUT_IGNORE_DEVICE flag to it.

    Updated quick solution:

    nano /storage/.config/udev.rules.d/99-gamepad.rules


    Copy this 2 lines and replace “Gamepad” with your device name (for me it is "Xbox Wireless Controller") (check that the ENV part is kept on the same line and is not wrapped like on the forum):

    SUBSYSTEM=="input", ATTRS{name}=="Gamepad", KERNEL=="event*", MODE="0666", ENV{LIBINPUT_IGNORE_DEVICE}="1"

    SUBSYSTEM=="input", ATTRS{name}=="Gamepad", KERNEL=="event*", MODE="0666", ENV{ID_INPUT_JOYSTICK}="1"


    Then reload udev:

    udevadm trigger

  • Same Error when connecting the Xbox Elite Wireless Controller.

    Solution from ManuStrozor is not working.


    I: Bus=0005 Vendor=045e Product=0b05 Version=0903

    N: Name="Xbox Elite Wireless Controller"

    P: Phys=dc:a6:32:4d:03:15

    S: Sysfs=/devices/platform/soc/fe201000.serial/tty/ttyAMA0/hci0/hci0:11/0005:045 E:0B05.0003/input/input5

    U: Uniq=98:7a:14:5c:b9:b4

    H: Handlers=kbd js0 event1

    B: PROP=0

    B: EV=1b

    B: KEY=4000000 0 0 7fff0000 0 10000 0 0 40000000 0 0 0 10000000

    B: ABS=30627

    B: MSC=10

    I: Bus=0005 Vendor=045e Product=0b05 Version=0903

    N: Name="Xbox Elite Wireless Controller Consumer Control"

    P: Phys=dc:a6:32:4d:03:15

    S: Sysfs=/devices/platform/soc/fe201000.serial/tty/ttyAMA0/hci0/hci0:11/0005:045 E:0B05.0003/input/input6

    U: Uniq=98:7a:14:5c:b9:b4

    H: Handlers=kbd event2

    B: PROP=0

    B: EV=13

    B: KEY=1000 0 0 0 0 0

    B: MSC=10

    I: Bus=0005 Vendor=045e Product=0b05 Version=0903

    N: Name="Xbox Elite Wireless Controller Keyboard"

    P: Phys=dc:a6:32:4d:03:15

    S: Sysfs=/devices/platform/soc/fe201000.serial/tty/ttyAMA0/hci0/hci0:11/0005:045 E:0B05.0003/input/input8

    U: Uniq=98:7a:14:5c:b9:b4

    H: Handlers=sysrq kbd event3

    B: PROP=0

    B: EV=100013

    B: KEY=e080ffdf 1cfffff ffffffff fffffffe

    B: MSC=10

    My /storage/.config/udev.rules.d/99-gamepad.rules

    SUBSYSTEM=="input", ATTRS{name}=="Xbox Elite Wireless Controller Keyboard", KERNEL=="event*", MODE="0666", ENV{LIBINPUT_IGNORE_DEVICE}="1"

    SUBSYSTEM=="input", ATTRS{name}=="Xbox Elite Wireless Controller Keyboard", KERNEL=="event*", MODE="0666", ENV{ID_INPUT_JOYSTICK}="1"

  • Hi,

    i use your solution

    1. test for the current controller name
      • cat /proc/bus/input/devices
    2. create und edit file
      • nano /storage/.config/udev.rules.d/99-gamepad.rules
        • SUBSYSTEM=="input", ATTRS{name}=="Xbox Wireless Controller", KERNEL=="event*", MODE="0666", ENV{LIBINPUT_IGNORE_DEVICE}="1" SUBSYSTEM=="input", ATTRS{name}=="Xbox Wireless Controller", KERNEL=="event*", MODE="0666", ENV{ID_INPUT_JOYSTICK}="1"
    3. reboot

    But there is still a problem. The both key (back and Guide) will not work when the other keys work.

    I test the following command: cat /dev/input/event4

    Then see output for every button (guide, back, start, left and so on), but wenn i setup the controller in kodi (controller setting) kodi will not react on push this two buttons.

    So i think the filter in 99-gamepad.rules has to change so that this two buttons will not in the filter but i dont know how.

    Could you please help me?

    Best regards

    Chris

  • Sorry for resurrecting this thread, but it is the most relevant one to my issue.

    I have this gamepad

    Code
    [  305.188133@0] Indeed it is in host mode hprt0 = 00041901
    [  305.390771@0] usb 2-1: New USB device found, idVendor=0810, idProduct=0001
    [  305.390787@0] usb 2-1: New USB device strings: Mfr=0, Product=2, SerialNumber=0
    [  305.390794@0] usb 2-1: Product:  USB Gamepad
    [  305.421210@0] input:  USB Gamepad           as /devices/lm0/usb2/2-1/2-1:1.0/input/input2
    [  305.433236@0] pantherlord 0003:0810:0001.0001: input,hidraw0: USB HID v1.10 Joystick [ USB Gamepad          ] on usb-lm0-1/input0
    [  305.433304@0] pantherlord 0003:0810:0001.0001: Force feedback for PantherLord/GreenAsia devices by Anssi Hannula <[email protected]>


    this udev rule

    Code
    SUBSYSTEM=="input", ATTRS{name}==" USB Gamepad          ", KERNEL=="event*", MODE="0666", ENV{LIBINPUT_IGNORE_DEVICE}="1"
    SUBSYSTEM=="input", ATTRS{name}==" USB Gamepad          ", KERNEL=="event*", MODE="0666", ENV{ID_INPUT_JOYSTICK}="1"


    and I want it to work on dtech's build of le 9.2.8.x for amlogic devices. I have also tested it on le 9.2.6 and 10.0.4 on x64, which are the only ones I have available on my end.

    Nothing moves, nothing reacts to button presses. The best I have made it do was to react on some button presses when I am under the input settings. Pressing some buttons there poped up a dialog to configure the pad, I tried it, but again no reaction to button presses. If it helps, the behavior is the same regardless if I set the joystick driver to linux, udev or none.

    Edited once, last by jim_p (February 2, 2024 at 4:57 AM).