Yooka-Laylee
Xbox 360 controller not working on Linux
I am running the latest version of Manjaro wtih the 4.10 kernel. The 360 controller works in the Toybox demo, but does nothing in the full version of the game. Is there anyway to get the 360 contoller configured? It seems there are no controls configuration in the full game.
< >
Showing 1-15 of 18 comments
WolfensteinVII Apr 11, 2017 @ 10:30pm 
Also tried launching the game in big picture mode and that did not help.
Dekece Apr 11, 2017 @ 11:33pm 
That's weird, I run arch myself and my xbox 360 controller works perfectly out of the box, no fussing around. Does the terminal shows something useful? I run the steam native version, so it could be old .so getting loaded.
Last edited by Dekece; Apr 17, 2017 @ 11:18am
WolfensteinVII Apr 12, 2017 @ 6:49am 
Manjaro steam native configuration found!
Running Steam on manjarolinux 17.0.1 64-bit
STEAM_RUNTIME is disabled by the user
Installing breakpad exception handler for appid(steam)/version(1490228413)
Installing breakpad exception handler for appid(steam)/version(1490228413)

(steam:15821): Gtk-WARNING **: Unable to locate theme engine in module_path: "adwaita",

(steam:15821): Gtk-WARNING **: Unable to locate theme engine in module_path: "adwaita",
Installing breakpad exception handler for appid(steam)/version(1490228413)
Installing breakpad exception handler for appid(steam)/version(1490228413)
Installing breakpad exception handler for appid(steam)/version(1490228413)
Installing breakpad exception handler for appid(steam)/version(1490228413)
Installing breakpad exception handler for appid(steam)/version(1490228413)
Installing breakpad exception handler for appid(steam)/version(1490228413)
Installing breakpad exception handler for appid(steam)/version(1490228413)
Installing breakpad exception handler for appid(steam)/version(1490228413)
Installing breakpad exception handler for appid(steam)/version(1490228413)
Installing breakpad exception handler for appid(steam)/version(1490228413)
Installing breakpad exception handler for appid(steam)/version(1490228413)
Installing breakpad exception handler for appid(steam)/version(1490228413)
Generating new string page texture 2: 48x256, total string texture memory is 49.15 KB
Generating new string page texture 3: 384x256, total string texture memory is 442.37 KB
Installing breakpad exception handler for appid(steam)/version(1490228413)
Installing breakpad exception handler for appid(steam)/version(1490228413)
roaming config store loaded successfully - 4895 bytes.
migrating temporary roaming config store
Installing breakpad exception handler for appid(steam)/version(1490228413)
Failed to init SteamVR because it isn't installed
ExecCommandLine: ""/home/wolf/.local/share/Steam/ubuntu12_32/steam" "
Installing breakpad exception handler for appid(steam)/version(1490228413)
System startup time: 3.80 seconds
Opening joystick XInput Controller
Generating new string page texture 75: 1024x256, total string texture memory is 1.49 MB
Generating new string page texture 76: 128x256, total string texture memory is 131.07 KB
Generating new string page texture 77: 128x256, total string texture memory is 1.62 MB
Generating new string page texture 78: 256x256, total string texture memory is 1.88 MB
Generating new string page texture 79: 64x256, total string texture memory is 1.95 MB
Generating new string page texture 80: 8x256, total string texture memory is 1.96 MB
Generating new string page texture 81: 32x256, total string texture memory is 1.99 MB
registry.cpp (271) : Assertion Failed: on disk registry has changed and is marked dirty - we're about to lose data.
Assert( Assertion Failed: on disk registry has changed and is marked dirty - we're about to lose data. ):registry.cpp:271

Installing breakpad exception handler for appid(steam)/version(1490228413)
assert_20170412094635_20.dmp[15892]: Uploading dump (out-of-process)
/tmp/dumps/assert_20170412094635_20.dmp
Generating new string page texture 91: 128x256, total string texture memory is 2.12 MB
Generating new string page texture 92: 256x256, total string texture memory is 2.38 MB
Generating new string page texture 93: 24x256, total string texture memory is 2.41 MB
Installing breakpad exception handler for appid(steam)/version(1490228413)
Generating new string page texture 95: 128x256, total string texture memory is 2.54 MB
Generating new string page texture 99: 512x256, total string texture memory is 3.06 MB
assert_20170412094635_20.dmp[15892]: Finished uploading minidump (out-of-process): success = yes
assert_20170412094635_20.dmp[15892]: response: CrashID=bp-81b5cd90-2b6f-4da4-895f-da7b42170412
assert_20170412094635_20.dmp[15892]: file ''/tmp/dumps/assert_20170412094635_20.dmp'', upload yes: ''CrashID=bp-81b5cd90-2b6f-4da4-895f-da7b42170412''
Generating new string page texture 118: 256x256, total string texture memory is 3.33 MB
Game update: AppID 360830 "Yooka-Laylee", ProcID 15899, IP 0.0.0.0:0
>>> Adding process 15899 for game ID 360830
ERROR: ld.so: object '/home/wolf/.local/share/Steam/ubuntu12_32/gameoverlayrenderer.so' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS32): ignored.
ERROR: ld.so: object '/home/wolf/.local/share/Steam/ubuntu12_32/gameoverlayrenderer.so' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS32): ignored.
>>> Adding process 15900 for game ID 360830
Found path: /home/wolf/.local/share/Steam/steamapps/common/YookaLaylee/YookaLaylee.x86_64
Mono path[0] = '/home/wolf/.local/share/Steam/steamapps/common/YookaLaylee/YookaLaylee_Data/Managed'
Mono path[1] = '/home/wolf/.local/share/Steam/steamapps/common/YookaLaylee/YookaLaylee_Data/Mono'
Mono config path = '/home/wolf/.local/share/Steam/steamapps/common/YookaLaylee/YookaLaylee_Data/Mono/etc'
displaymanager : xrandr version warning. 1.5
client has 6 screens
displaymanager screen (0)(HDMI-0): 1920 x 1080
Using libudev for joystick management


Importing game controller configs
/dev/input/js0: driver version: 2.1.0 (20100)
/dev/input/js0: fd 28, buttons 17, axes 4, name Xbox Gamepad (userspace driver)
/dev/input/js0: axis 0: raw 0, mapped 0.000000
/dev/input/js0: axis 1: raw 0, mapped 0.000000
/dev/input/js0: axis 2: raw 0, mapped 0.000000
/dev/input/js0: axis 3: raw 0, mapped 0.000000
Assigning joystick 1
Installing breakpad exception handler for appid(gameoverlayui)/version(20170322234411)
Installing breakpad exception handler for appid(gameoverlayui)/version(1.0)
Installing breakpad exception handler for appid(gameoverlayui)/version(1.0)
Installing breakpad exception handler for appid(gameoverlayui)/version(1.0)
Lax Dragon Apr 12, 2017 @ 7:07am 
Does not work for me either. I'm running Debian Stretch. Gamepad works fine in other games and the Steam Big Picture UI, but does not work at all in YL.
Dekece Apr 12, 2017 @ 8:58am 
Seems like the game/steams find your stuff, but it's no mapped properly, my last lines of terminal are

Importing game controller configs
Found /dev/input/event20
Mapping raw axis 0 to 0
Mapping raw axis 1 to 1
Mapping raw axis 2 to 2
Mapping raw axis 3 to 3
Mapping raw axis 4 to 4
Mapping raw axis 5 to 5
Microsoft X-Box 360 pad: Mapping b0.0 to b0
Microsoft X-Box 360 pad: Mapping b1.0 to b1
Microsoft X-Box 360 pad: Mapping b6.0 to b6
Microsoft X-Box 360 pad: Mapping h0.4 to a7
Microsoft X-Box 360 pad: Mapping h0.8 to a6
Microsoft X-Box 360 pad: Mapping h0.2 to a6
Microsoft X-Box 360 pad: Mapping h0.1 to a7
Microsoft X-Box 360 pad: Mapping b8.0 to b8
Microsoft X-Box 360 pad: Mapping b4.0 to b4
Microsoft X-Box 360 pad: Mapping b9.0 to b9
Microsoft X-Box 360 pad: Mapping a2.0 to a2
Microsoft X-Box 360 pad: Mapping a0.0 to a0
Microsoft X-Box 360 pad: Mapping a1.0 to a1
Microsoft X-Box 360 pad: Mapping b5.0 to b5
Microsoft X-Box 360 pad: Mapping b10.0 to b10
Microsoft X-Box 360 pad: Mapping a5.0 to a5
Microsoft X-Box 360 pad: Mapping a3.0 to a3
Microsoft X-Box 360 pad: Mapping a4.0 to a4
Microsoft X-Box 360 pad: Mapping b7.0 to b7
Microsoft X-Box 360 pad: Mapping b2.0 to b2
Microsoft X-Box 360 pad: Mapping b3.0 to b3
Assigning joystick 1
Installing breakpad exception handler for appid(gameoverlayui)/version(20170322234411)
Installing breakpad exception handler for appid(gameoverlayui)/version(1.0)
Installing breakpad exception handler for appid(gameoverlayui)/version(1.0)
Installing breakpad exception handler for appid(gameoverlayui)/version(1.0)
Game removed: AppID 360830 "Yooka-Laylee", ProcID 2479
No cached sticky mapping in ActivateActionSet.

There are two xbox drivers in the kernel, maybe it chooses the wrong one for whatever reason?
WolfensteinVII Apr 12, 2017 @ 9:44am 
I have xboxdrv installed and blacklisted the generic controller driver. Is there a config file to change? Is there something you added to config your controller?
I already changed what i needed in here /etc/default/xboxdrv
I cannot believe they did not add button mapping in the options menu.
rugguggla Apr 12, 2017 @ 11:33am 
Could a developer/community manager confirm that someone is looking into this issue? Do you need more information? Want us to test something for you? Do we need to report the bug to an external bugtracker?

There are more and more threads created for this issue, and I feel we Linux users are drowned out in a sea of Windows users - with the same problem. Seems hard to separate the Xbox 360 controller issue for Linux, from the Windows related threads. Maybe create a sticky for Linux related problems, so we can report exclusive Linux issues in one single place.
Dekece Apr 12, 2017 @ 11:40am 
Only plug and play, nothing special except I am running on x11, could it be a wayland/libinput issue maybe?
Naib Apr 12, 2017 @ 12:22pm 
Its the steam provided libudev.
Either rename & symlink to system or LD your /lib...
rugguggla Apr 12, 2017 @ 12:43pm 
Using libudev for joystick management Importing game controller configs Found /dev/input/event8 Mapping raw axis 0 to 0 Mapping raw axis 1 to 1 Mapping raw axis 2 to 2 Mapping raw axis 3 to 3 Mapping raw axis 4 to 4 Mapping raw axis 5 to 5 Xbox 360 Wireless Receiver: Mapping b0.0 to b0 Xbox 360 Wireless Receiver: Mapping b1.0 to b1 Xbox 360 Wireless Receiver: Mapping b6.0 to b6 Xbox 360 Wireless Receiver: Mapping b14.0 to a7 Xbox 360 Wireless Receiver: Mapping b11.0 to a6 Xbox 360 Wireless Receiver: Mapping b12.0 to a6 Xbox 360 Wireless Receiver: Mapping b13.0 to a7 Xbox 360 Wireless Receiver: Mapping b8.0 to b8 Xbox 360 Wireless Receiver: Mapping b4.0 to b4 Xbox 360 Wireless Receiver: Mapping b9.0 to b9 Xbox 360 Wireless Receiver: Mapping a2.0 to a2 Xbox 360 Wireless Receiver: Mapping a0.0 to a0 Xbox 360 Wireless Receiver: Mapping a1.0 to a1 Xbox 360 Wireless Receiver: Mapping b5.0 to b5 Xbox 360 Wireless Receiver: Mapping b10.0 to b10 Xbox 360 Wireless Receiver: Mapping a5.0 to a5 Xbox 360 Wireless Receiver: Mapping a3.0 to a3 Xbox 360 Wireless Receiver: Mapping a4.0 to a4 Xbox 360 Wireless Receiver: Mapping b7.0 to b7 Xbox 360 Wireless Receiver: Mapping b2.0 to b2 Xbox 360 Wireless Receiver: Mapping b3.0 to b3 Assigning joystick 1

It recognizes the input controller, I just can't use it in game. Works perfectly in any other game.
WolfensteinVII Apr 12, 2017 @ 8:56pm 
I will just wait for a fix soon. If not I will just get a refund, because it works in other games which leads me to believe it is a game specific issue.
Doot snoot Apr 15, 2017 @ 6:25pm 
having the same issue on ubuntu mate. I'm using the wireless xbox controller, it works well in other games and steam big screen but not on this game AND night in the woods.
I haven't tester all games I have because I've only recently started using linux again.
rugguggla Apr 17, 2017 @ 10:47am 
I solved my problem (Ubuntu 16.04) by checking out the article for Xbox 360 Wireless controller on the Arch Wiki.

First:

Install xboxdrv, unload xpad kernel module.
sudo apt install xboxdrv sudo modprobe -r xpad

Second:

Create a file, and add the following into it:
[xboxdrv] silent = true device-name = "Xbox 360 Wireless Receiver" mimic-xpad = true deadzone = 4000 [xboxdrv-daemon] dbus = disabled

Third:

Launch xboxdrv specifying the config as the newly created file:
sudo xboxdrv -c /path/to/file/created/earlier

If this works for you, consider putting "blacklist xpad" into /etc/modprobe.d/blacklist.conf and also creating a systemd servicefile for launching xboxdrv with both the -c and -D option.
Last edited by rugguggla; Apr 17, 2017 @ 10:50am
Doot snoot Apr 19, 2017 @ 11:43pm 
Originally posted by rugguggla:
I solved my problem (Ubuntu 16.04) by checking out the article for Xbox 360 Wireless controller on the Arch Wiki.

First:

Install xboxdrv, unload xpad kernel module.
sudo apt install xboxdrv sudo modprobe -r xpad

Second:

Create a file, and add the following into it:
[xboxdrv] silent = true device-name = "Xbox 360 Wireless Receiver" mimic-xpad = true deadzone = 4000 [xboxdrv-daemon] dbus = disabled

Third:

Launch xboxdrv specifying the config as the newly created file:
sudo xboxdrv -c /path/to/file/created/earlier

If this works for you, consider putting "blacklist xpad" into /etc/modprobe.d/blacklist.conf and also creating a systemd servicefile for launching xboxdrv with both the -c and -D option.

hi. thank you, this worked for me and fixed night in the woods and the reversed dpad in other games.
but. can you explain how you did this?:
Originally posted by rugguggla:
and also creating a systemd servicefile for launching xboxdrv with both the -c and -D option.

i found tutorials for how to do it but they are for adding other things and it makes everything very hard to understand.
Thank you for the fix either way.
Last edited by Doot snoot; Apr 19, 2017 @ 11:49pm
rugguggla Apr 20, 2017 @ 12:15pm 
Originally posted by C*nt Sheep:
Originally posted by rugguggla:
I solved my problem (Ubuntu 16.04) by checking out the article for Xbox 360 Wireless controller on the Arch Wiki.

First:

Install xboxdrv, unload xpad kernel module.
sudo apt install xboxdrv sudo modprobe -r xpad

Second:

Create a file, and add the following into it:
[xboxdrv] silent = true device-name = "Xbox 360 Wireless Receiver" mimic-xpad = true deadzone = 4000 [xboxdrv-daemon] dbus = disabled

Third:

Launch xboxdrv specifying the config as the newly created file:
sudo xboxdrv -c /path/to/file/created/earlier

If this works for you, consider putting "blacklist xpad" into /etc/modprobe.d/blacklist.conf and also creating a systemd servicefile for launching xboxdrv with both the -c and -D option.

hi. thank you, this worked for me and fixed night in the woods and the reversed dpad in other games.
but. can you explain how you did this?:
Originally posted by rugguggla:
and also creating a systemd servicefile for launching xboxdrv with both the -c and -D option.

i found tutorials for how to do it but they are for adding other things and it makes everything very hard to understand.
Thank you for the fix either way.

Sure, I can explain. Hopefully it will help more people. Make sure to do this as the root user.

First:

Blacklist xpad kernel module, so it isn't loaded at reboot, by adding "blacklist xpad" in - for example - /etc/modprobe.d/blacklist.conf

Second:

Move the config file you created earlier to /etc/default/xboxdrv
And to make sure it has nice and compliant ownership/permissions:

chown root.root /etc/default/xboxdrv chmod 644 /etc/default/xboxdrv

Third:

Create the file /lib/systemd/system/xboxdrv.service and fill it with this:
[Unit] Description=Xbox controller driver daemon [Service] ExecStart=/usr/bin/xboxdrv -D -c /etc/default/xboxdrv [Install] WantedBy=multi-user.target

Again, make sure it has nice and compliant permissions:

chmod 644 /lib/systemd/system/xboxdrv.service

Fourth:

Start the newly created xboxdrv service:
systemctl start xboxdrv.service

Make sure it starts after a reboot:

systemctl enable xboxdrv.service

And now, the fix will be applied whenever you turn on your wireless Xbox 360 controller.

Last edited by rugguggla; Apr 20, 2017 @ 12:21pm
< >
Showing 1-15 of 18 comments
Per page: 1530 50

Date Posted: Apr 11, 2017 @ 10:28pm
Posts: 18