Posts by Hellsgore

    Hi Guys,

    I would like to thank the community by signing up here and describing my solution to the problem. Here is the problem I had:

    - New Microsoft XBox Controller Model 1914

    - Pairing failed all the time

    - The connection kept switching between on and off to the controller

    - The XBox icon has been flashing continuously

    My system:

    - LibreElec (official) 10.0.4 (kernel: Linux 5.10.161)

    - New XBox controller model 1914 with latest firmware; Previously I updated the controller on a Windows PC with the XBox accessory software.

    - TP Link USB Bluetooth Stick UB400

    My steps to the solution:

    1. Switch OFF the controller

    2. Disable ERTM (type in the following line in command line)

    Code
    echo 'options bluetooth disable_ertm=Y' > /storage/.config/modprobe.d/bluetooth-disable-ertm.conf

    2.1 After that a file "bluetooth-disable-ertm.conf" should be created in the directory and have the entry 'options bluetooth disable_ertm=Y'.

    3. 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. I don't know if it was solved in Kodi 19, that's why I did this step.

    3.1 Create a file "99-gamepad.rules" with the following content in "/storage/.config/udev.rules.d/" (type in the following line in command line)

    Code
    echo -e 'SUBSYSTEM=="input", ATTRS{name}=="Xbox Wireless Controller", KERNEL=="event*", MODE="0666", ENV{LIBINPUT_IGNORE_DEVICE}="1"\nSUBSYSTEM=="input", ATTRS{name}=="Xbox Wireless Controller", KERNEL=="event*", MODE="0666", ENV{ID_INPUT_JOYSTICK}="1"' > /storage/.config/udev.rules.d/99-gamepad.rules

    3.3 If your controller is not "Xbox Wireless Controller" then replace it with the controller name

    3.3.1 You will see your controller name within bluetoothctl with the command "devices" after you switched the controller on.

    Example:

    Code
    Media-PC:~ # bluetoothctl
    Agent registered
    [bluetooth]# devices
    Device 68:XX:XX:XX:XX:E7 Xbox Wireless Controller
    Device 10:XX:XX:XX:XX:56 AR
    [bluetooth]#

    4. Reboot the system

    5. Open bluetoothctl via console: "bluetoothctl"

    5.1 Check devices: Type "device" - You will get a list with all available Bluetooth devices. Search for the XBox controller.

    5.2 If the XBox controller is present, delete it from the list: "remove AA:BB:CC:DD:EE:FF" (Replace the MAC address with the address of the controller)

    5.3 Turn on the controller and hold the connection button on the top until the controller starts blinking faster.

    5.4 Search for the controller in the console with "scan on".

    5.5 Wait until you see the XBox controller on the screen.

    5.6 End the search with "scan off"

    5.7 Trust the controller with "trust AA:BB:CC:DD:EE:FF"

    5.8 After that, try to pair the controller with "pair AA:BB:CC:DD:EE:FF". The step can take a little longer and you must not get an error in the console. Furthermore the controller should still be in pairing mode. If you get an error just start again at step 5.1.

    5.9 After a while it will ask you if you want to allow the connection. Acknowledge this with "yes".

    6. Now the XBox icon should light up permanently on the controller and the controller should be connected.

    6.1 Now switch to the view in Kodi and press a button on the controller. A message should appear that a new controller has been found and that you can set it up now. Confirm it with "Yes". Otherwise you can also set up the controller again under System/Input/Controller.

    6.2 In my case, the controller was displayed in the menu as "Kodi Standard Controller". I simply assigned the buttons and the sticks by following the menu entries.

    Now the controller should be completely set up and you can use it to operate the menu. After a restart, the controller should connect again as soon as you turn it on. If this does not work, check step 2 again.

    If there are any suggestions for improvement or if I am talking complete nonsense or if you have any questions, please let me know.

    Thanks

    Hellsgore

    EDIT: Thx to 1postNghost for the suggestion. I have revised point 3.