Slackware This Forum is for the discussion of Slackware Linux.
|
Notices |
Welcome to LinuxQuestions.org, a friendly and active Linux Community.
You are currently viewing LQ as a guest. By joining our community you will have the ability to post topics, receive our newsletter, use the advanced search, subscribe to threads and access many other special features. Registration is quick, simple and absolutely free. Join our community today!
Note that registered members see fewer ads, and ContentLink is completely disabled once you log in.
Are you new to LinuxQuestions.org? Visit the following links:
Site Howto |
Site FAQ |
Sitemap |
Register Now
If you have any problems with the registration process or your account login, please contact us. If you need to reset your password, click here.
Having a problem logging in? Please visit this page to clear all LQ-related cookies.
Get a virtual cloud desktop with the Linux distro that you want in less than five minutes with Shells! With over 10 pre-installed distros to choose from, the worry-free installation life is here! Whether you are a digital nomad or just looking for flexibility, Shells can put your Linux machine on the device that you want to use.
Exclusive for LQ members, get up to 45% off per month. Click here for more info.
|
|
01-14-2014, 10:41 AM
|
#1
|
Member
Registered: Jan 2011
Distribution: Slackware
Posts: 128
Rep:
|
Xbox 360 Controller not recognized by Steam
Hello,
I'm having trouble getting applications to recognize my Xbox 360 wired controller. When I plug it in, it shows up in /var/log/messages and dmesg:
dmesg
Code:
[ 403.384778] usb 6-1.6: new full-speed USB device number 3 using ehci-pci
[ 403.475803] usb 6-1.6: New USB device found, idVendor=045e, idProduct=028e
[ 403.475808] usb 6-1.6: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[ 403.475810] usb 6-1.6: Product: Controller
[ 403.475812] usb 6-1.6: Manufacturer: ©Microsoft Corporation
[ 403.475814] usb 6-1.6: SerialNumber: 03BC9F0
[ 403.492615] input: Microsoft X-Box 360 pad as /devices/pci0000:00/0000:00:1d.0/usb6/6-1/6-1.6/6-1.6:1.0/input/input19
[ 403.492962] usbcore: registered new interface driver xpad
[ 408.868069] 4:3:1: cannot get freq at ep 0x82
[ 414.005016] 4:3:1: cannot get freq at ep 0x82
/var/log/messages
Code:
Jan 14 09:19:53 hades kernel: [ 403.384778] usb 6-1.6: new full-speed USB device number 3 using ehci-pci
Jan 14 09:19:53 hades kernel: [ 403.475803] usb 6-1.6: New USB device found, idVendor=045e, idProduct=028e
Jan 14 09:19:53 hades kernel: [ 403.475808] usb 6-1.6: New USB device strings: Mfr=1, Product=2, SerialNumber=3
Jan 14 09:19:53 hades kernel: [ 403.475810] usb 6-1.6: Product: Controller
Jan 14 09:19:53 hades kernel: [ 403.475812] usb 6-1.6: Manufacturer: ©Microsoft Corporation
Jan 14 09:19:53 hades kernel: [ 403.475814] usb 6-1.6: SerialNumber: 03BC9F0
Jan 14 09:19:53 hades mtp-probe: checking bus 6, device 3: "/sys/devices/pci0000:00/0000:00:1d.0/usb6/6-1/6-1.6"
Jan 14 09:19:53 hades mtp-probe: bus: 6, device: 3 was not an MTP device
Jan 14 09:19:53 hades kernel: [ 403.492615] input: Microsoft X-Box 360 pad as /devices/pci0000:00/0000:00:1d.0/usb6/6-1/6-1.6/6-1.6:1.0/input/input19
Jan 14 09:19:53 hades kernel: [ 403.492962] usbcore: registered new interface driver xpad
Steam doesn't detect it and neither do any of the controller enabled games. I also tried in Dolphin emulator but it shows up as XInput2//Virtual core pointer
I've installed When I run it, it tells me the file where my controller is available:
Code:
root@hades:~ # xboxdrv --detach-kernel-driver --mimic-xpad --silent
xboxdrv 0.8.5 - http://pingus.seul.org/~grumbel/xboxdrv/
Copyright © 2008-2011 Ingo Ruhnke <grumbel@gmx.de>
Licensed under GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This program comes with ABSOLUTELY NO WARRANTY.
This is free software, and you are welcome to redistribute it under certain conditions; see the file COPYING for details.
Controller: Microsoft Xbox 360 Controller
Vendor/Product: 045e:028e
USB Path: 006:003
Controller Type: Xbox360
Your Xbox/Xbox360 controller should now be available as:
/dev/input/js0
/dev/input/event19
Press Ctrl-c to quit
This still doesn't get Steam or Dolphin to recognize the controller. I googled a bit and many people said they had trouble with permissions, so I checked the permissions for /dev/input/js0 and /dev/input/event19:
Code:
root@hades:~ # ls -l /dev/input/event19
crw-r----- 1 root root 13, 83 Jan 14 09:26 /dev/input/event19
root@hades:~ # ls -l /dev/input/js0
crw-r--r-- 1 root root 13, 0 Jan 14 09:26 /dev/input/js0
I added read permission to /dev/input/event19:
Code:
root@hades:~ # chmod +r /dev/input/event19
root@hades:~ # ls -l /dev/input/event19
crw-r--r-- 1 root root 13, 83 Jan 14 09:26 /dev/input/event19
Now when I open Steam and Dolphin, they both recognize the controller. The funny thing is now it shows up as SDL/0/Microsoft X-Box 360 pad on Dolphin. If I unplug and plug in the controller, the permissions get reset. Does anyone have any idea what else I can check or how I can make this work seamlessly? I'm running Slackware64 14.1 KDE multilib.
|
|
|
01-14-2014, 11:49 AM
|
#2
|
LQ Guru
Registered: May 2005
Location: boston, usa
Distribution: fedora-35
Posts: 5,326
|
the stop-cap solution would be to hack up a daemon that constantly checks if the file exists and change perms. maybe put something like this in ~/.bash_profile: [untested]
Code:
while [ 1 ]
do
if [ ! -r /dev/input/event19 ]
then
chmod 666 /dev/input/event19
fi
sleep 10
done
this obviousely wont cure the root of the problem.
|
|
|
01-14-2014, 12:01 PM
|
#3
|
Moderator
Registered: Dec 2009
Location: Germany
Distribution: Whatever fits the task best
Posts: 17,148
|
Or just use udev for what it is intended. I have this file named 99-joystick-rules in /etc/udev/rules.d/
Code:
KERNEL=="event[0-9]*", ENV{ID_BUS}=="?*", ENV{ID_INPUT_JOYSTICK}=="?*", GROUP="games", MODE="0660"
KERNEL=="js[0-9]*", ENV{ID_BUS}=="?*", ENV{ID_INPUT_JOYSTICK}=="?*", GROUP="games", MODE="0664"
|
|
3 members found this post helpful.
|
01-14-2014, 01:02 PM
|
#4
|
Member
Registered: Jan 2011
Distribution: Slackware
Posts: 128
Original Poster
Rep:
|
Quote:
Originally Posted by TobiSGD
Or just use udev for what it is intended. I have this file named 99-joystick-rules in /etc/udev/rules.d/
Code:
KERNEL=="event[0-9]*", ENV{ID_BUS}=="?*", ENV{ID_INPUT_JOYSTICK}=="?*", GROUP="games", MODE="0660"
KERNEL=="js[0-9]*", ENV{ID_BUS}=="?*", ENV{ID_INPUT_JOYSTICK}=="?*", GROUP="games", MODE="0664"
|
Thanks, that looks like it will work. However I'm not able to connect two controllers. It says there are no free interfaces. Do you know why that could be?
|
|
1 members found this post helpful.
|
01-14-2014, 01:08 PM
|
#5
|
Moderator
Registered: Dec 2009
Location: Germany
Distribution: Whatever fits the task best
Posts: 17,148
|
Sorry, but I have only one, so I can't test that.
|
|
|
01-14-2014, 05:23 PM
|
#6
|
Member
Registered: Jan 2011
Distribution: Slackware
Posts: 128
Original Poster
Rep:
|
Are you using xboxdrv? You test it with a single controller. Plug in the controller, run xboxdrv. Unplug controller, connect to a different USB port. I get the same error. You know the controller is recognized as another device because the light in the controller for "player 2" comes on
|
|
|
01-14-2014, 06:45 PM
|
#7
|
Moderator
Registered: Dec 2009
Location: Germany
Distribution: Whatever fits the task best
Posts: 17,148
|
Quote:
Originally Posted by Gerardo Zamudio
Are you using xboxdrv? You test it with a single controller. Plug in the controller, run xboxdrv. Unplug controller, connect to a different USB port. I get the same error. You know the controller is recognized as another device because the light in the controller for "player 2" comes on
|
No, I am not using xboxdrv. I just plug the controller in and it becomes available. I noticed already the behavior you describe (different lights are activated) if I unplug and plugin again to fast, but I never worried about that and I never got that error message.
|
|
|
01-16-2014, 11:29 AM
|
#8
|
Member
Registered: Jan 2011
Distribution: Slackware
Posts: 128
Original Poster
Rep:
|
Just coming back to report that I finally got a chance to try TobiSGD's udev rule and it worked like a charm. Marking this as solved.
|
|
|
All times are GMT -5. The time now is 01:07 AM.
|
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know.
|
Latest Threads
LQ News
|
|