Several pads of different kinds
-
Pi Model or other hardware: 3 B+
Power Supply used: 3A
RetroPie Version Used: 4.5.1
Built From: Pre made SD Image on RetroPie website
USB Devices connected: nothing more than two pads
Controller used: one SNES pad, one N64 pad
Error messages received: nothing special
Verbose log (if relevant): N/A
Emulator: All and GUI as well
How to replicate the problem:Hi,
When I set up a pad for a certain kind of console (say SNES) this pad and all pads of the same kind work well. So I can play to any game for this console. But when I set up another kind of pad after this (say a pad for N64), it works well but replaces the first kind of pad. Then the end result is that the second set up seems to apply to all the pad, even of the first kind.
To sum up, I can't figure out how to have N64 pads and SNES pads set up at the same time, in order to be able to play SNES and N64 games alternatively without having to set them up again and again because I hop from one console type to another.
I hope I made myself clear, thanks in advance!
-
@alien it's a shame no one was able to help you with this - I have the same problem when switching between snes and megadrive pads.
-
@alien Why don't you connect one pad at a time, depending on the system you play ? The configuration for each pad is kept and applied when the pad is connected/detected by the emulators.
-
@mitu Thanks for your reply. The behavior you are referring to is the one I expect, but unfortunately it is not the one that I face. What I have as a behavior is that only the latest pad setup is kept, forcing me to setup again when I switch console, even when ensuring that I have one kind of pad only plugged to the console at the same time.
Any idea, please?
-
@alien said in Several pads of different kinds:
Any idea, please?
Did you configure your gamepads in EmulationStation, as explained in Controller Configuration ? This should create configurations for each controller for both EmulationStation and the emulators.
One thing to check - are your controllers named similarly, despite the different layout ?
-
@djmoss , @Alien - I think that it's working for me, in the EmulationStation UI at least. (Version 4.7.1)
I've got 4 Sega Saturn/Genesis 6 button controllers plugged in and one XBox One controller. They all work fine to control the EmulationStation UI with the button configurations that I expect. In a RetroArch game, the Xbox controller is always player 1, and the Sega controllers can control player 2, etc.
Is that what you need? (Usually I end up unplugging the Xbox controller until I want joysticks.)
-
@alien About the setup... when EmulationStation sets up the controller configuration it creates a .cfg file in /opt/retropie/configs/all/retroarch/autoconfig/
The file has the "Device Name" at the top and the device name is also used as the name of the config file. If both of your pads have the same name then you'll only have one filename (.cfg and .bak) in /opt/retropie/configs/all/retroarch/autoconfig/
Have you looked in that folder to see what gets created after you do the input configuration?
-
@busywait What I suspect it's happening is that both controllers have the same name - there were a few reported cases here in the forums. The vendor took one off-the-shelf BT/USB chips and didn't bother to personalise its HID name, so both controllers - although with different button/joystick layouts - end up with the same configuration file, which obviously causes conflicts.
-
@mitu Were the Vendor Id and Product Id numbers also the same?
This example of a retroarch autoconfig file shows that they can be included in the file format:
https://github.com/libretro/retroarch-joypad-autoconfig/blob/master/dinput/SNES%20USB%20Gamepad.cfgCan RetroArch make use of that extra info if it's there? (And, sorry if this is going off-topic, or maybe it's helpful :D )
-
@busywait said in Several pads of different kinds:
@mitu Were the Vendor Id and Product Id numbers also the same?
Could me, but let's not get ahead of ourselves :).
-
@mitu Thanks men, that's exactly what occurs! Both my pad have the same name. What shall I do, then?
-
@mitu But no, they don't share their IDs. But maybe my other ones do... I'll check that later, when the first two are sorted up. Cheers!
-
@alien said in Several pads of different kinds:
@mitu Thanks men, that's exactly what occurs! Both my pad have the same name. What shall I do, then?
If they have different Vendor/Model IDs, then configure them one by one, then rename the auto-config files in
\\retropie\configs\all\retroarch-joypads\
- configure the SNES controller, then rename it's
.cfg
by adding-snes
to it (i.e.mycontroller.cfg
becomesmycontroller-snes.cfg
). - same for the N64 controller.
You should get the 2
.cfg
files for each controller. Edit each file and add 2 lines withinput_vendor_id = "x" input_product_id = "y"
x
andy
you can determine by runningcat /proc/bus/input/devices
and choosing the Vendor/Model numbers, then converting them decimal using http://www.binaryhexconverter.com/hex-to-decimal-converter. An example is on how the new lines should look is here.See if adding the vendor/model ids to the configuration file makes RetroArch pick the correct auto-configuration for the gamepads.
- configure the SNES controller, then rename it's
-
I tried this, unfortunately I lose the A button which is used to select options. Hence I can not play a game anymore. Weird... Any ideas, please?
-
I mean: I lose it both on SNES pads and on N64 pads...
-
You mean, in game or in EmulationStation ?
-
In EmulationStation, which means I can not select an emulator or a game anymore... :-(
-
The last configured controller should work in EmulationStation, since its configuration is kept. Didn't this work before ?
-
@mitu Yes, it worked before but since I did the advised setup I have this strange behavior.
I've just realized that the A (selection) button works in the menu of EmulationStation which appears with start button. But it does not select an emulator (when this menu is closed): when on the home page, the A button only skips to the next emulator, so I can not enter in the emulator game selection menu. I'm lost...
-
Save the
.cfg
files you created, then reset your input configuration from RetroPie-Setup -> Configuration/Tools -> Emulationstation. After you reset the configuration, configure just the SNES pad, make sure you can navigate and operate EmulationStation. Copy back (to their original location) the.cfg
files and then start an emulator and see if the SNES controller works.
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.