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

    USB ports no longer determine player number retroarch 1.7.1

    Scheduled Pinned Locked Moved Help and Support
    controller
    73 Posts 16 Posters 15.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.
    • lostlessL
      lostless
      last edited by lostless

      With the latest update 4.1.17 on jessie and stretch, i'm having an issue with one of those blue ps1 to usb adapters plugged into my pistation i built. its plugged into port 4 so any other controller plug in should take priority. But every time, it over rides and is always takes over as player 1 and 2 and the other controller is always player 3. even any bluetooth controller that used to always be the highest priority, is now remapped to player 3. was there a change to retroarch or the usb port priority? has anyone else had an issue liked this.

      lostlessL 1 Reply Last reply Reply Quote 0
      • lostlessL
        lostless @lostless
        last edited by

        Upon further investigation, it seems retroarch 1.7.1 doesn’t give one dang interest in USB port priority. I’ve moved controllers around, of different types and the players always wind up the same player order. Doesn’t matter the port. Any advice to bring back the port priority.

        edmaul69E 1 Reply Last reply Reply Quote 0
        • edmaul69E
          edmaul69 @lostless
          last edited by edmaul69

          @lostless not sure. Im backing up my image right now to update to stretch so i can use my new 3 b+. I have 4 adapters so i hope that doesnt happen. But if it does no biggie as they are always hooked up so i can work around if i needed too. Plus using the joystick selection tool. But i will let you know how it works out for me.

          lostlessL 1 Reply Last reply Reply Quote 0
          • lostlessL
            lostless @edmaul69
            last edited by

            @edmaul69 ya it’s weird. It’s a pain because I mainly use PS3 controllers, but now there’s no rhyme or reason why a PS3 controller now overrides some controllers, while not others. There’s like no way to know which controller each player will be.

            edmaul69E 1 Reply Last reply Reply Quote 0
            • edmaul69E
              edmaul69 @lostless
              last edited by

              @lostless if you have the joystick selection installed look in your core override configs and make sure there isnt anything in them. If you dont have joystick selection, you might want to use it.

              lostlessL 1 Reply Last reply Reply Quote 0
              • lostlessL
                lostless @edmaul69
                last edited by lostless

                @edmaul69 I installed the joystick selection tool. It didn’t make a lick of difference. Something has changed in retroarch on how it sees the controller order. I’m using a fresh install of the stretch image because I though something got messed up in my Jesse configs and just redid in stretch. But this is hurting my brain.

                1 Reply Last reply Reply Quote 0
                • lostlessL
                  lostless
                  last edited by

                  @meleu sorry to bug you, but would you have any idea why your joystick section tool makes no difference in retroarch 1.7.1?

                  SanoS 1 Reply Last reply Reply Quote 0
                  • SanoS
                    Sano @lostless
                    last edited by Sano

                    @lostless
                    This reminds me of something :)
                    See here : https://retropie.org.uk/forum/post/136301

                    My findings were :

                    • Without sixad, the DS3 always take precedence over other controllers (new sony kernel module behaviour ?) according to SDL/jslist (on which @meleu script is based)
                    • Kernel (and retroach) are apparently taking joysticks in the order they are plugged (aka js* numbers)
                      So it can't work, basically because controller 0 for jslist/joystick-selection is controller 1 for retroach.

                    Good luck with this !

                    lostlessL 1 Reply Last reply Reply Quote 0
                    • lostlessL
                      lostless @Sano
                      last edited by

                      @sano so what you’re saying is the newest kernel is now ordering joysticks in the order in which they are plugged in vs. the USB port number? If so, that makes things complicated for my situation.

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

                        @lostless Wait until the next RA version will come around [1], it will be chaos :).
                        [1] https://retropie.org.uk/forum/topic/17228/coming-soon-to-retroarch-new-input-mapping-system-old-remap-files-don-t-work

                        1 Reply Last reply Reply Quote 1
                        • M
                          msheehan79
                          last edited by msheehan79

                          Hi guys

                          I suspect this is related to the same issue I found with RA 1.7.1. My situation is a bit of an edge case but sounds like you are running into same issue.

                          In short, there was a commit to RetroArch between 1.6.9 and 1.7.1 that added a sort to the udev joystick numbers, so whatever device is in js0 is always player 1, js1 is player 2, etc. Since I use xboxdrv js0 is not necessarily player 1.

                          For me, I commented out the offending line in the source and recompiled RA from source and it works. Bit of a hack but it worked for me as I wasn't sure my situation was enough to justify a proper bug report. I'm happy to provide more detail on my workaround if needs be.

                          My original report is here: https://retropie.org.uk/forum/topic/16959/using-2-controllers-with-xboxdrv-p1-and-p2-controls-swap-almost-every-time-i-launch-retroarch-1-7-1/3

                          Z 1 Reply Last reply Reply Quote 0
                          • lostlessL
                            lostless
                            last edited by lostless

                            After many tests, I can't find anyway to set even controller priority permanently and select which controllers i want for each player. It seems to be prioritizing when a controller is plugged in. since my pistation always has that adaptor plugged in, It always uses those 2 ports as players 1 and 2, and there seems to be no way around it. I can change it for one session via the rgui, but after I quit, it just goes right back. I'm willing to take any suggestion as getting my build back to 1.6.9 with the old kernel is impossible. *** note to self, Don't update if you have a good build

                            1 Reply Last reply Reply Quote 0
                            • lostlessL
                              lostless
                              last edited by

                              I figured something out. Using @meleu joystick selection tool, i found a way to change the order of the joysticks. Heres the thing. The tool is still showing the order on which they are plugged in via USB, But retrarch is now using a different logic. So i have a ps3 controller via bluetooth and the adaptor on port 4. The ps3 is being seen on the joystick selection tool as JS0, and the adaptor as JS1 and JS2. But retroarch sees its as the adaptor as JS0 and 1 and the ps3 controller as JS2. So I set the joystick selection tool to use the adaptor on JS2 as player one. Guess what!!!!!??? The ps3 controller is now player 1. Retroarch is only seeing that i set JS2 as player 1. Ignoring the fact that the joystick selector tool says JS2 is the adaptor. I tried to set joysticks by name, but it doesn't seem to work anymore. So i know its not a great answer, but I miss the USB port priority already.

                              lostlessL 1 Reply Last reply Reply Quote 0
                              • lostlessL
                                lostless @lostless
                                last edited by lostless

                                new irony, when the ps3 controller was disconnected. I had no access to hot keys, even though the adaptor became player one, it was still expecting hot keys from js2 mapped to player one. this new system is terrible.

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

                                  @lostless

                                  You may be able to get by with setting all_users_control_menu = "true".

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

                                  mituM 1 Reply Last reply Reply Quote 0
                                  • RedBatmanR
                                    RedBatman
                                    last edited by

                                    Has anyone tested this with a 360 controller yet? Since that is what I mainly use a wireless 360 controller with an adapter.

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

                                      @mediamogul said in USB ports no longer determine player number retroarch 1.7.1:

                                      @lostless

                                      You may be able to get by with setting all_users_control_menu = "true".

                                      This is already set by the RetroPie installs script when installing RA (https://github.com/RetroPie/RetroPie-Setup/blob/master/scriptmodules/emulators/retroarch.sh#L195).

                                      @lostless I had the same thing happened (P1 disconnected, couldn't control with P2) before 1.7.1, so it's not something new.

                                      mediamogulM lostlessL 2 Replies Last reply Reply Quote 0
                                      • mediamogulM
                                        mediamogul Global Moderator @mitu
                                        last edited by mediamogul

                                        @mitu said in USB ports no longer determine player number retroarch 1.7.1:

                                        This is already set by the RetroPie installs script when installing RA

                                        I might be wrong, but I don't think this would be set on an install that has been maintained for some time. Of course, I'm basing that notion on it never having been added to my own setup.

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

                                        1 Reply Last reply Reply Quote 0
                                        • lostlessL
                                          lostless @mitu
                                          last edited by

                                          @mitu I think you may of misunderstood. Player one was the ps1 adapter because the ps3 controller was not on. All is good. Go to exit a game, can't. Hot keys not working. I had to turn on my ps3 controller which came up as player 3, but retroarch is set to have player 3 "JS2" as player 1. So the ps1 adaptor continued to be player one in game, but the hot keys only worked on the ps3 controller. Its really odd. there is no sense to the controller inputs anymore.

                                          1 Reply Last reply Reply Quote 0
                                          • lostlessL
                                            lostless
                                            last edited by

                                            Update. After exhaustive testing, it seems controllers are no longer determined by the USB port, but by the order they are plugged in/turned on in retroarch 1.7.1. This applies to usb and Bluetooth controllers. You can go into the cong files and change which controller is player 1, but it can be deceiving because the retropie config files are still showing the order which they are plugged in via usb, but the real numbers are the order in which they are connected. So in my case, my ps1 adaptor is showing up as controllers 2 and 3 when I plug another controller into USB port 0. But since the pi booted with those in first, those are acutually js0 and js1. So to make the new controller player one, I have to select the ps1 adaptor, but it’s not, it’s the new controller I just plugged in. It is actually js2 and all I’m doing is telling retroarch that js2 is now player one. Bad part is if I unplug the 3rd controller, retroarch is still expecting js2 to be player one, so if i start a game, can’t do anything until a 3rd controller is plugged it making that one js2. This situation works well for Bluetooth controllers that will assign themselves based on when they turn on, but can wreck Havok on usb controllers that are always plugged in. It will assign players based on when Linux sees the controllers first. Some turn on quicker than others.

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