This is driving me mad!!!
-
Hi guys, my first time posting here, I'm very new to retropie and with no programming experience whatsoever. I'm building a little bartop for me and the kids, I've got retropie downloaded to my pi, and transferring roms via my usb, all fine so far. I've got 2 zero delay usb encoder joysticks I got off ebay. I configure the first, fine for 1 player games, no problems. Then I configure the 2nd, enter the settings etc, but when I start a 2 player game the other users controls are reversed!! Then I go to configure the other controller and correct the buttons, try a 2 player game again and the other persons controls are reversed!! And it goes on like this, never ending. I've tried the input section of retroarch, player 2 binds etc, no luck there either. What's going on, are these controllers not compatible in 2 player mode? Any suggestions much appreciated as I feel like giving up....
-
@Niall76 you have one of them wired wrong. Also if you have two matching controllers you only have to set up one controller. Then you restart the system.
-
To expand, you need to have them wired exactly the same. You might not have them "wrong" but they are wired differently. Make sure player 2 is wired exactly the same as player 1 and you should be fine.
-
Yes. I should have stated that better. As @TMNTturtlguy said, if things are different swap the wires around on player two to match player one.
-
Hi guys many thanks for your help, they are both zero delay usb encoders, but one has individual wires to each point ie up down left and right, and the other as all its connection wires in one piece which plugs directly into the board, if you know what I mean!! These are for the joysticks themselves doesn't seem to be any problem with the buttons,.just the joysticks
-
@Niall76 i think you have one of your joysticks upside down.
-
@Niall76 I am not sure what your pin connectors look like but you should be able to trace the wires through to determine how they are wired.
-
@Niall76 your description indicates that both encoders have the same name for the OS. In this case, RetroPie/RetroArch uses the same file in
/opt/retropie/configs/all/retroarch-joypads/JOYSTICK_NAME.cfg
. And then the last joystick you configure will always overwrite the previous config you made. That's why the most recent config make one joystick works fine but mess the other controller.Fixing the connections of the problematic joystick is the most correct action to take. But if you're unable to do that, here's my suggestion:
Premises:
- it's a bartop, then the first joystick will be always the player1 and the second one, the player2.
- you can't fix the connections of the stick.
- you'll use retroarch most of the time.
Proposed solution
-
Configure your joystick for player1.
-
Open your
/opt/retropie/configs/all/retroarch-joypads/JOYSTICK_NAME.cfg
and look for the*_axis
lines, like these:
input_up_axis = "-1" input_down_axis = "+1" input_left_axis = "-0" input_right_axis = "+0"
-
Now insert
player1_
after eachinput_
. Example:input_up_axis
will beinput_player1_up_axis
. -
Now copy'n'paste the 4 lines (up, down, left and right) and in the new copied lines, substitute
player1
byplayer2
. -
In the
player2
lines, use the values you need to make it work not reversed. Example:
# d-pad for player1 input_player1_up_axis = "-1" input_player1_down_axis = "+1" input_player1_left_axis = "-0" input_player1_right_axis = "+0" # d-pad for player2 input_player2_up_axis = "-0" input_player2_down_axis = "+0" input_player2_left_axis = "-1" input_player2_right_axis = "+1"
I hope it helps.
Cheers!
-
-
@meleu great advice much appreciated! I will try checking the wiring etc first, its a very strange one, esp when I configure one and the other goes into reverse and Vice versa, if that doesn't work I will do what you mentioned, but I wont let it get the better of me😊
-
@Niall76 just turn one of the joysticks around.
-
Hi everyone an update, I've checked the wiring, disassembled the controller I thought there might be problems with so put it back together, seems to be going ok, both joysticks toggle through the menus fine, I've a couple if mega drive games on it, and thankfully 2 player controls worked ok!!!!
But...... I have a couple of Mame games, when I try 2 player the same problem comes up, 1 joystick is ok, the other is reversed. I've tried what the previous poster said about inputing the controls up down left right etc but when I start a game I seen a msg pop up something like Core doesn't support saved states.
So my main menu controls are fine with both controllers, as is Sega mega drive, but the problems start with Mame. What can I do?
-
@Niall76 did you try to configure the controls previously in mame? If so you need to delete that config file wherever it got saved.
-
@Niall76 what name emulator are you trying to use?
-
@edmaul69 hi there no I don't think I have done anything specific to mame, I'm not sure how to configure controllers specifically for mame. The emulator I am using is mame liberato, or something like that
-
@Niall76 to help you we need to know what name emulator you are using. Check out the docs section on this forum under arcade. You can check what emulator is set by pressing the A button when the rom is loading.
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.