OLD Gamepad Autoconfig Thread

RetroArch now handles gamepad autoconfig in a manner that makes it easier for end-users to contribute. Instead of baking the configurations into the android input source files and requiring a recompile, you can now create plaintext files, called ‘descriptors,’ that RetroArch will read whenever you plug in your gamepad.

/ Updated Instructions /

You can now create and save autoconfig files straight from the RetroArch GUI!

  • Load RetroArch
  • Change your autoconf directory to some folder you can read/write, most likely some place in the internal SD card
  • Go to input settings and RESET the binds for the port you are configuring
  • Bind All
  • Binding is sometimes too sensitive, so go to user # bindings and correct whatever is missing
  • Select save autoconf
  • Clean binds again and restart to verify

VID/PID saving are not implemented in the android input driver yet but we’ll try to add that in the future. In the meantime, just add them manually, if you can (you can use the utility attached to this post to find them.

If you’d like to share your autoconfig file(s), you can either send a pull request to the autoconfig repo on github: https://github.com/libretro/retroarch-joypad-autoconfig or post your descriptor contents here (enclosed in BBCode

 brackets, please) and we'll try to pull them in periodically.

I’m having trouble finding the debugging mode in the input options both in the RGUI and Android interface. I’m using the nightly from version 2014-12-21 if it helps.

This is only for nightlies right? I downloaded it from GPlay on my FireTV and I don’t see said directory. But I do remember seeing it on the nightlies. Would just making a directory work? I was gonna make a cfg specifically for DS3 on FireTV

Nightlies only (and the 1.0.0.4 beta when it rolls out soon). Older versions won’t recognize the files.

For FireTV or maybe other android devices with no hardware “Back” and “Menu” buttons if interested


input_device = "PlayStation3"
input_driver = "android"
input_b_btn = "96"
input_y_btn = "99"
input_select_btn = "188"
input_start_btn = "82"
input_up_btn = "19"
input_down_btn = "20"
input_left_btn = "21"
input_right_btn = "22"
input_a_btn = "97"
input_x_btn = "100"
input_l_btn = "102"
input_r_btn = "103"
input_l2_btn = "104"
input_r2_btn = "105"
input_l3_btn = "106"
input_r3_btn = "107"
input_l_x_plus_axis = "+0"
input_l_x_minus_axis = "-0"
input_l_y_plus_axis = "+1"
input_l_y_minus_axis = "-1"
input_r_x_plus_axis = "+2"
input_r_x_minus_axis = "-2"
input_r_y_plus_axis = "+3"
input_r_y_minus_axis = "-3"

input_b_btn_label = "Cross"
input_y_btn_label = "Square"
input_select_btn_label = "Select"
input_start_btn_label = "Start"
input_up_btn_label = "D-Pad Up"
input_down_btn_label = "D-Pad Down"
input_left_btn_label = "D-Pad Left"
input_right_btn_label = "D-Pad Right"
input_a_btn_label = "Circle"
input_x_btn_label = "Triangle"
input_l_btn_label = "L1"
input_r_btn_label = "R1"
input_l2_btn_label = "L2"
input_r2_btn_label = "L2"
input_l3_btn_label = "L3"
input_r3_btn_label = "R3"
input_l_x_plus_axis_label = "Left Analog X+"
input_l_x_minus_axis_label = "Left Analog X-"
input_l_y_plus_axis_label = "Left Analog Y+"
input_l_y_minus_axis_label = "Left Analog Y-"
input_r_x_plus_axis_label = "Right Analog X+"
input_r_x_minus_axis_label = "Right Analog X-"
input_r_y_plus_axis_label = "Right Analog Y+"
input_r_y_minus_axis_label = "Right Analog Y-"

Crude solution. Would rather have Start and Select do their own thing and the Bluetooh button be the Menu toggle

Won’t bother with Pull request since there’s very few devices that can use this

I have an Amazon Fire tv and I’m trying to autoconfig my Nyko PlayPad Pro controller because it doesn’t autoconfig correctly. But I can not locate the autoconfig directory? I am new to this app so can someone help. Thanks.

Only on nightlies

Only on nightlies[/quote]

I’m new so I don’t know what “only on nightlies” mean?

It means that the custom autoconfig files that are the focus of this thread only apply to the builds from here: http://buildbot.libretro.com/ or if you build it yourself. They don’t apply to v1.0.0.2, i.e. the version from the Google Play store.

Ok. Do you have to root your fire tv in order to find the autoconfig directory?

Not sure. You should be able to set it to whatever you want in the ‘paths’ settings menu via the in-game menu (known as RGUI). I’m not sure if you can get to that option from the Android touch menu or not.

Ok. I’ve downloaded the .apk files from the Jan. 10 nightly build and installed it on my Fire Tv box and then downloaded the lastest cores but it crashes while trying to play the game and I can never successfully get to the in-game menu. I tried the Jan. 10th and 6th builds and I get the same affect. Is there something I’m doing wrong?

Every core is crashing?

I’ve tried the Genesis Plus GX and it doesn’t crash but it also will not read my inputs. I was able the get the Welcome to RetroArch menu to pop up in-game but no inputs from my Fire Tv remote or my Nyko PlayPad Pro controller is doing anything. The only button click is registering is the home button.

Hmm. that’s unfortunate. They Nyko, at least, should be autodetected. Can you do any manual binding from the android touch menu with it?

Tried latest buildbot nightly apk on ADT-1 android tv with lollipop - there is no option at the bottom for debug output. Additionally, none of the controller bindings work in-game.

Tried the latest from nightly today. My wired xbox360 works great on the Android frontend - I can even configure the analog input - but once I start retroarch, the rgui doesn’t recognize it, and even in game I get nothing.

The controller does work with the build on play store (but the analog sticks won’t, just the d-pad)

Hi! Can you help me. i didnt find the input debugging option in last nighlty android version. BUT with my own custom keylayout i figured all buttons keys. All buttons works. But i cant get the d-pad to work. I use a samsung S5 with a Ipega 9017S bluetooth gamepad. The controoler name in bluetooth is " Bluetooth Gamepad " i still get the device to connect in retroarch last nightly. My file " Bluetooth_Gamepad.cfg is in autoconfig folder. All work except i cant find the d-pad keys. i tried 19,20,21,22 and h0up,h0down… none of that work. Using a Ps3 usb controller. i tried to map the ipega dpad while edit buttons in rgui. and it seem all directions up down left and right show 199 key for any of them. up=199 down=199 … Thanks for help . when my file will work perfectly i will give the info to you guys. Thanks

Thanks for help. with your tips i succeed making the cfg file. its working perfect. the Bind all thing… help me to find all d-pad keys. i had to uninstall retroarch and reinstall it. because if you change custom bids in retroarch menu ( not rgui) it seem to broke all control scheme with controllers. so dont use custom bid in retroarch menu only in rgui. my cfg work with all emulators. i tried 15 differents and you can customize different s custom keys with each emulator in retroarch rgui. very cool. thanks again for help. i have uploaded my file for retroarch future version and for people with the same controller than me. i have the ipega 9017s. i prefer this controller vs others because its very small. you have to put the file in data/data/com.retroarch/autoconfig. ( each cfg file for any co troller goes there) sorry for my bad english. have a great day.

i uploaded the file there:

https://www.zeta-uploader.com/1876999193

( i just edited the link it was not good, now its ok)

and i paste my file below:

input_device = “Bluetooth Gamepad” input_driver = “android” input_b_btn = “189” input_y_btn = “188” input_select_btn = “196” input_start_btn = “197” input_up_btn = “h0up” input_down_btn = “h0down” input_left_btn = “h0left” input_right_btn = “h0right” input_a_btn = “190” input_x_btn = “191” input_l_btn = “192” input_r_btn = “193” input_l_x_plus_axis = “+0” input_l_x_minus_axis = “-0” input_l_y_plus_axis = “+1” input_l_y_minus_axis = “-1” input_r_x_plus_axis = “+2” input_r_x_minus_axis = “-2” input_r_y_plus_axis = “-3” input_r_y_minus_axis = “+3”

Thanks for sharing your config! I’ll try to get it added to the built-in autoconfigs.

I’m glad you were able to get it working :slight_smile: