Retropi not allowing 2 player with ipac2
-
Hello everyone, I built an arcade using a rasberry pi 3 model b using retropi 4.0.2 i think. I am using an ipac2 with each player has all the buttons and joysticks. I am able to play games with the controller for 1 player but not able to join in with the 2 player. I don't know a whole lot about re configuring things if thats what i need to do to fix this problem. So if someone can help me and explain in very simple would be great. Thanks
-
@kc1123 there are some info here:
https://retropie.org.uk/forum/topic/1722/if-you-have-purchased-an-ipac2-and-want-to-save-time -
@meleu thanks. This may be a dumb question but how do I go about configuring the keyboard. Then it says to switch the ipac from keyboard to gamepad. When I do that do I need to assign a different button number per slot. There's a drop down menu that let's you choose buttons 1-32.
-
@kc1123 said in Retropi not allowing 2 player with ipac2:
This may be a dumb question but how do I go about configuring the keyboard
Not dumb, the ipac is not straightforward. The problem you have is because the current firmware doesn't present the device as a keyboard and in my experience it doesn't present itself as two game pads either. In that article, it means that with a fresh install, do not boot up with the ipac plugged in. Boot up with a keyboard plugged in and follow the auto-configure menu that is presented by Emulation station. Keep a note of all the keys you assign to player 1. That is all you do to configure the keyboard. Once this is done, you can edit the retroarch.cfg file and the add player 2 keys that match the default ipac setup which is for mame emulators. I have not used the windows setup yet, nor have I re-flashed the firmware. I have not configured game pads in the windows menus. All I did was this and it continues to work perfectly. In order to find out what letters and numbers your ipac is presenting, see the ultimarc website or exit emulation station and press your controls, the characters will appear for you. Reboot after editing the retroarch.cfg and you are done.
-
@rbaker ok thanks. So to edit the retroarch.cfg can I get to it from file manager in retropi and then click on the retroarch.cfg folder then click edit.
-
-
@rbaker ok thanks sorry if I'm getting annoying. So once I have winscp I can go into retroarch.cfg and edit it. Will I have to type input player 2 or will that already be there and I just have to put which button I want to assign each slot.
-
@kc1123 Yes you can, here is the setup for my config with no changes to the ipac defaults. You will need to add in player 2 or just cut and paste this...
input_player1_a = "alt" input_player1_b = "ctrl" input_player1_y = "space" input_player1_x = "x" input_player1_start = "num1" input_player1_select = "num5" input_player1_l = null input_player1_r = null input_player1_left = "left" input_player1_right = "right" input_player1_up = "up" input_player1_down = "down" input_player2_a = "s" input_player2_b = "a" input_player2_y = "q" input_player2_x = "k" input_player2_start = "num2" input_player2_select = "num6" input_player2_l = null input_player2_r = null input_player2_left = "d" input_player2_right = "g" input_player2_up = "r" input_player2_down = "f"
-
@rbaker ok thank you so much I'll give it a try tonight thanks
-
@rbaker i downloaded winscp. it ask me to put in a host name, login and password. Is there something specific i need to put in here or do i have to sign up for something.
-
Hi kc1123
Just this week I started configuring an arcade cabinet powered by raspberry 3.
I stumbled on the exact same problem as you. Here is how I dealt with the problem after two days of testing.
I want to express that I'm still in process of testing and refining the control scheme for the different systems and games.
The config files I plan to share below might not be my final version but they work fine for me.
The files are systemized and can be easily edited if you are building a system with a fewer buttons lets say.First of all...
The arcade I'm making is for two players.
Each player has a set of 10 buttons + the stick (4 buttons)
I'm using the IPAC2 board as you.The buttons are arranged in the way as shown in this IMAGE
(Big thanks to this GUY for giving me the idea of how to keep track on all this madness)So. The important thing is to start keeping track on how you want to map your keys.
Inspired by what the guy I mentioned above was doing I made myself a map of the control schemes which shows me how the buttons on the control panel are arranged and how are they gong to be mapped. I duplicated the template and changed the position of the buttons for each platform I planned to use. I will explain this in a bit and will share the template file if you want to use it yourself. Since I don't plan to use the N64 emulator I removed his additional notes on teh matter. N64 is a bit complicated for configuring so if you plan to use it consult with the link above.Let's start from the IPAC2 board first.
You already know that the board pins must be configured with the use of the WinIPAC software. The question is which buttons are best to be assigned to the switches. Some people on the net are suggesting to map the switches as Gamepad buttons. This would have been great, but unfortunately, I found out that this wouldn't work for a two player setup as the retro pie reads the board as ONE controller. There is no way for you to map the two players on it unless it is configured as a keyboard. Secondly, it would not be possible for you to map the buttons for the second player through the retro pie user interface. This needs to be done manually.In choosing which keys I would map to the switches of the IPAC I took into consideration that certain buttons on the keyboard may be reserved for special functions in the different emulators. I tried to avoid them in the very beginning. For example, I found out that the default configuration many people were suggesting was such that in MAME one of the buttons assigned for Player 1 turned my screen off. I saw that some user was suggesting using the TAB as a button for player 1. This one evoked the configuration menu of MAME which was annoying. As I plan to use the arcade in an office I didn't want to allow random people screwing up the configuration. So I kept that in mind. I also read someplace that Shift key wouldn't work in the NES emulator (this one I was not eager to test). Strangely enough, I found a problem with mapping the Num keys too. This I still can not explain to myself, but I used the mapping scheme listed by "rbaker" above. I assigned the Num1, Num5... keys to the IPAC. I wrote them in the config file and nothing. I thought that maybe I should map them as 1, 2 ,3 keys instead. That didn't work either. At the end, I just gave up and replaced them with the Y,U,H,J keys and the magic happened....
The key configuration I chose, in the end, is the one show in that first image I shared. IMAGE
Look closer at the legend in the lower part of the image.
Notice that there are 3 columns of text written in each button. Black, Brown, and Blue.
Black is the name of the switch assigned to the button.
Brown is the keyboard key assigned to that switch in the IPAC.
Blue is the label of the retro pad button I'm assigning to that switch.Once you arrange the switches and assign the right keyboard keys to them the only value you will have to move around for the different emulators will be the blue one - the button label. For the proper arrangement of each emulator , you can consult with the controller DIAGRAMS shown on the retro pie wiki.
If you have the same button configuration as mine and you want to test that set-up you can download my IPAC2 configuration file from HERE and import it to your IPAC2 board.
Ok... After I assigned these keyboard keys to the switches I had to add the key values to the \RETROPIE\configs\all\retroarch.cfg file
I browsed it through my home network and wrote the values on hand for both player 1 and 2.
At this point, I already figured out which controls I will use for the different platforms. I made myself a set of reference images to help me not get lost. HERE you can look at how I decided to map the rest of the controls for several other platforms. Look at how the blue labels switch places.If these controls work for you and you want to test them without manually inputting everything by hand download this ARCHIVE and replace the files in it with the ones located in the \RETROPIE\configs\ directory.
With that done, your system should mirror mine in configuration.
A note.
When you start your Retropie system you will be asked to configure your joystick for the first time.
I found this confusing. I expected that after writing all controls manually I would have skipped this step.
I'm still not sure if the retro pie UI in the main menu is using a different config file for the controls. In any case, map your buttons accordingly. Once you start the emulator the controls written in the cfg files will start working, 100% guaranteed.Finally.
If you find useful the reference images and you want to try using them as a base for keeping track of alternative configuration schemes or ones for other platforms you can download my file from HERE.In conclusion.
As I said, in the beginning, I'm still testing and refining this set-up.
There are things that I still have not yet figured myself yet. In fact, I just signed to this forum in order to start asking questions.
It so happens that the first post I saw was yours and by a coincidence, I just finished banging my head in the same problem you have encountered. So I decided to share my own experience before doing anything else.There are several things that are still not entirely OK with mine set-up, but these I expect will soon be resolved and I might be able to share some updated versions of my config files if you find them useful.
Here is a list of the things that I still need to figure out.
If so it happens that any of you reading this have an answer, please send me a message or share an opinion here.-
In Main Menu my second controller is inactive. I don't know if that is to be expected. I assume that it is possible that main menu controls to be written in another cfg file. (take a look at my Note again above)
-
I still don't know how to disable the (Hotkey) + x in Main Menu to stop Invoking the RGUI
-
Currently although written inside the cfg files the hotkeys for saving/loading game don't work. I assume it is a matter of the file hierarchy of the different the cfg files.
-
Sometimes by pressing very fast the "select" button inside Main Menu I'm through in a command screen and I have to restart the Pi. This might be related to the hotkeys somehow. Same happens when I use the search game by letter function.
-
Some arcade games need custom Per-ROM Override control schemes. Most notably the Street Fighter games. (two buttons must be switched). I will probably do that in the next following days when I have the chance to do some more testing.
-
My ps3 controller is detected in the main menu, but I'm unable to configure it. It comes to me that this might be because I missed installing the ps3 driver from the retro pie setup menu. It might be that or I have to find the cfg file for it and fix it manually.
These are the things that currently pop to my mind.
Hope I have been helpful.Now I plan to go to sleep and tomorrow will start searching for some help on the points listed above.
-
-
@theink thanks this is very helpful. I am having trouble figuring how to actually program or configure the controls in retroarch or wherever you have to go. If you or someone could explain to me what to do after you put the sd card into the pc. Someone said to use winscp to configure the control. But when I downloaded it it asked me for a host name, I.d and password. Any help will be greatly appreciated. Thanks again.
-
@kc1123
I want to clear several things out.From what I understand you are fine with reconfiguring the IPAC right?
How many buttons do you have on your control panel?
Is it a set-up like the one I'm describing or you have less/more buttons?
The reason I ask is so that I know if copying my files over yours will fix things immediately or you will have to do some additional adjustments.Now on the subject.
There are several ways to access the config files and edit them.
Some are doing this from a console. But for that, you need to know some basic programming. You can access them through the retro pie menu, but that is a bit clunky. You can also insert the card directly into your computer, but if it's operating system is any other than Linux you won't be able to see the drive as it is in a different file format, unreadable to Windows or Mac.The easiest way to access the files is to insert your card inside the raspberry pi. Then connect it with a LAN cable to your router. If you are using windows you will have to open the network folder on your PC. The Retro Pie console will appear as a regular PC there. Simply open it and you will see the file structure.
If you are making an arcade machine with the same number buttons as mine and same arrangement and assuming that you want to set it up the same way, simply copy the config files I uploaded to the pointed directory. Override your files. Don't worry I made backups of the default files in the archive itself.
Then if you know how to reprogram the IPAC open the WinIPAC program, click on File->import and choose the XML file I provided. This will set up the IPAC accordingly to the configuration files you just replaced. Then start up your retro pie.
On the first startup, it will ask you to configure your controller. input the controls again. (I don't know why this step appears, just do it) After that, everything will be set-up. Play some games see if the control scheme works for you.
If your button layout is totally different than mine you will have to additionally edit the cfg files to accommodate the difference.
Open them with a text editor and manually input the name of the keys you want to assign to the buttons you have on your control panel. -
@theink I have 12 buttons per player but probably don't need that many. I didn't know about connecting the pi to the router. I am good with reconfiguring the ipac using the winpac program on the computer. But still not sure how to do it on the pi. So once I hook the pi up to the router and open it up from my computer through the network folder what do I do from there. Is there somewhere that I can type in the buttons like what rbaker shows in the previous post here. Thank you so much for your help
-
@kc1123 said in Retropi not allowing 2 player with ipac2:
explain to me what to do after you put the sd card into the pc
First, you cannot put your sd card in the pc and edit files in this way. Winscp is a client for windows that allows you to transfer files between you pc and a remote computer, in this case the raspberry pi which must be on and booted with retropie running. It must be connected to your wireless or wired network to connect in this way. Winscp then allows you trouble free drag and drop for config alterations and rom transfer. The raspberry pi has a default password. The username is pi and the password is raspberry. You will need to know the ip address of your pi which you can get by going to Retropie Setup then Showip in the Emulation Station menu. You will need to read this link from my post above as this is explained in more detail. Once connected, you can browse using winscp remotely into your running pi and edit the necessary retroarch.cfg file which is located here:
/opt/retropie/configs/all
If you have completed a fresh install and have only configured a keyboard for one player like I suggested, you paste the above changes, remove the keyboard, plug in the ipac and you will have 2 player functionality. If you want to break it down further, keep the keyboard plugged in, edit the file as above and verify that you have two player functionality via the keyboard then once you have, you can unplug it, replace it with the ipac and you will have two player via the ipac. Remember that the default ipac is for MAME. Remember to verify what keys the ipac is giving you first.
-
@kc1123 said in Retropi not allowing 2 player with ipac2:
So once I hook the pi up to the router and open it up from my computer through the network folder
If you are going to do it this way, you must ensure that the Pi is connected to your home network. The model of Pi you have has built in wireless so you will need to configure it via Emulation Station. Then on my Windows 7 PC:
Start > Computer the bottom left shows RETROPIE
Double click RETROPIE to reveal network access to bios, configs, roms and splashscreens
Double click configs
Double click all
Double click retroarch.cfg and it will open in something. If it is garbled, open it in wordpad.
You can now edit the file.
You could drag some roms or delete some etc. I have never been near the command line on the actual Pi. Always via Winscp and/or this method. If you have time,
-
@theink said in Retropi not allowing 2 player with ipac2:
I assigned the Num1, Num5... keys to the IPAC. I wrote them in the config file and nothing.
They are already assigned to this config by default and work without editing.
@theink said in Retropi not allowing 2 player with ipac2:
the board pins must be configured with the use of the WinIPAC software
This is only true if you want to adjust the default mapping away from MAME. By adjusting you risk changing the ipac2 default hot key features.
@theink said in Retropi not allowing 2 player with ipac2:
In Main Menu my second controller is inactive.
Did you configure a keyboard for two player first before plugging in the ipac? If not, it will not work in Emulation station if you missed this stage out. You will have to re-flash the firmware if you want the ipac to behave like a true keyboard encoder. Look inside your es_input.cfg A file is written when you configure a keyboard alongside the retroarch settings. This is mine:
<?xml version="1.0"?> <inputList> <inputAction type="onfinish"> <command>/opt/retropie/supplementary/emulationstation/scripts/inputconfiguration.sh</command> </inputAction> <inputConfig type="keyboard" deviceName="Keyboard"> <input name="start" type="key" id="49" value="1"/> <input name="up" type="key" id="1073741906" value="1"/> <input name="a" type="key" id="122" value="1"/> <input name="b" type="key" id="1073742049" value="1"/> <input name="down" type="key" id="1073741905" value="1"/> <input name="right" type="key" id="1073741903" value="1"/> <input name="select" type="key" id="53" value="1"/> <input name="left" type="key" id="1073741904" value="1"/> </inputConfig> </inputList>
-
@rbaker ok so I got the ip of the pi and opened winscp. Typed in the ip then the username pi
Password rasberry
Then it keeps telling be access denied what should I do. -
@kc1123 It's raspberry, not rasberry.
-
@rbaker o thanks I went in and changed the password I'm in winscp now so I'm going to do what you said in the earlypost.
Contributions to the project are always appreciated, so if you would like to support us with a donation you can do so here.
Hosting provided by Mythic-Beasts. See the Hosting Information page for more information.