Homepage › Forums › RetroPie Project › Everything else related to the RetroPie Project › How do I set up two SNES controllers?
Tagged: USB controller snes retropi
- This topic has 26 replies, 11 voices, and was last updated 9 years, 9 months ago by Anonymous.
-
AuthorPosts
-
10/26/2014 at 22:52 #82058AnonymousInactive
Hi!
I purchased 2 of these USB SNES controllers: http://www.amazon.com/gp/product/B002JAU20W/ref=oh_aui_detailpage_o05_s00?ie=UTF8&psc=1
I am just trying to set up SNES to start with, and then move on to other emulators. My retroarch.cfg file looks OK, and it seems like it should be working, yet the second controller remains unresponsive (Testing it on Super Mario Kart. It’s it’s fine in emulationstation itself).Here’s my main configuration:
input_player1_joypad_index = "0" input_player1_b_btn = "2" input_player1_y_btn = "3" input_player1_select_btn = "8" input_player1_start_btn = "9" input_player1_up_axis = "-1" input_player1_down_axis = "+1" input_player1_left_axis = "-0" input_player1_right_axis = "+0" input_player1_a_btn = "1" input_player1_x_btn = "0" input_player1_l_btn = "4" input_player1_r_btn = "5" input_enable_hotkey_btn = 8 input_exit_emulator_btn = 9 input_menu_toggle_btn = 5 input_player2_joypad_index = "0" input_player2_b_btn = "2" input_player2_y_btn = "3" input_player2_select_btn = "8" input_player2_start_btn = "9" input_player2_up_axis = "-1" input_player2_down_axis = "+1" input_player2_left_axis = "-0" input_player2_right_axis = "+0" input_player2_a_btn = "1" input_player2_x_btn = "0" input_player2_l_btn = "4" input_player2_r_btn = "5"
Here’s my SNES specific configuration:
input_menu_toggle_btn = 5 input_enable_hotkey_btn = 8 input_exit_emulator_btn = 9 input_player1_a_btn = 1 input_player1_b_btn = 2 input_player1_y_btn = 3 input_player1_x_btn = 0 input_player1_start_btn = 9 input_player1_select_btn = 8 input_player1_l_btn = 4 input_player1_r_btn = 5 input_player1_left_axis = -0 input_player1_right_axis = +0 input_player1_up_axis = -1 input_player1_down_axis = +1 input_player2_a_btn = 1 input_player2_b_btn = 2 input_player2_y_btn = 3 input_player2_x_btn = 0 input_player2_start_btn = 9 input_player2_select_btn = 8 input_player2_l_btn = 4 input_player2_r_btn = 5 input_player2_left_axis = -0 input_player2_right_axis = +0 input_player2_up_axis = -1 input_player2_down_axis = +1
The controller isn’t defective, because it works fine when it’s the only one plugged in. It just never seems to work with both plugged in.
Any help?
Thanks!10/26/2014 at 23:52 #82059FloobMemberTry using an empty snes specific retroarch.cfg file, then when the emulator is firing up does it identify both controllers with yellow text at the bottom of the screen?
10/27/2014 at 00:05 #82060AnonymousInactiveNot when the ROM loads, but when I’m ingame and I unplug/connect the controllers it shows up. Here are the two controllers:
Joypad #0 (dev/inputs/event1)
and
Joypad #1 (dev/inputs/event2)
Does this have any significance?
10/27/2014 at 00:52 #82061FloobMemberThats odd – retroarch should have the on screen display when it boots up.
Does your retroarch file have “true” for the OSD value?Did you use the controller detector in the retropie setup file itself?
10/27/2014 at 02:14 #82064AnonymousInactiveHmmm.. I tried enabling the commented out option that you said, and now yellow text appears at startup saying “Joypad #1 (USB Gamepad) configured”. No mention of gamepad 2. I did notice something by watching the video, though — There are a lot of retroarch.cfg files. I’m editing the one in opt/retropie/configs/all, is that correct?
Also, I did not previously use the controller detector like that. I actually ran it from command line. To be safe, I went ahead and ran it again — No effect. Interestingly though, when I went to map the second controller by unplugging the first controller and connecting the second controller, upon running of the setup it immediately crashed back to GUI saying that it had stored in the file “.cfg” (whereas with the first controller it saved in “USBGamepad.cfg”). It didn’t actually create a file for the second controller, I am assuming this is part of (or the source of) the problem.
Do you think that’s the issue? Is there a way to manually create a configuration file for the second controller?
10/27/2014 at 03:02 #82067FloobMemberOk, I would say that “Joypad #1 (USB Gamepad) configured” indicates the second controller is detected, as the first one would be
“Joypad #0 (USB Gamepad) configured”Watch it really carefully when it boots again and see if it shows both, as they do flash up pretty quickly. If it does show both, thats a good sign that RetroArch knows they are both there.
Essentially the only cfg files RetroArch will use are the one in /all/ directory, which is obviously read by all the RetroArch emulator cores, and then the system specific one will be read and overwrite any previous rules. Thats why, when you are testing here, it would be good to blank out the snes specific one, so you know it is just reading the one in the /all/ directory, and you can worry about fine tuning later.
You can see your controller config file in the “configs” directory inside the RetroArch folder, retroarch automatically loads this. I have 2 controllers exactly the same, hence its the same controller config.
I dont have any controller settings in the console specific folders, i.e. snes, and in the /all/ directory version I have all the controller mappings commented out – except for:
input_autodetect_enable = true
joypad_autoconfig_dir = /opt/retropie/emulators/RetroArch/configs/Are you running RetroPie 2.3, as these settings were default for me.
10/27/2014 at 03:35 #82069AnonymousInactiveNo, I am quite sure that only #1 pops up.
All my other settings seem to be correct…
I did notice something a second ago, though — On the ROM loading process, RetroArch gives a warning:
[udev] Couldn't open any keyboard, mouse, or touchpad. Are permissions set correctly for /dev/input/event*?
Might this be it? Looks promising.EDIT:
Looks like it’s failing to detect ANY controller #0. When I just have one controller in, it doesn’t put out any yellow text at start (although it does recognize the button presses of the controller). Two controllers show yellow text of #1.10/27/2014 at 12:45 #82078FloobMemberHave you tried the autodetect process above rather than manually setting them?
10/27/2014 at 17:25 #82088AnonymousInactiveWhat exactly do you mean? The auto configuration in the RetroArch setup file? If so, I have done that.
10/27/2014 at 18:29 #82093FloobMemberIts worth checking the retroarch.cfg files – so blank out the snes one completely, and comment out all the joypad lines in the /all/ version.
Just make sure these lines are uncommented in it
input_autodetect_enable = true
joypad_autoconfig_dir = /opt/retropie/emulators/RetroArch/configs/10/28/2014 at 03:33 #82105AnonymousInactiveFinally figured it out! Thanks for all your help. It looks like there was a section of retroarch.cfg that I did not add that was messing some things up. No idea what was up with that, but it works now!
10/28/2014 at 13:56 #82121FloobMemberGreat stuff. I tend to keep a clean copy of retropie about that I compare my install to now and again and see if I’ve changed something I shouldnt have.
Glad its all good now.
10/28/2014 at 19:09 #82133goodwinsplaceParticipantBlue-dragon – can you post your retroarch.cfg for me to take a look, I’m also using two snes control pads but I can only get them both to play as player 1, so if I start a game like street fighter I can only play two players and both punch and move at the same time.
10/29/2014 at 20:52 #82178RetroMarineParticipantHere’s mine……….
input_player1_joypad_index = 0
input_player1_b_btn = 2
input_player1_a_btn = 1
input_player1_y_btn = 3
input_player1_x_btn = 0
input_player1_l_btn = 4
input_player1_r_btn = 5
input_player1_start_btn = 9
input_player1_select_btn = 8
input_player1_up_axis = -1
input_player1_down_axis = +1
input_player1_left_axis = -0
input_player1_right_axis = +0input_enable_hotkey_btn = 8
input_exit_emulator_btn = 9input_enable_hotkey_btn = 8
input_save_state_btn = 4input_enable_hotkey_btn = 8
input_load_state_btn = 5input_enable_hotkey_btn = 8
input_state_slot_increase_btn = 0input_enable_hotkey_btn = 8
input_state_slot_decrease_btn = 2input_player1_turbo_btn = 4
input_player2_turbo_btn = 4input_enable_hotkey_btn = 8
input_hold_fast_forward_btn = 3rewind_enable = true
rewind_buffer_size = 3
rewind_granularity = 2
input_enable_hotkey_btn = 8
input_rewind_btn = 1input_player2_joypad_index = 1
input_player2_b_btn = 2
input_player2_a_btn = 1
input_player2_y_btn = 3
input_player2_x_btn = 0
input_player2_l_btn = 4
input_player2_r_btn = 5
input_player2_start_btn = 9
input_player2_select_btn = 8
input_player2_up_axis = -1
input_player2_down_axis = +1
input_player2_left_axis = -0
input_player2_right_axis = +0system_directory = /home/pi/RetroPie/BIOS
game_history_size = 100video_font_path = /home/pi/.emulationstation/general_art/Gobold.ttf
video_font_size = 32
video_message_color = 00ff0010/30/2014 at 00:46 #82188AnonymousInactiveSorry this took so long! Attached is my entire retroarch.cfg file. Warning — It’s long! It has all the possible options on it. There are no specifically mapped buttons, they’re all set up using the retroarch setup file.
Remember to blank out all other console specific config files!
Also, MAME controls can be configured ingame by pressing TAB.
11/09/2014 at 00:22 #82526AnonymousInactive[quote=82188]Sorry this took so long! Attached is my entire retroarch.cfg file. Warning — It’s long! It has all the possible options on it. There are no specifically mapped buttons, they’re all set up using the retroarch setup file.
Remember to blank out all other console specific config files!
Also, MAME controls can be configured ingame by pressing TAB.
[/quote]
Where? Is it the one at the top of the post?11/09/2014 at 02:20 #82533AnonymousInactive[quote=82526]
<div class=”d4p-bbt-quote-title”>blue-dragon360 wrote:</div>
Sorry this took so long! Attached is my entire retroarch.cfg file. Warning — It’s long! It has all the possible options on it. There are no specifically mapped buttons, they’re all set up using the retroarch setup file.Remember to blank out all other console specific config files!
Also, MAME controls can be configured ingame by pressing TAB.
Where? Is it the one at the top of the post?
[/quote]
Huh, it looks like it doesn’t like the .cfg format. I’ve reattached it in .txt format, you’ll manually have to change it back to .cfg. Let me know if it doesn’t work again! :)03/03/2015 at 06:41 #89964tactechlParticipantI’m having the same problem , the controller configuration is simply saying its created a file “.cfg”. but there’s no output in the config folder for the usb controller.
(im attempting to setup two SNES iBuffalo controllers)[quote=82064]Hmmm.. I tried enabling the commented out option that you said, and now yellow text appears at startup saying “Joypad #1 (USB Gamepad) configured”. No mention of gamepad 2. I did notice something by watching the video, though — There are a lot of retroarch.cfg files. I’m editing the one in opt/retropie/configs/all, is that correct?
Also, I did not previously use the controller detector like that. I actually ran it from command line. To be safe, I went ahead and ran it again — No effect. Interestingly though, when I went to map the second controller by unplugging the first controller and connecting the second controller, upon running of the setup it immediately crashed back to GUI saying that it had stored in the file “.cfg” (whereas with the first controller it saved in “USBGamepad.cfg”). It didn’t actually create a file for the second controller, I am assuming this is part of (or the source of) the problem.
Do you think that’s the issue? Is there a way to manually create a configuration file for the second controller?
[/quote]03/03/2015 at 12:29 #89983FloobMemberThis is often due to either a path issue where the process cant find the joyconfig program (due to an old image and new setup script) or you have something open like Emulation Station that has a lock on the joypad.
I’d suggest writing a new copy of 2.6.0 (making sure ES isnt running, if it is quit out of it), update the retropie-setup script and then re-run this.03/03/2015 at 17:24 #90007AnonymousInactiveHi,
im really new to the RetroPie and/or EmulationStation ;-)
Im using v2.6 and Ive already managed to get one SNES USB Controller to work fine in game/rom and emulationstation as well. When I plug in the second controller, both work in emulationstation but only one (always the same) works in a game.Ive done this whith the “Register RetroArch Controller” and it worked as described above.
I now watched the Multicontroller video from Floob and edited the /opt/retropie/configs/all/retroarch.cfg and inserted player2 “manually”. but it does not work ingame :-(ive absolutely no idea what I can do to fix it, has anyone?
03/03/2015 at 17:31 #90009tactechlParticipantThe crazy thing is Floob, the setup program is finding the controller configuration script, its prompting me for each button. Then when it returns to the “GUI” it says the files was saved as “.cfg” which of course doesn’t exist in the directory its supposed to.
03/03/2015 at 18:46 #90022herbfargusMember@p0w3r
If you are using the default SNES emulator (pocketsnes) it has issues with two player- at least in my case. Only the 1 player controls worked even though my second controller has been registered and is working in other games. If you have a Rpi2 then you can install the snes9x next experimental package from the setup script and it worked fine for me after that. See this video (at about 7 min) on how to do that:
03/03/2015 at 20:33 #90042FloobMember[quote=90009]The crazy thing is Floob, the setup program is finding the controller configuration script, its prompting me for each button. Then when it returns to the “GUI” it says the files was saved as “.cfg” which of course doesn’t exist in the directory its supposed to.[/quote]
Any chance you can video or screengrab the error (you should notice it flicks up on a black background to briefly show the error if it cant write the file properly)
Are you using 2.6.0 and have updated the retropie-setup script?
03/04/2015 at 17:20 #90140AnonymousInactiveI have installed my Set-up for Emulation Station as well. I have set up two of the same SNES controllers with the script as you can see at the bottom of this post. It works fine, except it only accepts the movement of player 2 whenever player one is entering input. So I try this when playing bomberman, but player 2 cannot move when player 1 is standing still. Does anyone know how I can fix this?
#player 1 input_player1_joypad_index = "0" input_player1_b_btn = "2" input_player1_y_btn = "3" input_player1_select_btn = "8" input_player1_start_btn = "9" input_player1_up_axis = "-1" input_player1_down_axis = "+1" input_player1_left_axis = "-0" input_player1_right_axis = "+0" input_player1_a_btn = "1" input_player1_x_btn = "0" input_player1_l_btn = "4" input_player1_r_btn = "5" input_enable_hotkey_btn = "8" input_exit_emulator_btn = "4" #player 2 input_player2_joypad_index = "1" input_player2_b_btn = "2" input_player2_y_btn = "3" input_player2_select_btn = "8" input_player2_start_btn = "9" input_player2_up_axis = "-1" input_player2_down_axis = "+1" input_player2_left_axis = "-0" input_player2_right_axis = "+0" input_player2_a_btn = "1" input_player2_x_btn = "0" input_player2_l_btn = "4" input_player2_r_btn = "5"
03/05/2015 at 06:07 #90203widespreaddeadheadParticipantThanks everyone for the tips, got my snes working on my RPi 2 thanks to this thread. Anyone having troubles, what worked for me was following the video above to install snes9x through the retropie setup script. Rebooted and my config file was just set to autodetect and that didn’t work. So I manually entered the controls under the joypad section and, BAM! Works!
03/05/2015 at 09:46 #90218ceuseParticipantwell the original posters problem i think i can answer by looking :
input_player1_joypad_index = “0”
input_player2_joypad_index = “0”cant be right :-)
03/05/2015 at 12:25 #90227AnonymousInactivethanks to all, it worked fine for me with snes9x-next core! (few crashes but donno if rom or core)
-
AuthorPosts
- The forum ‘Everything else related to the RetroPie Project’ is closed to new topics and replies.