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

    Input Scrambled After Retropie Update

    Scheduled Pinned Locked Moved Help and Support
    retropie4.7controller usbsn30 pro
    21 Posts 2 Posters 1.6k 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.
    • mituM
      mitu Global Moderator
      last edited by

      @gabraham said in Input Scrambled After Retropie Update:

      This controller is recognized as an Xbox 360 controller so I tried reinstalling those drivers from the Retropie Setup menu as well but no change.

      Which driver did you update ? You should update the xpad driver and restart, then re-do the mapping in EmulationStation - the triggers should be recognized.

      G 1 Reply Last reply Reply Quote 0
      • G
        Gabraham @mitu
        last edited by

        @mitu said in Input Scrambled After Retropie Update:

        You should update the xpad driver and restart, then re-do the mapping in EmulationStation - the triggers should be recognized.

        I updated the xboxdrv drivers. I will try the xpad ones now.

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

          @gabraham xboxdrv is NOT a driver for Xbox controllers - it just simulates ones. You should uninstall it, unless you've specifically configured it as detailed in https://retropie.org.uk/docs/Universal-Controller-Calibration-%26-Mapping-Using-xboxdrv/.

          G 1 Reply Last reply Reply Quote 0
          • G
            Gabraham @mitu
            last edited by

            @mitu I uninstalled the xboxdrv and reinstalled the xpad drivers from source, then restarted. No change.

            Unfortunately I am not sure exactly what was updated as I ran the script for Retropie to update all packages. Starting to consider trying to roll back some drivers to see if that has an affect.

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

              @gabraham said in Input Scrambled After Retropie Update:

              Starting to consider trying to roll back some drivers to see if that has an affect.

              You shouldn't need any special drivers for the SN30pro. How is the controller detected - the 8Bitdo controllers have various modes of operating and they change their name & behavior depending on the start mode (XInput/DInput/Switch/Android) ? What's the name shown in EmulationStation when you map the controller ?

              G 1 Reply Last reply Reply Quote 0
              • G
                Gabraham @mitu
                last edited by

                @mitu This is not a bluetooth controller. The USB version does not have multiple modes. When trying to register input with EmulationStation, it is recognized as an xbox 360 controller. This, again, worked fine recently.

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

                  @gabraham said in Input Scrambled After Retropie Update:

                  The USB version does not have multiple modes.

                  If is this model, then it does, even if wired. However, it should work regardless.

                  The only driver that could be involved is the xpad driver, which handles Xbox wired drivers - there's nothing else involved. Can you post the output of the following command ?

                  cat /proc/bus/input/devices
                  
                  G 1 Reply Last reply Reply Quote 0
                  • G
                    Gabraham @mitu
                    last edited by

                    @mitu said in Input Scrambled After Retropie Update:

                    If is this model, then it does, even if wired. However, it should work regardless.

                    https://download.8bitdo.com/Manual/Controller/SN30pro-USB/SN30-Pro-USB.pdf
                    That is the manual. If there are multiple modes, there is no way in the manual to toggle between them. It may be that the controller decides on connection whether or not it is in one of the two modes but if it does, I don't know how to manipulate that and I've already tried reseating the usb cable to see if it does anything different.

                    @mitu said in Input Scrambled After Retropie Update:

                    The only driver that could be involved is the xpad driver, which handles Xbox wired drivers - there's nothing else involved. Can you post the output of the following command ?

                    cat /proc/bus/input/devices
                    
                    I: Bus=0003 Vendor=045e Product=028e Version=0114
                    N: Name="Microsoft X-Box 360 pad"
                    P: Phys=usb-0000:01:00.0-1.1/input0
                    S: Sysfs=/devices/platform/scb/fd500000.pcie/pci0000:00/0000:00:00.0/0000:01:00.0/usb1/1-1/1-1.1/1-1.1:1.0/input/input0
                    U: Uniq=
                    H: Handlers=event0 js0
                    B: PROP=0
                    B: EV=20000b
                    B: KEY=7cdb0000 0 0 0 0 0 0 0 0 0
                    B: ABS=3003f
                    B: FF=1 7030000 0 0
                    
                    1 Reply Last reply Reply Quote 0
                    • mituM
                      mitu Global Moderator
                      last edited by

                      @gabraham said in Input Scrambled After Retropie Update:

                      That is the manual. If there are multiple modes, there is no way in the manual to toggle between them

                      I see, so it's one of the models that tries to be 'smart' and guess which host is connected to in order to masquerade as either a Xbox 360 controller or a Switch Pro controller.

                      Based on the Vendor/Product ID (Vendor=045e Product=028e) detected, the driver used for it is clearly xpad. I wonder if the gamepad detection makes the driver fail to load.

                      You can test how your buttons/joystick are detected on the controller by using jstest from the command line and pressing each input separately to see how it appears on screen:

                      jstest /dev/input/js0
                      

                      You can interrupt the test at any time using Ctrl+C. Can you check if your triggers are detected as buttons or axis ?

                      G 2 Replies Last reply Reply Quote 0
                      • G
                        Gabraham @mitu
                        last edited by

                        @mitu said in Input Scrambled After Retropie Update:

                        Can you check if your triggers are detected as buttons or axis ?

                        They are detected as axis. I've seen this happen before but I just have no idea why it's suddenly a problem or how to make the Pi recognize them as buttons. I suppose it's possible it was in Switch mode this whole time and suddenly it's in PC mode or something. The switch controller doesn't have analog triggers so this would seem to make sense. The question of course becomes how do I either make the Pi understand they are really buttons, or I guess figure out how to force the modes.

                        mituM 1 Reply Last reply Reply Quote 0
                        • G
                          Gabraham @mitu
                          last edited by

                          @mitu said in Input Scrambled After Retropie Update:

                          I see, so it's one of the models that tries to be 'smart' and guess which host is connected to in order to masquerade as either a Xbox 360 controller or a Switch Pro controller.

                          After you mentioned the multiple modes I decided to see if there was an undocumented way to force one mode over the other and there does appear to be. If I hold down the Y button, it will, much like the bluetooth version, be recognized as a Pro Controller on my PC. When I do this on the Pi however, it fails to detect any button presses whatsoever. If I do not press anything when I plug the controller in or press one of the other face buttons while doing so, it reacts exactly as it has been and the triggers are not recognized properly.

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

                            @gabraham said in Input Scrambled After Retropie Update:

                            .. it's possible it was in Switch mode this whole time and suddenly it's in PC mode or something.

                            That's unlikely, since the name of the gamepad would have been different and (i.e. not Microsoft X-Box 360 pad).

                            They are detected as axis.

                            This means the xpad driver is either not loaded for the controller or it's not installed properly. The xpad driver included in RetroPie is configured to detect those as buttons - the situation you're describing (triggers appearing as axis) is common when the driver is not installed.

                            Can you re-install the driver and then post the installation log file from $HOME/RetroPie-Setup/logs ?

                            1 Reply Last reply Reply Quote 0
                            • G
                              Gabraham
                              last edited by Gabraham

                              @mitu https://pastebin.com/M9qA6rMe

                              No change. I even confirmed that the xpad.conf file to make sure the triggers to buttons option was set to 1. When I uninstalled it I lost the ability to use my controller too, so I would think it would have to be loaded.

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

                                OK, so the xpad driver is installed correctly, no issue here.
                                Try to see if it's loaded/used for the controller. Boot the Pi without the controller plugged in, then run from the terminal

                                dmesg -w
                                

                                and plug in the controller. The driver should load if the controller is properly detected. Post the messages shown by dmesg when plugging in the controller.

                                G 1 Reply Last reply Reply Quote 0
                                • G
                                  Gabraham @mitu
                                  last edited by

                                  @mitu said in Input Scrambled After Retropie Update:

                                  Post the messages shown by dmesg when plugging in the controller.

                                  [  132.541524] usb 1-1.1: new full-speed USB device number 3 using xhci_hcd
                                  [  132.681834] usb 1-1.1: New USB device found, idVendor=045e, idProduct=028e, bcdDevice= 1.14
                                  [  132.681852] usb 1-1.1: New USB device strings: Mfr=1, Product=2, SerialNumber=3
                                  [  132.681866] usb 1-1.1: Product: Controller
                                  [  132.681879] usb 1-1.1: Manufacturer: Controller
                                  [  132.681892] usb 1-1.1: SerialNumber: Controller
                                  [  132.758613] input: Microsoft X-Box 360 pad as /devices/platform/scb/fd500000.pcie/pci0000:00/0000:00:00.0/0000:01:00.0/usb1/1-1/1-1.1/1-1.1:1.0/input/input0
                                  [  132.758925] usbcore: registered new interface driver xpad
                                  
                                  1 Reply Last reply Reply Quote 0
                                  • mituM
                                    mitu Global Moderator
                                    last edited by

                                    Looks like the xpad driver is loaded for the controller - I have no idea why the configuration from xpad.conf (triggers_to_buttons=1) doesn't work.

                                    G 1 Reply Last reply Reply Quote 0
                                    • G
                                      Gabraham @mitu
                                      last edited by

                                      @mitu

                                      I also tried xpadneo out of desperation but the controller is always recognized as an xpad.

                                      The xpad driver doesn't appear to have been updated for a few months and I was pretty sure I had updated the drivers since reflashing this Pi weeks ago. Only since I had updated it recently did this start happening. Unfortunately if there is a way to roll back the driver I don't know how to do it and the Retropie-Setup menu always fetches the latest one from source.

                                      I appreciate you helping me to look into it in any case, but it's a damn shame because before this started happening it was almost perfect and just worked like a charm all the time.

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

                                        I also tried xpadneo out of desperation but the controller is always recognized as an xpad.

                                        xpadneo is for Bluetooth XBox controllers only, it doesn't work for wired gamepads.

                                        The xpad driver doesn't appear to have been updated for a few months and I was pretty sure I had updated the drivers since reflashing this Pi weeks ago

                                        Maybe the xpad driver is not at fault here. Although it has received some updates since 4.7.1 was released last year, it shouldn't affect the patch that RetroPie applies to it. Unfortunately I don't have any compatible controllers to test, but we also haven't received any similar complains lately.

                                        Just to check that the module options are applied, can you run

                                        sudo cat /sys/module/xpad/parameters/triggers_to_buttons
                                        

                                        and see if the output is Y ?

                                        G 1 Reply Last reply Reply Quote 0
                                        • G
                                          Gabraham @mitu
                                          last edited by Gabraham

                                          @mitu

                                          Output is Y.

                                          Also, earlier I tried changing that property to 0 but it affected nothing so I changed it back.

                                          I actually have an 8bitdo wireless. I believe they are in the same family so the USB version is essentially just a stripped down version of the bluetooth one. Interestingly when I plug the bluetooth controller in with a USB port to use USB mode, I can cycle through the Switch and X-Input modes basically the same way and the Pi reacts just like it does with the usb controller. Switch mode USB is not recognized at all and X-Input just causes it to behave like the usb controller version.

                                          1 Reply Last reply Reply Quote 0
                                          • G
                                            Gabraham
                                            last edited by

                                            Minor update: I saw on a reddit post that someone solved the issue somehow by resetting the EmulationStation input settings via the Retropie menu. I did so but no change. At this point I'm considering opening a GitHub issue on the Retropie GitHub.

                                            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.