Homepage › Forums › RetroPie Project › Everything else related to the RetroPie Project › Game pads not working in emulation station menu
- This topic has 21 replies, 6 voices, and was last updated 10 years, 2 months ago by doanerock.
-
AuthorPosts
-
03/14/2013 at 09:06 #1384donkahonesParticipant
i have two snes controllers wired into the gpio with a hacked up IDE connector. Ran the setup script and the game pads work flawlessly in the games. They do not work at all in the menu though. Not sure what is happening….
Anyone have any ideas?
the keyboard works fine in the menu so I can still play :)
03/14/2013 at 09:25 #1385donkahonesParticipantNever mind. i was able to find this
i just needed to add a sleep command to the emulation station startup script so that the game pad drivers load first
Thanks again
03/14/2013 at 09:31 #1386donkahonesParticipantI added a sleep 15 in a line above ./emulationstation in the /usr/bin/emulationstation file…
…..um that didn’t work…..going to sleep now
03/14/2013 at 17:38 #1388petrockblogKeymasterYou need to delete ~/.emulationstation/es_input.cfg and restart Emulation Station. A screen should appear that allows you to configure ES for your first game pad.
03/15/2013 at 06:43 #1390donkahonesParticipantThanks for the quick response and all your hard work.
I was able to get it working with controller 2 only. I noticed it mention that it will only work with the first controller plugged in. Rebooted with only player 1 plugged in and I can’t complete the es setup because it doesn’t recognize anything being input.
03/15/2013 at 07:21 #1391petrockblogKeymasterYou need to swap the data connections of the controllers (hardware solution) or to swap the pin assignments for data 1 and data 2 in SNESDev (software solution, https://github.com/petrockblog/SNESDev-RPi/blob/master/src/main.c#L321)
Hope that helps!?
03/15/2013 at 18:37 #1395donkahonesParticipantSo I edited main.c with
pads.data1 = RPI_GPIO_P1_07;
pads.data2 = RPI_GPIO_P1_05;Instead of
pads.data1 = RPI_GPIO_P1_05;
pads.data2 = RPI_GPIO_P1_07;In both the rev 1 and else portions of the if statement. (I have a rev 2 pi)
then a ran:
make clean
makeRebooted and it still doesn’t work.
For the hardware solution, wouldn’t swapping physical inputs just cause p1 controller to now be p2 controller? Then I’d be in the same situation where I have to control emulation station with p2 controller and pickup p1 controller to play?
03/16/2013 at 14:03 #1400petrockblogKeymasterAfter re-compiling SNESDev you need to copy the binary into the directory /usr/local/bin/. You might need to stop the running service “SNESDev” before, which you can do with
sudo service SNESDev stop
After copying the newly compiled binary to that location mentioned above, restart the SNESDev service with
sudo service SNESDev start
03/19/2013 at 08:17 #1406donkahonesParticipantNo luck.
Does everyone who wants to control their emulations ration menu with their player 1 controller have to go through these steps?
I assume I am missing something obvious here. Should I just start from scratch with the latest image?
03/20/2013 at 18:25 #1412petrockblogKeymaster[quote=1406]No luck. Does everyone who wants to control their emulations ration menu with their player 1 controller have to go through these steps? I assume I am missing something obvious here. Should I just start from scratch with the latest image? [/quote]
I am afraid that using the latest image won’t help here.
- You have to configure Emulation Station for your joystick: Therefore, a screen in Emulation Station will pop-up at start after a gamepad has been recognized for the first time. The settings for Emulation Station are then saved in the file /home/pi/.emulationstation/es_input.cfg.
- You have to configure RetroArch for your joystick. Please refer to https://github.com/retropie/RetroPie-Setup/wiki for questions about specific controllers.
- If you are using SNESDev, make sure that you are using exactly the pins as described at https://www.petrockblock.com/2012/10/21/the-retropie-gpio-adapter/!
- If your controllers for player 1 and 2 are swapped, another option (compared to the ones stated above) would be to change the settings in /home/pi/RetroPie/configs/all/retroarch.cfg
Unfortunately, setting up the controllers for your RetroPie system heavily depends on the very specific hardware setup of the individual users.
03/21/2013 at 09:04 #1415donkahonesParticipantOk. So I finally figured out my issue…..
Somehow my retroarch.cfg config had gamepad= 1 as player 1 and gamepad=0 as player 2. This caused the swap I was seeing when playing games.
I made player 1 gamepad=0 and player 2 gamepad=1 and then went through the emulation station pop-up screen. now everything works fine. Now on to exiting roms with holding down select and pressing start……..
Thanks for all your help!!!!!!
03/21/2013 at 18:04 #1416petrockblogKeymasterGlad to hear!
05/03/2013 at 20:16 #1682depmodParticipantFirst of all thanks a lot for all your hard work. Everything went smooth with image installation. My only problem is when I plug my NES USB controller http://www.amazon.com/Classic-USB-NES-Controller-PC/dp/B002YVD3KM during the initial setup screen for controller in Emulationstation and follow the directions on screen everything is OK until I come to PgUp PgDown section. The controller has the directionpad and 4 extra buttons Start select A and B. So when I am at PgUP I run out of buttons. With the keyboard it is OK but I do not know what to do with my controller. I have been looking around on the web for a hint but no luck . I would appreciate any help. Thanks.
05/03/2013 at 21:56 #1683jbaker1225ParticipantJust choose a dummy button. Try Select, for instance. And hit Select (or your dummy button) for all of those buttons. Then go into your retroarch.cfg file, scroll to the bottom where the controller inputs are, and delete the “PgUP, PgDwn.. etc” lines that you don’t need.
05/03/2013 at 22:08 #1684jbaker1225ParticipantSorry, you’re talking emulation station. The file to edit is .emulationstation/es_input.cfg
Not the retroarch.cfg file.05/03/2013 at 22:11 #1686depmodParticipantThanks a lot for help jbaker1225. I can use the controler on retroarch. But with Emulationstation you cannot map a dummy button. When you run out of buttons and hit the same one again. It says that button is already mapped.
05/03/2013 at 23:08 #1688jbaker1225ParticipantAhh, interesting.
Have you checked to see if the es_input.cfg file exists in your .emulationstation directory?
If not, you might be able to create one and put it there.
If you need, I can put the contents of my es_input.cfg file up here when I get home so you can try and create your own.05/04/2013 at 01:16 #1691petrockblogKeymasterI think this issue was also mentioned at the repository of Emulation Station (https://github.com/Aloshi/EmulationStation/issues/67).
05/04/2013 at 09:45 #1692depmodParticipantThanks a lot jbaker and petrockblog. I haven’t came across that post in emulationstation. Let me try that and post the results here.
05/04/2013 at 11:00 #1693depmodParticipantSuccess. Thanks a lot for your help jbaker and petrockblog. I reviewed https://github.com/Aloshi/EmulationStation/issues/67 and solved it if anybody else has the same controller (http://www.amazon.com/Classic-USB-NES-Controller-PC/dp/B002YVD3KM) or similar problem:
Go ahead and run the Emulationstation wizard with keyboard while the usb controller is plugged in. It will capture the keyboard keys in es_input.cfg but it will give you your usb device name for the joypad just before </inputlist> tag. Then use the the sample below and correct your es_input.cfg which is under .emulationstation folder under home folder.
<?xml version="1.0"?>
<inputList>
<inputConfig type="joystick" deviceName="USB Gamepad ">
<input name="a" type="button" id="1" value="1"/>
<input name="b" type="button" id="0" value="1"/>
<input name="down" type="axis" id="1" value="1"/>
<input name="left" type="axis" id="0" value="-1"/>
<input name="menu" type="button" id="3" value="1"/>
<input name="right" type="axis" id="0" value="1"/>
<input name="select" type="button" id="2" value="1"/>
<input name="up" type="axis" id="1" value="-1"/>
</inputConfig>
</inputList>05/12/2013 at 00:21 #1743voltron2112ParticipantThank you so much Depmod, I hate when people say I figured it out and then don’t tell you how they did it. I had the exact same NES pad and this worked perfect.
09/01/2014 at 05:06 #49787doanerockParticipantWhy can I not sue the gamepad if it detects the gamepad?
-
AuthorPosts
- The forum ‘Everything else related to the RetroPie Project’ is closed to new topics and replies.