RetroPie forum home
    • Recent
    • Tags
    • Popular
    • Home
    • Docs
    • Register
    • Login
    Please do not post a support request without first reading and following the advice in https://retropie.org.uk/forum/topic/3/read-this-first

    Xbox 360 controller and Emulators

    Scheduled Pinned Locked Moved Help and Support
    16 Posts 5 Posters 4.0k Views
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • R
      rdm190
      last edited by

      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.

      BuZzB 1 Reply Last reply Reply Quote 0
      • BuZzB
        BuZz administrators @rdm190
        last edited by

        @rdm190 you can access the paths over sftp or samba via configs share. Check wiki for details

        To help us help you - please make sure you read the sticky topics before posting - https://retropie.org.uk/forum/topic/3/read-this-first

        R 1 Reply Last reply Reply Quote 0
        • R
          rdm190 @BuZz
          last edited by

          This post is deleted!
          1 Reply Last reply Reply Quote 0
          • R
            rdm190 @BuZz
            last edited by

            @BuZz

            # 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"
            
            1 Reply Last reply Reply Quote 0
            • BuZzB
              BuZz administrators
              last edited by

              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.

              To help us help you - please make sure you read the sticky topics before posting - https://retropie.org.uk/forum/topic/3/read-this-first

              R 1 Reply Last reply Reply Quote 0
              • R
                rdm190 @BuZz
                last edited by

                @BuZz

                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).

                1 Reply Last reply Reply Quote 0
                • BuZzB
                  BuZz administrators
                  last edited by

                  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>
                  

                  To help us help you - please make sure you read the sticky topics before posting - https://retropie.org.uk/forum/topic/3/read-this-first

                  R 2 Replies Last reply Reply Quote 0
                  • R
                    rdm190 @BuZz
                    last edited by

                    @BuZz

                    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.

                    1 Reply Last reply Reply Quote 0
                    • R
                      rdm190 @BuZz
                      last edited by rdm190

                      @BuZz

                      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
                      reboot

                      Nothing, 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

                      herb_fargusH 1 Reply Last reply Reply Quote 0
                      • herb_fargusH
                        herb_fargus administrators @rdm190
                        last edited by herb_fargus

                        @rdm190 did you reconfigure your controller after enabling xboxdrv? (And after a reboot)

                        If you read the documentation it will answer 99% of your questions: https://retropie.org.uk/docs/

                        Also if you want a solution to your problems read this first: https://retropie.org.uk/forum/topic/3/read-this-first

                        R 1 Reply Last reply Reply Quote 0
                        • R
                          rdm190 @herb_fargus
                          last edited by

                          @herb_fargus

                          yes, sorry, I edited the original post.

                          1 Reply Last reply Reply Quote 0
                          • R
                            rdm190
                            last edited by

                            Anyone? : (

                            Guess it's back to searching and fiddling.

                            1 Reply Last reply Reply Quote 0
                            • mediamogulM
                              mediamogul Global Moderator
                              last edited by mediamogul

                              @rdm190

                              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.

                              RetroPie v4.5 • RPi3 Model B • 5.1V 2.5A PSU • 16GB SanDisk microSD • 512GB External Drive

                              1 Reply Last reply Reply Quote 0
                              • First post
                                Last post

                              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.