Xbox 360 controller and Emulators
-
Afternoon everyone,
I apologize for any ignorance, I have done quite a bit of searching on this, just can't seem to find a cohesive answer to my issue.
I just set up a brand new Retro Pie. I am using a wired, generic Xbox 360 controller. I have enabled the controller driver for retropie, then configured all the buttons via the auto setup.
Now the issue, I have no controller function in emulators (the yellow text flashes as emulators start indicates "no controller assigned" or something to that effect).
I have read that configuring the controller in retropie should have automaticlly configured in retroarch, and thus, I should have controllers in the emulators.
Anyone, that can help, or point me to help, I would really appreciate it.
Cheers,
Ryan
-
Did you change anything else on the system ?
What are the contents of
/opt/retropie/configs/all/emulationstation
and/opt/retropie/configs/retroarch-joypads
- filenames and file contents please (all .cfg files at least)Please style any configs in a code block on the forum or use a pastebin site.
-
Is it any specific emulator?
Also, do you have any other types of controllers to test ?
-
BuZz - Again, apologies for my ignorance, what is the best way to get a transcript of the code within that file to the forum? I have not used Linux in a decade and a half, so I am feeling quite stupid.
Drakaen391 - I configured a USB keyboard, and it worked fine within the emulators.
-
@rdm190 you can access the paths over sftp or samba via configs share. Check wiki for details
-
This post is deleted! -
# es_input.cfg <?xml version="1.0"?> <inputList> <inputConfig type="keyboard" deviceName="Keyboard" deviceGUID="-1"> <input name="a" type="key" id="1073742054" value="1" /> <input name="b" type="key" id="1073742052" value="1" /> <input name="down" type="key" id="1073741905" value="1" /> <input name="left" type="key" id="1073741904" value="1" /> <input name="right" type="key" id="1073741903" value="1" /> <input name="select" type="key" id="50" value="1" /> <input name="start" type="key" id="49" value="1" /> <input name="up" type="key" id="1073741906" value="1" /> </inputConfig> <inputConfig type="joystick" deviceName="Generic X-Box pad" deviceGUID="030000005e040000a002000000010000"> <input name="a" type="button" id="1" value="1" /> <input name="b" type="button" id="0" value="1" /> <input name="down" type="hat" id="0" value="4" /> <input name="left" type="hat" id="0" value="8" /> <input name="leftanalogdown" type="axis" id="1" value="1" /> <input name="leftanalogleft" type="axis" id="0" value="-1" /> <input name="leftanalogright" type="axis" id="0" value="1" /> <input name="leftanalogup" type="axis" id="1" value="-1" /> <input name="leftbottom" type="button" id="4" value="1" /> <input name="leftthumb" type="button" id="9" value="1" /> <input name="lefttop" type="axis" id="2" value="1" /> <input name="right" type="hat" id="0" value="2" /> <input name="rightanalogdown" type="axis" id="4" value="1" /> <input name="rightanalogleft" type="axis" id="3" value="-1" /> <input name="rightanalogright" type="axis" id="3" value="1" /> <input name="rightanalogup" type="axis" id="4" value="-1" /> <input name="rightbottom" type="button" id="5" value="1" /> <input name="rightthumb" type="button" id="10" value="1" /> <input name="select" type="button" id="6" value="1" /> <input name="start" type="button" id="7" value="1" /> <input name="up" type="hat" id="0" value="1" /> <input name="x" type="button" id="3" value="1" /> <input name="y" type="button" id="2" value="1" /> </inputConfig> </inputList>
# es_settings.cfg <?xml version="1.0"?> <bool name="BackgroundJoystickInput" value="false" /> <bool name="DrawFramerate" value="false" /> <bool name="EnableSounds" value="true" /> <bool name="ParseGamelistOnly" value="false" /> <bool name="QuickSystemSelect" value="true" /> <bool name="SaveGamelistsOnExit" value="true" /> <bool name="ScrapeRatings" value="true" /> <bool name="ShowHelpPrompts" value="true" /> <int name="ScraperResizeHeight" value="0" /> <int name="ScraperResizeWidth" value="400" /> <int name="ScreenSaverTime" value="300000" /> <string name="Scraper" value="TheGamesDB" /> <string name="ScreenSaverBehavior" value="dim" /> <string name="ThemeSet" value="carbon" /> <string name="TransitionStyle" value="fade" />
# es_temporaryinput.cfg <?xml version="1.0"?> <inputList> <inputConfig type="joystick" deviceName="Generic X-Box pad" deviceGUID="030000005e040000a002000000010000"> <input name="a" type="axis" id="5" value="1" /> <input name="b" type="axis" id="5" value="-1" /> <input name="down" type="hat" id="0" value="1" /> <input name="left" type="button" id="1" value="1" /> <input name="leftthumb" type="hat" id="0" value="2" /> <input name="lefttop" type="axis" id="4" value="1" /> <input name="right" type="button" id="7" value="1" /> <input name="rightbottom" type="axis" id="0" value="-1" /> <input name="rightthumb" type="hat" id="0" value="8" /> <input name="righttop" type="axis" id="1" value="1" /> <input name="select" type="button" id="0" value="1" /> <input name="up" type="hat" id="0" value="4" /> <input name="x" type="axis" id="2" value="-1" /> <input name="y" type="axis" id="2" value="1" /> </inputConfig> </inputList>
#GenericX-Boxpad.cfg input_device = "Generic X-Box pad" input_driver = "udev" input_l3_btn = "h0leftthumb" input_r_axis = "-0" input_save_state_axis = "-0" input_l2_axis = "+4" input_up_btn = "h0up" input_a_axis = "+5" input_b_axis = "-5" input_reset_axis = "-5" input_down_btn = "h0down" input_r2_axis = "+1" input_r3_btn = "h0rightthumb" input_right_btn = "7" input_state_slot_increase_btn = "7" input_x_axis = "-2" input_menu_toggle_axis = "-2" input_select_btn = "0" input_enable_hotkey_btn = "0" input_y_axis = "+2" input_left_btn = "1" input_state_slot_decrease_btn = "1"
-
your es_input.cfg is missing important configuration lines - you must have removed it.
You need to reinstall ES for it to restore the config, and then you can reconfigure your controller in ES and it will set up retroarch etc.
-
I will try as you suggest, but I have not altered any configuration file, except to modify the hdmi setting to allow for sound (I had none).
-
By default es_config.cfg has additional configuration lines in it - I'm not sure how, but it looks as though it got removed - I don't think this can happen without adjusting it yourself. the default configuration looks like
<?xml version="1.0"?> <inputList> <inputAction type="onfinish"> <command>/opt/retropie/supplementary/emulationstation/scripts/inputconfiguration.sh</command> </inputAction> </inputList>
-
Should I just format the SD and start from scratch? I really haven't done too much work, would not take long to just start over.
-
Did a format and reimage, then:
Setup the keyboard on initial startup
Connected to Wifi
Enabled the Xbox driver in the setup menu
set the controller number to 1
reboot
setup the xbox pad in retropie
rebootNothing, Xbox controller does not work in emulators. The yellow text flashes still indicate "Xbox generic controller not setup (something to that effect indicating it is not working).
here is the es_input.cfg from this new install
#es_input.cfg <?xml version="1.0"?> <inputList> <inputAction type="onfinish"> <command>/opt/retropie/supplementary/emulationstation/scripts/inputconfiguration.sh</command> </inputAction> <inputConfig type="keyboard" deviceName="Keyboard"> <input name="start" type="key" id="49" value="1"/> <input name="up" type="key" id="1073741906" value="1"/> <input name="a" type="key" id="1073742054" value="1"/> <input name="b" type="key" id="1073742052" value="1"/> <input name="down" type="key" id="1073741905" value="1"/> <input name="right" type="key" id="1073741903" value="1"/> <input name="select" type="key" id="50" value="1"/> <input name="left" type="key" id="1073741904" value="1"/> </inputConfig> <inputConfig type="joystick" deviceName="Generic X-Box pad"> <input name="pagedown" type="button" id="5" value="1"/> <input name="start" type="button" id="7" value="1"/> <input name="pageup" type="button" id="4" value="1"/> <input name="up" type="hat" id="0" value="1"/> <input name="a" type="button" id="1" value="1"/> <input name="b" type="button" id="0" value="1"/> <input name="down" type="hat" id="0" value="4"/> <input name="right" type="hat" id="0" value="2"/> <input name="select" type="button" id="6" value="1"/> <input name="left" type="hat" id="0" value="8"/> </inputConfig> </inputList>
I am at a loss here, I have put far more time into getting this controller working than I ever imagined.
-Ryan
-
@rdm190 did you reconfigure your controller after enabling xboxdrv? (And after a reboot)
-
yes, sorry, I edited the original post.
-
Anyone? : (
Guess it's back to searching and fiddling.
-
This problem really seems to defy all conventional wisdom, but before you give up, we don't we try mapping the controller directly from inside the RetroArch gui. If you're up for it, go to the RetroPie menu in Emulation Station and launch the 'RetroArch' listing. From there, go to 'Settings' and then 'Configuration'. Enable 'Save Configuration on Exit' and then work your way back and quit RetroArch. When back at Emulation Station, launch RetroArch again and go back to 'Settings'. This time, go to input and finally, 'Input User 1 Binds'.
Make sure the 'User 1 Device Index' is set to your controller and then look for a listing named 'User 1 Bind All'. Select that and you will then be prompted to move through a mapping process very similar to what was seen in Emulation Station. When you finish, work your way back to the first menu in RetroArch and select 'Save Current Config' just to be safe and then quit RetroArch.
Now, all that is left is to test a RetroArch emulator to see if the controller and mappings are recognized. Two things to remember, if this does work, is that it is simply sidestepping whatever mapping problem you are experiencing in Emulation Station and not resolving it. Also, these mappings are obviously only for RetroArch emulators. If it still doesn't work, there are a few more things we can try, but it'll involve a lot of backseat troubleshooting, as there is no obvious reason why you're experiencing these issues. In any event, I wish you luck.
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.