XBOX 360 Wireless Controller - Does anyone have a CFG file to share?

Any chance someone could share a complete retroarch.cfg file?

Looking to see how this all works on Windows running a wireless XBOX 360 controller.

It seems like it works, but the L Analog stick does not respond properly, super fast response which can’t seem to be slowed down by any means.

Retropie (non-windows) is all over the place, along with XBOX ONE, but not XBOX 360 wireless on Windows.

Any pointers would be appreciated.

Certainly not trying to make anything complicated, but I can tell you this controller setup which i have spent countless hours on continues to baffle me. RetroArch is such a great software package, but the setup/configuration of controllers is very very painful.

I tried what you said (good suggestion) 1.3.6 downloaded, fresh copy with all cores updates to latest version pointed it at the same test game and loaded the same core Sticks and D-Pad do not work at all on either Xbox controller, yet the buttons seem to work. I made no change to anything. Simply downloaded and ran the test game as suggested.

Not sure what to say, this is a standard Windows 6 x64 machine with Microsoft 360 wireless controllers with Microsoft standard dongle – still does not work with vanilla software.

BTW, the actual setup I have includes HyperSpin, Rocketlauncher which I thought may be introducing issues. But apparently not given the vanilla test also failed.

You may need to go to the online updater and update the autoconfig profiles.

good suggestion - i just updated everything including autoconfig - no go - same issues

i don’t think this is an autoconfig issue - since i can get player1 to work 100% w/o using autoconfig

rather this is an issue (i think) with two identical controllers in retroarch and the system’s inability to manually set player2 in a unique way

i wonder if retroarch is confused with the other arcade style controls (all HID joystick and mouse)? 4 ultrastick u360 ultimarc, 2 ultimarc aimtrak, retro atari wired joystick, etc. but how could this be an issue w those? especially since they all work 100% in other applications like mame?

can one of you guys (with 2 xbox wireless plugged in) send over a save new cfg so i see how this thing is getting setup correctly on your end and compare?

Turns out this problem is a continuation from the past where 64-bit version of RetroArch fails to work properly with dual Xbox 360 wireless controllers. The 32-bit version works just fine.

I stumbled across this post late last night and did some testing this morning to confirm the prior findings. https://libretro.com/forums/showthread.php?t=1432

Using 32-bit v1.3.6 worked just fine.

Both Xbox 360 Wireless controllers configured and working OK.

  1. Disabled autoconfig (not fan of turning this on)

SETTINGS - INPUT

Autoconfig Enable: OFF

  1. SETTINGS - DRIVER

Input Driver: dinput Joypad Driver: xinput

This translates in your CFG to the following:

input_driver = “dinput” input_joypad_driver = “xinput”

  1. Enabled dpad mode 1 for both controllers - this tells RetroArch to use the left analog stick as a dpad.

input_player1_analog_dpad_mode = “1” input_player2_analog_dpad_mode = “1”

(0=no remapping, 1=left analog stick, 2=right analog stick)

  1. For reference, here is my CFG file with specific settings for P1 and P2 respectively

– input_player1_b = “z” input_player1_b_btn = “2” input_player1_b_axis = “nul” input_player1_select = “rshift” input_player1_select_btn = “7” input_player1_select_axis = “nul” input_player1_start = “enter” input_player1_start_btn = “6” input_player1_start_axis = “nul” input_player1_up = “up” input_player1_up_btn = “h0up” input_player1_up_axis = “nul” input_player1_down = “down” input_player1_down_btn = “h0down” input_player1_down_axis = “nul” input_player1_left = “left” input_player1_left_btn = “h0left” input_player1_left_axis = “nul” input_player1_right = “right” input_player1_right_btn = “h0right” input_player1_right_axis = “nul” input_player1_a = “x” input_player1_a_btn = “0” input_player1_a_axis = “nul” input_player1_l = “q” input_player1_l_btn = “nul” input_player1_l_axis = “+4” input_player1_r = “w” input_player1_r_btn = “nul” input_player1_r_axis = “+5” input_player1_l2 = “nul” input_player1_l2_btn = “4” input_player1_l2_axis = “nul” input_player1_l_x_plus = “nul” input_player1_l_x_plus_btn = “nul” input_player1_l_x_plus_axis = “+0” input_player1_l_x_minus = “nul” input_player1_l_x_minus_btn = “nul” input_player1_l_x_minus_axis = “-0” input_player1_l_y_plus = “nul” input_player1_l_y_plus_btn = “nul” input_player1_l_y_plus_axis = “-1” input_player1_l_y_minus = “nul” input_player1_l_y_minus_btn = “nul” input_player1_l_y_minus_axis = “+1” input_player1_r_x_plus = “nul” input_player1_r_x_plus_btn = “nul” input_player1_r_x_plus_axis = “+2” input_player1_r_x_minus = “nul” input_player1_r_x_minus_btn = “nul” input_player1_r_x_minus_axis = “-2” input_player1_r_y_plus = “nul” input_player1_r_y_plus_btn = “nul” input_player1_r_y_plus_axis = “-3” input_player1_r_y_minus = “nul” input_player1_r_y_minus_btn = “nul” input_player1_r_y_minus_axis = “+3”

input_player2_b = “nul” input_player2_b_btn = “2” input_player2_b_axis = “nul” input_player2_select = “nul” input_player2_select_btn = “7” input_player2_select_axis = “nul” input_player2_start = “nul” input_player2_start_btn = “6” input_player2_start_axis = “nul” input_player2_up = “nul” input_player2_up_btn = “h0up” input_player2_up_axis = “nul” input_player2_down = “nul” input_player2_down_btn = “h0down” input_player2_down_axis = “nul” input_player2_left = “nul” input_player2_left_btn = “h0left” input_player2_left_axis = “nul” input_player2_right = “nul” input_player2_right_btn = “h0right” input_player2_right_axis = “nul” input_player2_a = “nul” input_player2_a_btn = “0” input_player2_a_axis = “nul” input_player2_l = “nul” input_player2_l_btn = “nul” input_player2_l_axis = “+4” input_player2_r = “nul” input_player2_r_btn = “nul” input_player2_r_axis = “+5” input_player2_l2 = “nul” input_player2_l2_btn = “4” input_player2_l2_axis = “nul” input_player2_l_x_plus = “nul” input_player2_l_x_plus_btn = “nul” input_player2_l_x_plus_axis = “+0” input_player2_l_x_minus = “nul” input_player2_l_x_minus_btn = “nul” input_player2_l_x_minus_axis = “-0” input_player2_l_y_plus = “nul” input_player2_l_y_plus_btn = “nul” input_player2_l_y_plus_axis = “-1” input_player2_l_y_minus = “nul” input_player2_l_y_minus_btn = “nul” input_player2_l_y_minus_axis = “+1” input_player2_r_x_plus = “nul” input_player2_r_x_plus_btn = “nul” input_player2_r_x_plus_axis = “+2” input_player2_r_x_minus = “nul” input_player2_r_x_minus_btn = “nul” input_player2_r_x_minus_axis = “-2” input_player2_r_y_plus = “nul” input_player2_r_y_plus_btn = “nul” input_player2_r_y_plus_axis = “-3” input_player2_r_y_minus = “nul” input_player2_r_y_minus_btn = “nul” input_player2_r_y_minus_axis = “+3”

In summary, running 32-bit enabled dual Xbox 360 wireless controllers works just fine using 32-bit, and also resolved my original problem of super fast response from the left controller. Now the left analog works normal speed.

However, all this said, one thing still remains.

I would like to get the D-Pad to ALWAYS work like my left analog stick. Seems that most games never used D-pad, yet I want to have this control mapped ‘in addition’ to the normal left analog. Even when I tweek “dpad_mode” as shown above to say “0”, it still has no D-pad functionality during game play.

You guys have insight into this?

Turns out the game I was testing did not use D-Pad during game play. D-Pad works just fine!

I just discovered that Joy2Key was the original culprit of the jumpy left analog - had a mapping in there for POV directions, I cleared them and all is well. I even retested in both 32 and 64 bit – both work just fine. Still using manual config versus autoconfig.

Thanks guys for working this through and helping show me different ways to look at this problem!

Nice to see it all working. :slight_smile:

HI, sorry if this is not the place… but, I also am using a wireless 360 controller to use here and was wondering about the config files and if this above works, how do I apply it (new here)

I have a few questions…

  1. Can I get both left hand controls working the same ? The D-PAD works great for some games but, the stick works better for other games. I would like them to be mirrored.

1.1 can this be set per emulator ? For Example, if I play a NES game, I notice it only uses the D-PAD but, if I play a SNES game, it uses both, so good but, can I set it to on the NES to use both and let it go default for it.

  1. Is it possible to program pushing “START” and “SELECT” for like 2 seconds to be the same as selecting EXIT in the menu to exit the game I am in ?

Edit: 2 was easier than I thought, just went into HOTKEYS, and found the Exit option and hit both buttons when asked and now when I start a game, I can hit START AND SELECT to exit RetroArch and go back to Emulator Station.

(I am using EmulationStation as the front end).

Thanks in advance !

I have a xbox 360 and xbox one wireless controller. RetroArch seems to hate this combination. If I have only the xbox one controller plugged in or only the 360 controller plugged in it works great. The Xbox one controller device index would show as XBOX One Controller (User) and the 360 controller index shows as XInput Controller (User 1)(#1)

Once they are both plugged in… its chaos. The two controllers literally reverse device indexes. The only way to make the xbox 360 controller player one is to set as Xbox One Controller (User 2) (#1) and the xbox one controller to Xinput Controller (User 1) (#1)

Then when the xbox one controller auto powers off… The 360 controller stops working and I need to press F1, go back into settings and switch back to Xinput Controller…

I have no idea how to fix this. It feels like the only way to make this actually work is to never play 2 players. I need my 360 controller as player 1. I use rocketlauncher with retroarch. The exit emulator key mappings will not function from an xbox one controller. Only xbox 360.

Is there a way for me to manually map everything including which controller is used and completely disable every aspect of the auto config?

Sure, just disable autoconfig and then go to settings > input and map your pads. I’m not sure if that will solve your issue, but it will make it stop trying to autoconfigure anything.

As we are talking about a 360 controller config… Does anyone know if I can use a 2nd controller and will it save as that always in 2nd place ?

Or is it one of those First controller connected is 1 and 2nd is number 2 type thing. If yes, how does it handle if RetroARch is opened while both controllers are on?

I am using a black controller, I was thinking about using that for player one and get a white one for player 2. There is a few games I would like to have a 2nd player on and just want to know how it all will work.

Does it lock the current controller always to player 1 ?