Xbox 360 wireless controller button mapping issue
-
Hello,
- Using retropie v4.1 on raspberry pie 3 model b, premade image from pie website, 2 DragonRise Inc joystick setups, xbox 360 wireless controller and receiver, new to linux and retropie and affiliated software
First I'll apologize to the people I will upset with this post - it's my first time using this/any forum.
I've recently set up a wireless xbox360 controller and the receiver on my system specifically for PSX. It connects just fine, and I have configured the buttons on the controller using the "Configure Input" from the menu on emulation station and they work fine in emulation station, as far as navigating the systems and menus. Not sure if there is a way to visually test the rest of the buttons at this point for correct mapping, other than in the command line for signal? They all work as far as sending input. Anyway...
When I attempt to play PSX roms, "B" becomes the left trigger, "A" becomes right trigger, and I haven't bothered figuring out the rest of the weird mapping. I just know it obviously doesn't match up with the auto "Configure Input" buttons I originally set.
I've tried disabling xboxdrv, re-enabling it, all with the same issue. I've reset the system each time and re-configured the controller with auto input config from the emulation station menu and no luck. I did notice a difference each time in the mapping assignments when I go into RetroArch set up menu and go to the input devices then input 3. The text changes for the name of device and the layout of the buttons looks correct for the auto config, even showing the actual names of the buttons. Still no luck.
I feel like at this point I've messed with so many configurations that I probably just screwed one little thing up and now I'm lost! Sorry, but I could really use some help. I've spent almost 15 hours just trying to set this controller up!
- xboxdrv has been updated via source
- xpad has been upated via source
- Start, Select, D-pad, and analog sticks all work as intended
- Technically, my xbox controller is the 3rd input device(2, starting with 0), however I changed the ordering specifically for psx to set input 2/3 as the 1st/2nd controllers.
** Edit: After some further digging and impatience, I double checked all the config files as much as I could. A couple things I've noticed: When testing the actual inputs via jstest in /dev/input, I only see js0, js1, js3, js4, mouse, and all the events. My xbox controller is seen as js3 which I thought was weird, but in any case all of the buttons matched correctly as i had originally figured. Am I right to assume the missing js2 is the keyboard I have plugged in? I tried unplugging it and rebooting the system but still no luck. I checked psx config file via the configuration editor in the retropie menu from emulation station. This is where I selected the 'order' of my gamepads so that I could use the xbox controller as player 1 in psx roms. My thought was maybe I use input index 3 instead of 2, however it only lists 4 possible inputs, none of which are the keyboard, and input 2 is labeled correctly as the xbox wireless controller. :( . Now I'm all confused but I'm hoping I'm close?
-
I am having the same exact problem on retropie 4.1
Have you tried trying the steps from this article? https://www.reddit.com/r/raspberry_pi/comments/2ps81c/retropie_controllers_simple_setup_guide/ -
I did try this, thanks! I looked it over again to verify that I followed the steps correctly and still no luck. There are some differences in the exact layout and location of the files, but I'm assuming it's because that particular post is over 2 years old and using an older version of retropie. Thanks though!
-
@gabewonders SOLVED!
So... As I suspected, my particular issue occurs when changing my xbox wireless controller to be player 1 instead of player 3 for a specific system. I did some more digging into this issue and found that you can manually change the inputs in retroarch while in a game instead of from the menu on emulation station. I suggest you try this as well - while in a game, it was showing that player 1 was successfully switched to the xbox gamepad, however it was using the button mappings from my original player 1 inputs (which is an arcade/joystick setup) and they don't match up with the button numbers on my xbox gamepad. So, I went to settings -> input and binded all the buttons as intended using the controller. Saving the .cfg file in the new version is located in a different menu - I went back to the first menu (when you first open Retroarch), then configurations, and saved the current config, which overwrites retroarch.cfg with the settings I changed. Doing it this way only overwrites the .cfg in the psx rom folder, so it doesn't affect any of my other systems when they load. I suggest making a backup of your .cfg file just in case. Hope this helps!
Does anyone know why this happens? Just curious!
-
Thanks Gerald. This worked for me! I'm assuming I'll have to do this for every additional controller I have connected, but it's not a big deal. I wonder why the main Configure Input on the emulation station doesn't work for the individual roms.
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.