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

    XB1 pad works with ES but not games or Retroarch.

    Scheduled Pinned Locked Moved Help and Support
    controlsretropieretroarch
    22 Posts 2 Posters 1.7k 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.
    • H
      hallda12
      last edited by

      @mitu The Keyboard has been disconnected since the initial setup.

      1 Reply Last reply Reply Quote 0
      • mituM
        mitu Global Moderator
        last edited by

        I see. Would you be willing to test out the xpadneo driver from https://github.com/atar-axis/xpadneo ? The installation is pretty straightforward

        Download the Repository to your local machine git clone https://github.com/atar-axis/xpadneo.git
        cd xpadneo
        Run ./install.sh
        Done!

        Reboot, then re-pair again the Bluetooth device and see afterwards if the configuration in ES and games are running ok.

        If you don't feel so adventurous, there is another thing you can try - modify the Xbox Wireless Controller.cfg file that you showed in your post in the screenshot and replace

        input_driver = udev
        

        with

        input_driver = sdl
        

        You don't need to restart to test this, just launch a game after the modification and see if it works.

        1 Reply Last reply Reply Quote 0
        • H
          hallda12
          last edited by

          @mitu Yes i will try this. Im at work atm so ill try it later.

          On a side note; After reporting my issue i tried removing and reinstalling the xpad driver however it would always fail at the install. I then updated the retro setup script and the driver installed fine. However it didn't fix my controller issue :P

          mituM 1 Reply Last reply Reply Quote 0
          • mituM
            mitu Global Moderator @hallda12
            last edited by

            @hallda12 Ok, try the 2nd approach first before installing the xpadneo driver, it's simpler and you can test it faster.

            1 Reply Last reply Reply Quote 0
            • H
              hallda12
              last edited by

              @mitu Will do. Do you think the problem might be because my controller is one of the latest mdoels? (coming from the XB1 X)

              mituM 1 Reply Last reply Reply Quote 0
              • mituM
                mitu Global Moderator @hallda12
                last edited by

                @hallda12 Could be - one way to check it out is to know the VID:PID combination and to check if it's supported by the xpad driver. When you get to your PI, you can run

                cat /proc/bus/input/devices
                

                to get this information.

                1 Reply Last reply Reply Quote 0
                • H
                  hallda12
                  last edited by

                  @mitu Ok so i tried changing the input_driver to sdl but that didnt appear to work.

                  I then installed the xpadneo and re configured my bluetooth controller. This also doesnt appear to have worked. I did notice however when i mapped the controller through Emulationstation it assigned all the buttons with different numbers to before. The highest number was 8 i think where as before it was 15.

                  I also assumed that after installing the xpadneo driver with ./install.sh that retropie would automatically assign in to my controller? Or should i have assigned it myself in a setting somewhere?

                  The weird thing is; with all the methods i have tried so far, if i mash all the buttons at once i suddenly get a response in retroarch. my A button works so i can select menues however my up and down buttons are erratic. Like i could press up/down once and it would jump like 4 menues either way.

                  mituM 1 Reply Last reply Reply Quote 0
                  • mituM
                    mitu Global Moderator @hallda12
                    last edited by

                    @hallda12 said in XB1 pad works with ES but not games or Retroarch.:

                    I also assumed that after installing the xpadneo driver with ./install.sh that retropie would automatically assign in to my controller? Or should i have assigned it myself in a setting somewhere?

                    No, the installation will only add the new driver and make it work with the device (hopefully), you'd still be needing to pair the new device and re-configure your input in Emulationstation.

                    A button works so i can select menues however my up and down buttons are erratic [...]

                    So the driver is not suited for your controller. You should uninstall it (there's an uninstall.sh script in the source folder you downloaded from Github).

                    Can you run the command I mentioned earlier, to see the identification of the controller and check if xpad is used for it ?

                    1 Reply Last reply Reply Quote 0
                    • H
                      hallda12
                      last edited by

                      I paired the controller and re-configured it as if it was the first time.

                      Even before i installed the xpadneo driver it would do that though.

                      Ill try checking the identification next.

                      1 Reply Last reply Reply Quote 0
                      • H
                        hallda12
                        last edited by

                        @mitu This is with the xpadneo driver

                        pi@retropie:~ $ cat /proc/bus/input/devices
                        I: Bus=0005 Vendor=045e Product=02fd Version=1130
                        N: Name="Xbox Wireless Controller"
                        P: Phys=b8:27:eb:9f:31:27
                        S: Sysfs=/devices/platform/soc/3f201000.serial/tty/ttyAMA0/hci0/hci0:11/0005:045      E:02FD.0008/input/input9
                        U: Uniq=5c:ba:37:47:3a:ba
                        H: Handlers=js0 event0
                        B: PROP=0
                        B: EV=20001b
                        B: KEY=7cdb0000 0 0 0 0 0 0 0 0 0
                        B: ABS=3003f
                        B: MSC=10
                        B: FF=1 7030000 0 0
                        
                        pi@retropie:~ $
                        
                        mituM 1 Reply Last reply Reply Quote 0
                        • mituM
                          mitu Global Moderator @hallda12
                          last edited by mitu

                          @hallda12 It doesn't matter which driver is installed. The VendorID is 045e and the ProductID is 02fd. I don't see this combination registered by the xpad driver. However, it should be supported by the xpadneo driver (https://github.com/atar-axis/xpadneo/blob/8ea943d0e94f9075f9131ebb7ee8e5ebe5007008/hid-xpadneo/src/hid-xpadneo.c#L1270).
                          Your controller is actually a Xbox One S model (terrible naming by Microsoft), which I don't think is handled by xpad anyway.

                          Can you try running

                          udevadm info -q all /dev/input/event0
                          lsmod | grep xpad
                          

                          to see if the xpadneo has been registered for the device and the driver is loaded ?

                          1 Reply Last reply Reply Quote 0
                          • H
                            hallda12
                            last edited by

                            @mitu

                            pi@retropie:~ $ udevadm info -q all /dev/input/event0
                            P: /devices/platform/soc/3f201000.serial/tty/ttyAMA0/hci0/hci0:11/0005:045E:02FD.0008/input/input9/event0
                            N: input/event0
                            E: DEVNAME=/dev/input/event0
                            E: DEVPATH=/devices/platform/soc/3f201000.serial/tty/ttyAMA0/hci0/hci0:11/0005:045E:02FD.0008/input/input9/event0
                            E: ID_BUS=bluetooth
                            E: ID_FOR_SEAT=input-platform-soc
                            E: ID_INPUT=1
                            E: ID_INPUT_JOYSTICK=1
                            E: ID_PATH=platform-soc
                            E: ID_PATH_TAG=platform-soc
                            E: LIBINPUT_DEVICE_GROUP=5/45e/2fd/1130:b8:27:eb:9f:31:27
                            E: MAJOR=13
                            E: MINOR=64
                            E: SUBSYSTEM=input
                            E: TAGS=:seat:uaccess:
                            E: USEC_INITIALIZED=13679312933
                            
                            pi@retropie:~ $ lsmod | grep xpad
                            hid_xpadneo            20480  0
                            ff_memless             16384  1 hid_xpadneo
                            pi@retropie:~ $
                            
                            1 Reply Last reply Reply Quote 0
                            • mituM
                              mitu Global Moderator
                              last edited by

                              OK, so the driver is installed and loaded.
                              Can you try re-setting again your input configuration - like explained here - , remove all paired Bluetooth devices, pair it again and then re-try configuring the controller ?

                              1 Reply Last reply Reply Quote 0
                              • H
                                hallda12
                                last edited by

                                @mitu Ok this is getting weird. Ive reset the input and reconfigured bluetooth. At the point of mapping the Left trigger it maps, pauses and then skips the Right trigger leaving it "Un-definded". I then have to map the rest of my buttons and then go back up so i can map Right trigger. BTW this has been happening since the beginning but i never thought this might cause an issue as by the time I'm finished all the buttons seem to be mapped to a corresponding number.

                                So i now go into retroarch and the controller appears un-responsive like usuall until i mash all the buttons. I then realize i can fully use all of the menu by Holding left trigger. As soon as i let go i am unable to use the menu. So as long as im holding L2 my controller works haha

                                Any ideas whats happening?

                                mituM 1 Reply Last reply Reply Quote 0
                                • mituM
                                  mitu Global Moderator @hallda12
                                  last edited by

                                  @hallda12 said in XB1 pad works with ES but not games or Retroarch.:

                                  Any ideas whats happening?

                                  Beats me. But I would repeat the re-configuration, skip the triggers and see if you get a usable configuration.

                                  1 Reply Last reply Reply Quote 0
                                  • H
                                    hallda12
                                    last edited by

                                    @mitu Just tried it and it works perfect in every emulator. Even the hotkeys. Who would of thought that the triggers would cause so many problems.

                                    Im still unsure where the issue lies. Maybe i have a faulty controller? Seems to work my xbox fine and maybe the pie is ultra sensitive to how the pad responds.

                                    mituM 1 Reply Last reply Reply Quote 0
                                    • mituM
                                      mitu Global Moderator @hallda12
                                      last edited by

                                      @hallda12 What I think it might happen is that the triggers are actually registered as analog axes instead of just button presses. The xpad driver has a parameter for this (triggers_to_buttons) which is always on in the RetroPie installations and disables this behavior. It doesn't seem that xpadneo has a similar parameter - or it behaves differently.
                                      You can try and running jstest /dev/input/js0 from the command line and see how the trigger appear - button presses or axis movement.

                                      1 Reply Last reply Reply Quote 1
                                      • 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.