Controls messed up in emulator launch menu and various emulators
-
having the same problem, since i did a dist-upgrade. My Dual Shock 4 controller works fine in Emulationstation, and in non-libretro emulators, but in retroarch, the yellow text says the controller is connected, but no buttons work at all. If i disconnect then reconnect the controller it works, until i go into the retroarch UI, then i have to disconnect/reconnect again before it will move, but it just jumps all over the place when i try to navigate the menu's.
No idea how to fix this, tried using meleu's joystick selection, tried killing triggerhappy daemon, tried resetting, I'm about to do a fresh install...
-
@gomisensei Wish I could pin down when this started happening. I noticed the problem in the emu launch menu about a week ago around the time I was messing with MAME and the screen configurations got messed up with a bad power down.
I think my tinkering has only made things worse now.
I'm hoping that I don't have to do a fresh install because there is a lot of setup stuff I've been doing the last few weeks that I'm not sure where all of it is located. The system isn't exactly intuitive.
-
What controller ? How many controllers do you have connected ? You've described the problem, but you've given no specifics about the controllers used.
The Sony DS3 and DS4 are changed with the new kernel present in Raspbian Stretch and are reported as 2 gamepads. More details- https://retropie.org.uk/forum/topic/17650/dualshock-controllers-on-4-4-with-3b/
- https://retropie.org.uk/forum/topic/17400/changed-button-numbers-on-ps3-controller-on-stretch-4-4-image
Also, make sure the keyboard is not selected as Player 1, that could be the reason that your controller appears unresponsive (it's read as P2).
-
What controller ?
BDA PS3 AIRFLOW WIRED CONTROLLER
How many controllers do you have connected ?
Only one currently, although I have two of these and frequently swapped between the keyboard and the 2nd controller without any issue until late last week.
https://retropie.org.uk/forum/topic/17650/dualshock-controllers-on-4-4-with-3b/ https://retropie.org.uk/forum/topic/17400/changed-button-numbers-on-ps3-controller-on-stretch-4-4-image
I can't imagine either of these links are going to help me. I've had zero issues with these controllers and keyboard with 4.4 for almost a month now until this happened.
Also, make sure the keyboard is not selected as Player 1, that could be the reason that your controller appears unresponsive (it's read as P2).
How do I do this?
I still don't think this will help the issue though. Now whenever I put the inputs in for the controller it will work until I launch a game, or use any of the configuration options. When I go back to emulationstation the controller is dead.
Setting up the controller configs no longer creates the controller-specific configuration file in
/opt/retropie/configs/all/retroarch-joypads
either. -
@used2berx said in Controls messed up in emulator launch menu and various emulators:
I can't imagine either of these links are going to help me. I've had zero issues with these controllers and keyboard with 4.4 for almost a month now until this happened.
In this case, it's a configuration issue. Something you changed during configuration that broke the gamepad (auto)configuration. Did you enabled - at any point - the
save_on_exit
option in RetroArch ?Also, make sure the keyboard is not selected as Player 1, that could be the reason that your controller appears unresponsive (it's read as P2).
How do I do this?
Remove the keyboard and leave only the gamepad connected.
I still don't think this will help the issue though. Now whenever I put the inputs in for the controller it will work until I launch a game, or use any of the configuration options. When I go back to emulationstation the controller is dead.
Setting up the controller configs no longer creates the controller-specific configuration file in /opt/retropie/configs/all/retroarch-joypads either.That shouldn't happen unless the ES scripts are missing or the permissions on that folder are broken and the
pi
user has no access to it. Since they worked up to a point and you didn't change/update any software on the RetroPie side, you might have accidentally changed some permissions for some folders where the configuration has been stored. -
In this case, it's a configuration issue. Something you changed during configuration that broke the gamepad (auto)configuration. Did you enabled - at any point - the save_on_exit option in RetroArch ?
No. I've never messed much with RetroArch. When this issue initially happened, it was after a bad shutdown with MAME/FBA that also screwed up my display.
Initially, before I messed with anything, the only thing it really seemed to effect was the screen you can get to pop up while loading a rom where you can select default emulators for systems/roms and video modes. (which is super important to me because I'm configuring every rom to launch via this menu).
Then I broke everything.....
Remove the keyboard and leave only the gamepad connected.
This isn't a problem then. I constantly switch between 1 controller and the keyboard or 2 controllers and never had an issue before.
That shouldn't happen unless the ES scripts are missing or the permissions on that folder are broken and the pi user has no access to it. Since they worked up to a point and you didn't change/update any software on the RetroPie side, you might have accidentally changed some permissions for some folders where the configuration has been stored.
I figured out why it wasn't saving. I forgot I disabled auto-config in the RetroPie Setup. Problem #2 solved. I now can control the ES main menu as well as any libretro emulators.
I still have the initial issue which brought me here in the first place. As annoying as it was to have to press different buttons to do things in that emu-launch menu I was talking about, I realized that it was also negatively impacting any non lib-retro emulator when I was trying to launch a game in pisnes earlier today. The configurations there are all messed up as well.
Do you know where the configuration file(s) is (are) that would tie the [joystick].cfg and any of the menus with a blue screen and the grey box you make selections in?
Thanks for the help so far. :)
-
@used2berx said in Controls messed up in emulator launch menu and various emulators:
Do you know where the configuration file(s) is (are) that would tie the [joystick].cfg and any of the menus with a blue screen and the grey box you make selections in?
You mean the Runcommand ? The only configuration is the
disable_joystick
- if it's set to yes then it doesn't start the gamepad-to-keyboard script. Otherwise it will start on the 1st joystick (/dev/input/jsX
) detected. -
@mitu said in Controls messed up in emulator launch menu and various emulators:
@used2berx said in Controls messed up in emulator launch menu and various emulators:
Do you know where the configuration file(s) is (are) that would tie the [joystick].cfg and any of the menus with a blue screen and the grey box you make selections in?
You mean the Runcommand ? The only configuration is the
disable_joystick
- if it's set to yes then it doesn't start the gamepad-to-keyboard script. Otherwise it will start on the 1st joystick (/dev/input/jsX
) detected.No. What I mean is that the blue screen menus where you can select the default emulator for a system or an emulator for a specific rom is all jacked up. It doesn't adhere to the controller config that I set up in Emulationstation, where Circle should select an option. Instead, circle is "Up", and I have to press the Left Bumper to make a selection.
Prior to 4.4 this has never been an issue for me. I've been using the Pi for about 15 months now and never had this problem before.
This wacky control glitch effects any non-libretro emulators too.
This was my initial problem.
I've gotten everything else working again to where it was earlier today, but I still can't figure out how to get the blue menu screens and non-libretro emulators to use the EmulationStation controller config that I put in.
Yes, I realize that you have to manually configure non-libretro emulator configs, but that doesn't seem possible since this glitch is in the way of that.
I'm really more concerned with getting the blue menu screens to work right again.
-
@used2berx said in Controls messed up in emulator launch menu and various emulators:
No. What I mean is that the blue screen menus where you can select the default emulator for a system or an emulator for a specific rom is all jacked up [...]
That's the Runcommand launch menu. Since this affects the non-lr emulator, did you by any chance swapped the A and B buttons in the configuration ?
-
@mitu said in Controls messed up in emulator launch menu and various emulators:
@used2berx said in Controls messed up in emulator launch menu and various emulators:
No. What I mean is that the blue screen menus where you can select the default emulator for a system or an emulator for a specific rom is all jacked up [...]
That's the Runcommand launch menu. Since this affects the non-lr emulator, did you by any chance swapped the A and B buttons in the configuration ?
I'm not sure what you're asking me. Do you mean when I put in the controller inputs I want?
In the runcommand menus right now, it looks as though the Circle does UP, the Triangle does DOWN, Left Bumper makes a selection, Right Bumper backs out. This is much greater than a simple swap of A and B.
In EmulationStation, "A" is Circle, and "B" is Cross. "X" is Triangle, and "Y" is Square. This is how I've always set it up.
Before this problem started, the buttons did the exact same thing in the Runcommand menus that they do in EmulationStation. Now they are WAY different.
In fact, if I try to do anything in the "RASPI-CONFIG" menu, I can't select any option with any button/stick-direction press at all. I have to unplug and hard boot the Pi to even get back to EmulationStation. I used to be able to control that menu from my joystick too.
In short, I'm asking how I get the Runcommand menu to behave exactly the same as the EmulationStation menus like they did before.
There has to be some file that was bastardized somewhere that is altering the button presses that are outside of the purview of ES and RetroArch.
-
@used2berx Reset your controller configuration and re-configure it - https://retropie.org.uk/docs/EmulationStation/#es_inputcfg-edits
-
@mitu said in Controls messed up in emulator launch menu and various emulators:
@used2berx Reset your controller configuration and re-configure it - https://retropie.org.uk/docs/EmulationStation/#es_inputcfg-edits
Did that already. It didn't change anything. I've actually done that about 10 times now.
I added this to my previous post:
In EmulationStation, "A" is Circle, and "B" is Cross. "X" is Triangle, and "Y" is Square. This is how I've always set it up.
Whenever I did this before, the controls behaved exactly the same in the Runcommand menus. Now they're completely different. The config is fine in EmulationStation, and is as I've always had it.
EDIT: Here's my es_input.cfg
<?xml version="1.0"?> <inputList> <inputAction type="onfinish"> <command>/opt/retropie/supplementary/emulationstation/scripts/inputconfiguration.sh</command> </inputAction> <inputConfig type="joystick" deviceName="BDA PS3 Airflo wired controller" deviceGUID="03000000d62000001d57000010010000"> <input name="pageup" type="button" id="4" value="1"/> <input name="start" type="button" id="9" value="1"/> <input name="down" type="hat" id="0" value="4"/> <input name="pagedown" type="button" id="5" value="1"/> <input name="right" type="hat" id="0" value="2"/> <input name="select" type="button" id="8" value="1"/> <input name="left" type="hat" id="0" value="8"/> <input name="up" type="hat" id="0" value="1"/> <input name="a" type="button" id="2" value="1"/> <input name="b" type="button" id="1" value="1"/> <input name="x" type="button" id="3" value="1"/> <input name="y" type="button" id="0" value="1"/> </inputConfig> </inputList>
Essentially, what is happening in the Runcommand is this:
"a" becomes "4" instead of "2".
"b" becomes "5" instead of "1"
"up" becomes "1" instead of "hat id=0, value=1"
"down" becomes "3" instead of "hat id=0, value=4"They work just as the configuration above in EmulationStation and libretro core emulators though.
-
@mitu OMG.... WTF????
Last ditch effort here I'm sure wasn't going to do a damn thing....
I unplugged the controller I was using and plugged in the other IDENTICAL controller, and now it works fine in the Runcommand menu, as well as any configuration menus.
Anybody have any ideas why this would be?
Now I'm paranoid that when my brother gets this thing it's not going to control right with whatever controller he uses.
-
Use
jstest /dev/input/js0
on both controllers and see if the button presses are identical. Emulationstation and the libretro cores use SDL and might have a different view of the controller configuration. -
@mitu They're exactly the same.
Square = 0
Cross = 1
Circle = 2
Triangle = 3
L Bumper = 4
R Bumper = 5
L Trigger = 6
R Trigger = 7
Select = 8
Start = 9
Left Stick Press = 10
Right Stick Press = 11
Home = 12The sticks all behave identical too.
I wasn't expecting any variance here. Setting up either controller in EmulationStation makes both of them behave identically when navigating menus in ES or when using emulators. It is only when using anything in Runcommand (either to launch emus, or to configure retropie) that everything is done with alternate button presses).
I was wrong about non-libretro emulators. I didn't configure the
snes9x.cfg
file correctly earlier, and both controllers did the wrong things before. They both now work fine.So this is just a Runcommand issue, behaving completely different when using two identical controllers.
EDIT: Well I figured I'd reboot and try the first controller again now that I had swapped them to do that joystick test.
Now the other one works right too.
I HATE it when stuff fixes itself and there is absolutely zero reason for it to work because it could happen again at any time and who knows if it will self-correct next time. Definitely don't have the warm and fuzzies right now.
Nearly a whole day wasted here on a non-issue. Jeez....
Thanks for the help @mitu . Wish I could tell you I knew how I "fixed" it.
-
@gomisensei since the linux menus use the analog joystick, most likely your left analog stick is wonky. Once you go into one of those menus press each direction on the analog stick/sticks until you find the direction that makes it stop going haywire. If that works you need to replace your analog stick (not the plastic and rubber part you see but the analog stick under it)
-
@edmaul69 said in Controls messed up in emulator launch menu and various emulators:
@gomisensei since the linux menus use the analog joystick, most likely your left analog stick is wonky. Once you go into one of those menus press each direction on the analog stick/sticks until you find the direction that makes it stop going haywire. If that works you need to replace your analog stick (not the plastic and rubber part you see but the analog stick under it)
just backed up my RetroPie and /opt/retropie/configs, and installed a fresh image, now everything works fine.
Originally, everything worked fine, then I did a dist-upgrade, and it was all messed up. The controls worked fine in non-libretro emulators. Guess it's just one of those things...
-
I'm having a similar issue. I'm using an XBox 360 controller with 4.4 B+ and it works fine in all my emulators and the RetroArch menus but for whatever reason in system menus such as retropie-setup and pre-launch menus the button for Select is set to the Left Bumper (L1) instead of A. Which file sets the config for these menus?
-
@SartreFan please start a new topic with details.
Please do not post a support request without first reading and following the advice in https://retropie.org.uk/forum/topic/3/read-this-first
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.