Homepage › Forums › RetroPie Project › Everything else related to the RetroPie Project › Problems setting input: Wired Xbox 360 Controller
- This topic has 22 replies, 8 voices, and was last updated 9 years, 9 months ago by jimnim.
-
AuthorPosts
-
05/20/2013 at 01:33 #1800zombiebotkingParticipant
Hi everyone,
I just got RetroPie working and have been trying to get my wired Xbox 360 controller to work with the emulators. So far I’ve
-Downloaded the xboxdrv driver
-Followed the instructions on pageThis all works fine until I launch the retropie-joyconfig file. It asks for me to press some buttons and move joysticks, which I do, and then it asks for the button to assign to B. At this point, I can press any button on the controller and nothing happens. The prompt doesn’t continue prompting…
Does anybody know why this might be? I’ve tried messing around with the config files but nothing seems to work.
Thanks in advance!
05/20/2013 at 01:34 #1801zombiebotkingParticipantSorry this link didn’t work.
On this page: https://github.com/retropie/RetroPie-Setup/wiki/Setting-up-the-XBox360-controller05/20/2013 at 11:05 #1803karlossParticipantHey mate,
Are you using an official controller?
when you edited the rc.local file, did you change the “wid” to just “id”? when emulationstation starts, is the top left (player 1) light lit on the controller? does it work ok for emulationstation when it asks you to setup controls for the players?
When I did the config, I have to do via the real terminal, pressing F4 when emulationstation opened, it didn’t seem to work for me when I tried doing via ssh, but I did get it working.
Let me know
Karl
05/21/2013 at 01:50 #1808zombiebotkingParticipantHey Karl!
I’m using an official controller but its very old (2006-ish). Don’t know if that matters. Still works fine on my Xbox.
I changed the wid in the rc.local to id and yes, the top right LED lights up fine. It also works to set the ES input.
It just gets to the point where the instructions say to do “sudo cat p*.cfg >> ~/RetroPie/configs/all/retroarch.cfg”.
I am replacing the “*” with a “1” for player one and I’ve tried changing the permissions and have deleted the specified lines but its just not working.Overall, the controller works fine. It just has problems when I’m setting the config for the emulators, not ES.
Thanks for the help!
05/21/2013 at 02:20 #1809zombiebotkingParticipantHere’s a more specific picture of the problem.
05/21/2013 at 11:43 #1813karlossParticipanthmmm, I had exactly the same issue when I first did it, but I reinstalled, using the sd-image and followed the guide again, and that time it worked ok, its picking your control up as a “keyboard” instead of a controller…
05/21/2013 at 20:14 #1820zombiebotkingParticipantDamn! I was hoping it wouldn’t have to come to this.. Well I’ll give it a shot and only install the NES and SNES emulators because it took about 16 hours the first time…
Thanks for the help and I’ll let you know if it works later!
05/21/2013 at 22:32 #1824zombiebotkingParticipantDidn’t work. Same problem. I don’t know where to go from here. Maybe I’ll just use my keyboard if this is going to be such a pain…
05/24/2013 at 16:10 #1852karlossParticipanthey mate,
im sure you didnt, but I think I did when I got this issue, did you do all the xbox guide stuff logged in as root? as it must be done with pi user, just a thought incase.
thanks
05/25/2013 at 07:59 #1861zombiebotkingParticipantI might have missed that day in class. Would that just be putting “sudo” in front of the commands?
07/30/2013 at 20:26 #2574dave407ParticipantHey,
Had the same problem, but now my Retropie is up and running with my 360 controller. I had a few hickups, but hey, I got mine working.
This is what I had to do (wired controller):
Download+install the driver (you’ll need internet connection for this);
sudo apt-get install xboxdrv
Edit the rc.local
sudo nano /etc/rc.local
add this text (just before the last line that says exit 0);
xboxdrv --trigger-as-button --id 0 --led 2 --deadzone 4000 --silent & sleep 1
then reboot;
sudo reboot
After Retropie has restarted, exit to the command prompt with F4.
You should notice that there is only 1 light lit on your controller.cd ~/RetroPie/emulators/RetroArch/tools ./retroarch-joyconfig -o p1.cfg -p 1 -j <strong>1</strong>
THIS IS WHERE YOUR PROBLEM AND MINE WAS LOCATED
If you follow the original instructions, you would use
./retroarch-joyconfig -o p1.cfg -p 1 -j 0
When I’ve used this line, the raspberry tried setting up controls with my keyboard. To use the x360 controller for setup, I needed to change this number to one.The next thing I did was;
sudo cat p1.cfg >> ~/RetroPie/configs/all/retroarch.cfg
But this didn’t seem to do much. Even with extra permissions;
sudo chmod 777 RetroPie/configs/all/retroarch.cfg sudo cat p1.cfg >> ~/RetroPie/configs/all/retroarch.cfg
These commands didn’t do anything for me. So this is what I did:
sudo reboot
After rebooting and starting up, press F4 and use this command:
startx
Having a mouse connected at this point will make things much easier :)Then look for the file browser and go to /home/pi/RetroPie/emulators/RetroArch/tools
In there you should find the file p1.cfg (You made this yourself)
Open this file with leafpad (or another text editor) and copy the text
Leave this text file open, as it seems to be impossible to copy this text if the file is closed.Then go to:
/home/pi/RetroPie/configs/all
Open the retroarch.cfg file with your text editor, and paste your text in here.Now all you have to do is log off and reboot, and see if this has worked for you.
Let me know if you had any results with this.07/30/2013 at 20:30 #2576dave407ParticipantSomething went wrong in one of the above commands. This is what it should be;
cd ~/RetroPie/emulators/RetroArch/tools ./retroarch-joyconfig -o p1.cfg -p 1 -j 1
So
cd ~/RetroPie/emulators/RetroArch/tools
./retroarch-joyconfig -o p1.cfg -p 1 -j 107/31/2013 at 00:15 #2577dave407ParticipantWhen you did the same thing as I did, your retroarch.cfg file should look like this (/home/pi/RetroPie/configs/all):
input_player1_joypad_index = “1”
input_player1_b_btn = “1”
input_player1_y_btn = “3”
input_player1_select_btn = “8”
input_player1_start_btn = “9”
input_player1_up_axis = “-5”
input_player1_down_axis = “+5”
input_player1_left_axis = “-4”
input_player1_right_axis = “+4”
input_player1_a_btn = “0”
input_player1_x_btn = “2”
input_player1_l_btn = “4”
input_player1_r_btn = “5”
input_player1_l2_btn = “6”
input_player1_r2_btn = “7”
input_player1_l3_btn = “11”
input_player1_r3_btn = “12”
input_player1_l_x_plus_axis = “+0”
input_player1_l_x_minus_axis = “-0”
input_player1_l_y_plus_axis = “+1”
input_player1_l_y_minus_axis = “-1”
input_player1_r_x_plus_axis = “+2”
input_player1_r_x_minus_axis = “-2”
input_player1_r_y_plus_axis = “+3”
input_player1_r_y_minus_axis = “-3”This seems to work, but the a,b,x,y buttons are mixed for the ps1 emulator. To solve this problem, go to this directory (in startx explorer)
/home/pi/RetroPie/configs/psxIn this folder, you should open retroarch.cfg
Any changes made in this config, will overrule the basic one in the “all” folder.
So this is how this config should look (you will have to edit this yourself)input_player1_joypad_index = “1”
input_player1_b_btn = “0”
input_player1_y_btn = “2”
input_player1_select_btn = “8”
input_player1_start_btn = “9”
input_player1_up_axis = “-5”
input_player1_down_axis = “+5”
input_player1_left_axis = “-4”
input_player1_right_axis = “+4”
input_player1_a_btn = “1”
input_player1_x_btn = “3”
input_player1_l_btn = “4”
input_player1_r_btn = “5”
input_player1_l2_btn = “6”
input_player1_r2_btn = “7”
input_player1_l3_btn = “11”
input_player1_r3_btn = “12”
input_player1_l_x_plus_axis = “+0”
input_player1_l_x_minus_axis = “-0”
input_player1_l_y_plus_axis = “+1”
input_player1_l_y_minus_axis = “-1”
input_player1_r_x_plus_axis = “+2”
input_player1_r_x_minus_axis = “-2”
input_player1_r_y_plus_axis = “+3”
input_player1_r_y_minus_axis = “-3”Let me know if this was any use to you…
07/31/2013 at 00:42 #2578zombiebotkingParticipantHey thanks for the reply! I’ll try that out and see what happens!
07/31/2013 at 17:14 #2580dave407ParticipantNo problem buddy!
Im a NOOB in the raspberry pi thing, and i’ve been working on this a couple of days to get it right. So feel free to let me know if this has worked for you.
And don’t forget to change this (in my first reply):
./retroarch-joyconfig -o p1.cfg -p 1 -j <strong>1</strong>
into this:
./retroarch-joyconfig -o p1.cfg -p 1 -j 1
PS: I have also used this guide;
but one of the last codes (to make it pretty), bugged the emulationstationcd RetroPie/supplementary git clone http://github.com/elpendor/ES-scraper cd cd RetroPie-Setup sudo ./retropie_setup.sh
This code above gave me a white screen. The RetroPie still works, but you can’t see the menu. But the menu becomes visible again when you start a game and then return to the menu. This bug occurs every time my raspberry is powered on. So I would strongly advise to not execute this last step.
07/31/2013 at 17:30 #2581dave407Participantthis was the guide:
http://supernintendopi.wordpress.com/07/12/2014 at 06:54 #14674buggiGuestI have a problem setting up xbox 360 controller for retropie image ver2.2.
Emulation station detects the gamepad and I am able to do my input configuration for buttons. Once I start the game, the controller buttons wont work. Keyboard works though. Can you help me to resolve this issue?Thanks
07/12/2014 at 11:02 #14721AnonymousInactivehi everybody !!
same problem as buddy but wiht my wired ps3 controller …
this is my topic : https://www.petrockblock.com/forums/topic/i-cant-play-with-mame-neo-geo-ps3-controller-usb/08/02/2014 at 18:08 #23383AnonymousInactive[quote=2577]When you did the same thing as I did, your retroarch.cfg file should look like this (/home/pi/RetroPie/configs/all):
input_player1_joypad_index = “1″
input_player1_b_btn = “1″
input_player1_y_btn = “3″
input_player1_select_btn = “8″
input_player1_start_btn = “9″
input_player1_up_axis = “-5″
input_player1_down_axis = “+5″
input_player1_left_axis = “-4″
input_player1_right_axis = “+4″
input_player1_a_btn = “0″
input_player1_x_btn = “2″
input_player1_l_btn = “4″
input_player1_r_btn = “5″
input_player1_l2_btn = “6″
input_player1_r2_btn = “7″
input_player1_l3_btn = “11″
input_player1_r3_btn = “12″
input_player1_l_x_plus_axis = “+0″
input_player1_l_x_minus_axis = “-0″
input_player1_l_y_plus_axis = “+1″
input_player1_l_y_minus_axis = “-1″
input_player1_r_x_plus_axis = “+2″
input_player1_r_x_minus_axis = “-2″
input_player1_r_y_plus_axis = “+3″
input_player1_r_y_minus_axis = “-3″This seems to work, but the a,b,x,y buttons are mixed for the ps1 emulator. To solve this problem, go to this directory (in startx explorer)
/home/pi/RetroPie/configs/psxIn this folder, you should open retroarch.cfg
Any changes made in this config, will overrule the basic one in the “all” folder.
So this is how this config should look (you will have to edit this yourself)input_player1_joypad_index = “1″
input_player1_b_btn = “0″
input_player1_y_btn = “2″
input_player1_select_btn = “8″
input_player1_start_btn = “9″
input_player1_up_axis = “-5″
input_player1_down_axis = “+5″
input_player1_left_axis = “-4″
input_player1_right_axis = “+4″
input_player1_a_btn = “1″
input_player1_x_btn = “3″
input_player1_l_btn = “4″
input_player1_r_btn = “5″
input_player1_l2_btn = “6″
input_player1_r2_btn = “7″
input_player1_l3_btn = “11″
input_player1_r3_btn = “12″
input_player1_l_x_plus_axis = “+0″
input_player1_l_x_minus_axis = “-0″
input_player1_l_y_plus_axis = “+1″
input_player1_l_y_minus_axis = “-1″
input_player1_r_x_plus_axis = “+2″
input_player1_r_x_minus_axis = “-2″
input_player1_r_y_plus_axis = “+3″
input_player1_r_y_minus_axis = “-3″Let me know if this was any use to you…
[/quote]Hello,
I turn now to xbox 360 wired pad, it is recognize by the emulation station, I can start a game and start-A-B inside, but my directions are not setup…
My problem is I do not have the file (/home/pi/RetroPie/configs/all) retroarch.cfg in the last build 2.3…
Where is the file located now?
thanks
01/09/2015 at 05:11 #84827jimnimParticipantSimilar issue to buggi here… Using wireless 360 controller, I can get through the button mappings and all buttons are recognized, but inside of NES or SNES emulator the buttons appear to be all wrong… left and right bumper register as select/start, and up/down on D-pad register as A/B. Changing mapping from the emulationstation interface seems to have no effect (which isn’t a surprise since you can see the emulators load the user-space config when launched).
Any articles detailing the use of a 360 controller with different games? I’ve searched quite a bit but can’t spot one that works quite right…
01/25/2015 at 20:58 #85934loopsmithParticipantAs of 2.3 the configs are in opt/retropie/configs/
02/15/2015 at 11:51 #87535gameroomsolutionsParticipantI did a video of how I got mine to work. Maybe this helps someone as I see this thread is not closed yet. http://youtu.be/DYmPPx3jh9A
Thanks,
Ryan03/02/2015 at 03:55 #89791jimnimParticipant@gameroomsolutions Thanks for the reply Ryan, that video was actually fairly helpful. The info is a bit dated though, as the current version of retropie actually runs you through the button-pressing process when registering RetroArch controller via retropie_testup.sh
I was able to get my controller functioning by re-running the RetroArch controller registration after the steps you listed, and finally got buttons working correctly… but it seems like the manually-added lines for hot keys don’t work within the emulators.
I’m also using a wireless controller, so I still can’t seem to find a “happy medium” between a working config, and a setup that doesn’t leave the LEDs on the controller constantly blinking as if it’s not connected.
Has anyone else in the thread had luck w/ getting a 360 wireless controller functioning properly?
-
AuthorPosts
- The forum ‘Everything else related to the RetroPie Project’ is closed to new topics and replies.