Homepage › Forums › RetroPie Project › Everything else related to the RetroPie Project › Xbox360 Controller Issue after 1.10.1
- This topic has 8 replies, 5 voices, and was last updated 10 years, 3 months ago by gizmo98.
-
AuthorPosts
-
06/14/2014 at 17:10 #7620SitraneGuest
So… I am at my wits end.
I have been trying to get this controller working for 2 days and I just can’t figure out what I am doing incorrectly.
I started with a brand new 1.10.1 download and followed all of the directions here:
https://github.com/retropie/RetroPie-Setup/wiki/First-InstallationThen, I followed all of the directions here for enabling the controller:
Now, ES recognizes the controller and I can navigate with it, but the light continues to flash over and over again.
However, when I go to the panel and type in “sudo xboxdrv” i get this error:
Error couldn’t claim the USB interface: LIBUSB_ERROR_BUSY”It tells me to type in “rmmod xpad” and then run “sudo xboxdrv” again. Once I do, the single light comes on.
Now I have figured out that I need to blacklist xpad, but everything I’m finding online isn’t working; they just return different errors.
Thanks in advance!
06/14/2014 at 17:20 #7621sitraneParticipantJust realized I didn’t list that I was using a WIRED 360 controller.
06/14/2014 at 21:45 #7636SteveParticipantWhat worked for me with a wire and wireless remote at the same time is method 3 of this
https://github.com/retropie/RetroPie-Setup/wiki/Setting-up-the-XBox360-controllertell me what it says when you type
sudo nano /etc/modprobe.d/blacklist.conf06/14/2014 at 21:58 #7638RawToxicParticipantI just did a install as you describe and am using the same controller. I just got this all working yesterday but started on Tuesday so I understand your woes. I did not run into the problem like you are experiencing but I’d like to try to help. I think your problem may lie with the USB bus activity itself.
A question that needs to be asked is please explain any and all USB peripherals that you have connected to the PI device. Hub (Powered or not), controller, keyboard, etc.
and run this command and report back the results.
lsusb
Maybe there is a conflict with another USB device on your bus or for some reason the bus is having power issues. If you are using a powered USB hub, check to make sure it is one that is certified for use with Raspberry Pi. Some feed power back into the bus and can cause some strange things to occur.
06/15/2014 at 01:09 #7659sitraneParticipantThanks for the responses guys.
As far as the third option goes, I don’t really know how to use it; Being a total Linux noob. Is there a good walk-through on what I need to do?
I can’t run any commands, as I’m currently at work.
I only have my Wired Xbox360 Controller and Keyboard plugged in; No hub or anything.
Hopefully that helps!
06/30/2014 at 16:06 #10457floegeolfParticipantI have to pick this post up, as I am encountering a similar problem with my XBOX 360 controller, and tried about everything I could find so far.
I have a wired XBOX 360 controller (not an original one) connected to my Retropie (directly or through a hub, it doesn’t matter) as well as a keyboard. The led on the controller is constantly blinking, it still works on emulatorstation and on some emulators… It is available on /dev/input/js0 and I can map the buttons.
BUT: It’s not recognized by xboxdrv. Whichever method to configure it I chose, I only get a “no xbox controller connected” error message, and the led keeps blinking.
When I start xboxdrv with the “xboxdrv –device-by-id [ID]…” (from lsusb), the LED lights up, completely, not as player 1 or player 2. But I loose the possibility to enter commands in terminal (as xboxdrv is running) and cannot start emulatorstation anyway.
So, how can I get this controller to connect the way it is meant to be? (I installed retropie 1.10.1 from the SD Card image that’s available in the downloads section), since this version the controller is recognized by emulatorstation at startup, the previous version of retropie did not recognize it at all.
Here’s the dmesg output about the controller:
[ 3.738107] usb 1-1.3: new full-speed USB device number 5 using dwc_otg [ 3.875527] usb 1-1.3: New USB device found, idVendor=046d, idProduct=f301 [ 3.896032] usb 1-1.3: New USB device strings: Mfr=1, Product=2, SerialNumber=3 [ 3.917618] usb 1-1.3: Product: Controller [ 3.925537] usb 1-1.3: Manufacturer: Microsoft Inc. [ 3.933266] usb 1-1.3: SerialNumber: 103183E [ 4.215583] udevd[156]: starting version 175 [ 6.036418] input: Generic X-Box pad as /devices/platform/bcm2708_usb/usb1/1-1/1-1.3/1-1.3:1.0/input/input1 [ 6.328113] usbcore: registered new interface driver xpad
And here’s the lsusb output:
Bus 001 Device 002: ID 0424:9512 Standard Microsystems Corp. Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub Bus 001 Device 003: ID 0424:ec00 Standard Microsystems Corp. Bus 001 Device 004: ID 413c:2003 Dell Computer Corp. Keyboard Bus 001 Device 005: ID 046d:f301 Logitech, Inc.
And this is what ls /dev/input gives me:
by-id by-path event0 event1 js0 mice
Any help is more than welcome ;)
Thanks in advance,
Floeg08/08/2014 at 18:06 #28445XFSmilesGuestI am having the same problem.
I have `xboxdrv –trigger-as-button –wid 0 –led 2 –deadzone 4000 –silent &
sleep 1in the
/etc/rc.local` file. It is right before the exit 0.
I have#! /bin/bash ### BEGIN INIT INFO # Provides: xbox-controller # Required-Start: $remote_fs $syslog # Required-Stop: $remote_fs $syslog # Default-Start: 2 3 4 5 # Default-Stop: 0 1 6 # Short-Description: Start XBOX Controller Service # Description: Start the xboxdrv daemon with several options # support up to 4 Controllers ### END INIT INFO # Author: MasteRehm PATH=/sbin:/usr/sbin:/bin:/usr/bin DESC="XBOX Controller Service" NAME=xboxdrv DAEMON=/usr/bin/$NAME DAEMON_ARGS="-D -d --deadzone 4000 --dbus disabled --detach" PIDFILE=/var/run/$NAME.pid SCRIPTNAME=/etc/init.d/$NAME # Exit if the package is not installed [ -x "$DAEMON" ] || exit 0 # Read configuration variable file if it is present [ -r /etc/default/$NAME ] && . /etc/default/$NAME # Load the VERBOSE setting and other rcS variables . /lib/init/vars.sh # Define LSB log_* functions. # Depend on lsb-base (>= 3.2-14) to ensure that this file is present # and status_of_proc is working. . /lib/lsb/init-functions do_start() { if [ $CONTROLLER_NUM -gt 4 ]; then echo -e "\n$CONTROLLER"; exit 1; fi start-stop-daemon -S -q -x $DAEMON -- $DAEMON_ARGS $CONTROLLER # Workaround: xboxdrv daemon creates /dev/input/js[4-7] device files, if /dev/input/js[0-3] created on startup. if [ -x /usr/bin/rename ]; then sleep 1 if [[ <code>ls /dev/input/js*</code> =~ /dev/input/js[4-7] ]]; then rename 's/js4/js0/;s/js5/js1/;s/js6/js2/;s/js7/js3/' /dev/input/js*; fi fi } do_stop() { start-stop-daemon -K -o -q -x $DAEMON sleep 1 } case "$1" in start) log_daemon_msg "Starting $DESC" "$NAME" do_start status=$? log_end_msg $status ;; stop) log_daemon_msg "Stopping $DESC" "$NAME" do_stop status=$? log_end_msg $status ;; status) status_of_proc "$DAEMON" "$NAME" && exit 0 || exit $? ;; restart) log_daemon_msg "Restarting $DESC" "$NAME" do_stop case "$?" in 0|1) do_start case "$?" in 0) log_end_msg 0 ;; 1) log_end_msg 1 ;; # Old process is still running *) log_end_msg 1 ;; # Failed to start esac ;; *) # Failed to stop log_end_msg 1 ;; esac ;; *) echo "Usage: $SCRIPTNAME {start|stop|status|restart}" >&2 exit 3 ;; esac
in /etc/init.d/xboxdrv.
I get this:pi@raspberrypi /etc/init.d $ sudo update-rc.d xboxdrv start update-rc.d: using dependency based boot sequencing Use of uninitialized value in string eq at /usr/sbin/update-rc.d line 490. update-rc.d: warning: start runlevel arguments (none) do not match xboxdrv Default-Start values (2 3 4 5) update-rc.d: warning: stop runlevel arguments (none) do not match xboxdrv Default-Stop values (0 1 6)
I have
# How many Controllers? (support up to 4 Controllers) CONTROLLER_NUM=2 case $CONTROLLER_NUM in 1) CONTROLLER="-w 0 -l 2 --trigger-as-button --dpad-as-button" ;; 2) CONTROLLER="-w 0 -l 2 --trigger-as-button --dpad-as-button --next-controller -w 1 -l 3 --trigger-as-button --dpad-as-button" ;; 3) CONTROLLER="-w 0 -l 2 --trigger-as-button --dpad-as-button --next-controller -w 1 -l 3 --trigger-as-button --dpad-as-button --next-controller -w 2 -l 4 --trigger-as-button --dpad-as-button" ;; 4) CONTROLLER="-w 0 -l 2 --trigger-as-button --dpad-as-button --next-controller -w 1 -l 3 --trigger-as-button --dpad-as-button --next-controller -w 2 -l 4 --trigger-as-button --dpad-as-button --next-controller -w 3 -l 5 --trigger-as-button --dpad-as-button" ;; *) CONTROLLER="incorrect amount of controller specified" ;; esac
in /etc/default/xboxdrv
I get this:pi@raspberrypi /etc/default $ jstest /dev/input/js[0-3] -bash: jstest: command not found
I get this
pi@raspberrypi /opt/retropie/configs/all $ ./retroarch-joyconfig -o /opt/retropie/configs/all/p1.cfg -p 1 -j 0 -bash: ./retroarch-joyconfig: No such file or directory
I get this:
pi@raspberrypi ~ $ sudo xboxdrv -D i 0 xboxdrv 0.8.4 - http://pingus.seul.org/~grumbel/xboxdrv/ Copyright © 2008-2011 Ingo Ruhnke <> 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. [ERROR] XboxdrvDaemon::process_match(): failed to launch ControllerThread: Error couldn't claim the USB interface: LIBUSB_ERROR_BUSY Try to run 'rmmod xpad' and then xboxdrv again or start xboxdrv with the option --detach-kernel-driver. [ERROR] XboxdrvDaemon::run(): fatal exception: failed to get unique dbus name: Connection ":1.0" is not allowed to own the service "org.seul.Xboxdrv" due to security policies in the configuration file
I followed every step on this page:
https://github.com/retropie/RetroPie-Setup/wiki/Setting-up-the-XBox360-controller
Maybe I did too much? I’m not sure what I am supposed to do.08/08/2014 at 18:12 #28449XFSmilesGuestAlso, when I am in a game the A button takes me back to the menu and the RB button is pause
08/08/2014 at 18:22 #28455gizmo98ParticipantDisable retroarch autoconfig or delete all files under following path:
/opt/retropie/emulatores/RetroArch/configsThen run “esconfig/basic input config”.
-
AuthorPosts
- The forum ‘Everything else related to the RetroPie Project’ is closed to new topics and replies.