2

I've connected a XBox Wireless Controller for PC with my ubuntu machine. Everything works fine and all js0-3 devices in /dev/input/ are available.

But normally the circle in the middle of the controller should show the device id (1-4), which isn't shown. The circle is only blinking. I tryed that in Windows and everything works fine. Also the wired XBox Controller has no problems to show its id.

Anybody know, why this doesn't work? Are there some kernel modules, which must be enabled?

Xbox Controller
(source: microsoft.com)

Glorfindel
  • 971
  • 3
  • 13
  • 20
ForJ9
  • 273
  • 1
  • 4
  • 10

2 Answers2

2

There are 2 solutions you have for solving this:

1) Install steamos xpad patch: http://ppa.launchpad.net/mdeslaur/steamos/ubuntu/pool/main/s/steamos-xpad-dkms/

2) Install Xboxdrv:

2.1) Easy installation for Ubuntu:

sudo apt-add-repository -y ppa:rael-gc/ubuntu-xboxdrv
sudo apt-get update
sudo apt-get install ubuntu-xboxdrv

2.2) Without using other repos:

sudo apt-get install xboxdrv
sudo gedit /etc/modprobe/blacklist.conf

Add "blacklist xpad" to the end of the file, and reboot. Afterwards to start xboxdrv just type in "sudo xboxdrv --silent --mimic-xpad" in terminal.

cra0zy
  • 496
0

The best solution for Ubuntu 22.04 is to follow these steps:

  1. Install xboxdrv:

$ sudo apt-add-repository ppa:rael-gc/ubuntu-xboxdrv

$ sudo apt-get update

$ sudo apt-get install ubuntu-xboxdrv

  1. Add xpad in the blacklist:

$ echo "blacklist xpad" | sudo tee -a /etc/modprobe.d/blacklist.conf

$ sudo rmmod xpad (Unload the module if it's already loaded)

  1. Remove jstest-gtk to set xboxdrv as default:

$ sudo apt-get purge jstest-gtk

$ sudo apt-get install xboxdrv

$ sudo apt-get install jstest-gtk (Reinstalling it without affecting xboxdrv)

  1. In the directory /etc/default/, make a new file called "xboxdrv" with the following text in it:
[xboxdrv]
silent = true

controller 1

trigger-as-button = true dpad-as-button = true deadzone = 4000

controller 2

next-controller = true trigger-as-button = true dpad-as-button = true deadzone = 4000

controller 3

next-controller = true trigger-as-button = true dpad-as-button = true deadzone = 4000

controller 4

next-controller = true trigger-as-button = true dpad-as-button = true deadzone = 4000

[xboxdrv-daemon] dbus = disabled

  1. To start xboxdrv every time when Ubuntu boots, follow the steps of systemctl in this website. It's not necessary to type in Terminal sudo xboxdrv --silent if it's running by systemctl.
  • Note: Print a list of supported devices:

$ xboxdrv --list-supported-devices

  • If a controller have any problem in wine, follow this website.

More info:

https://youtu.be/JfcSMRooHLU

https://github.com/gotbletu/shownotes/blob/master/xboxdrv.md