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

    JS0 assignment

    Scheduled Pinned Locked Moved Help and Support
    controllerps3launch options
    14 Posts 3 Posters 4.4k 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.
    • F
      fdrslegs
      last edited by

      Hey everyone! I'm running Retropie 4.1.14 on a Raspberry pi 3 model B and using a Dualshock 3 controller.. After some time i've realized my controller has jumped from Js0 to Js2 or 3 depending on what happened previous. I can't seem to get JS0 back either. I've gone and delete my current controller configurations in retropie setup and it's still not working. Is there a why to specifically assign a controller to be JS0 and 1 respectively by editing a config file somewhere? I ask this because now i can no longer "press a" to get to launch options on my controller. If there is a way to change which button is pressed to bring up launch options that will work too. Thanks in advanced!

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

        @fdrslegs said in JS0 assignment:

        Is there a why to specifically assign a controller to be JS0 and 1 respectively

        js number assignments happen at a system level and I believe are set based on USB port order. If you haven't already, you might try plugging you first controller in the top left port, followed by the second controller in the bottom left.

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

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

          @mediamogul the usb order is the norm in most cases. I have three different controllers hooked up. One of them is an adapter that i want to be controller 0. No matter what it wont be. In emulationstation i can have it show up as js0 based on usb port. But not anywhere else. Everything else sees it as js2 no matter what.

          Edit: after spending like the last hour trying to figure this out it was because the autosense mode was taking too long. I switched it to force genesis mode and to boots as js0. So linux itself cares about usb order but if one boots too slow linux will assign it to the next controller. Emulationstation just cares about the usb port only.

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

            @edmaul69

            Hah! ...and if all that wasn't bad enough, a lot of the software completely ignores the jsX assignments in favor of joystick event order. All this combined is why I tend to favor key-mapping a controller above anything else. Seeing as how everything responds to a keyboard, it ends up being the only thing you can truly set your watch by.

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

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

              @mediamogul so this adapter has an auto sense which has to have you tell it what controller it is by holding down a specific button on that controller on the first 3 seconds of usb boot up and it sets it to that controller. If it is set to a controller you dont have to do anything until you need a different controller. Then you have to hold down that controllers specific controller button on boot to change it. However, if you dont have the correct controller detected on boot then it will default to a coleco controller. I just tested and if i hold down the start button on my genesis controller (its button used to set it to genesis mode) while booting it detects as js0 in linux.

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

                @fdrslegs Something i just realized you said. You dont press the "a" button. You press whichever button is button 0 on your controller.

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

                  @edmaul69

                  What kind of adapter is it? I feel like maybe you've mentioned it in the past, but I can't remember.

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

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

                    @mediamogul this one is the vision-daptor. Like the 2600-daptor but for a lot of systems controllers. Its the single player one. The ultimate pc interface has 2 ports and can do a lot more. I dont have a upci anymore to test. I built my buddy a sweet ass new pc inside a 2600 and i gave him my upci adapter and wired it to the controller ports on the 2600. It came out really really good.

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

                      @edmaul69

                      Nice!

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

                      1 Reply Last reply Reply Quote 0
                      • F
                        fdrslegs
                        last edited by fdrslegs

                        @edmaul69 i read I believe in the wiki that this is true for the controller that is set to JS0. I've run jstest on my controller and found which button was zero and it still won't work.

                        I've also tried the port the USB cable is plugged into, however, I'm using it on Bluetooth. Could the Bluetooth itself be switching JS assignment ?

                        Edit: I do have the cable plugged into the top left port charging purposes, could this be the issue? Also, now when I connect my PS3 controller when I first boot up, my controller shows me I'm player 2 and after another reboot it's now showing player 3.

                        Do PS3 controllers just suck for this and I should use a different brand?

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

                          @fdrslegs if you have more than one controller, a wireless ps3 controller will always show up as the last controller. Luckily the joystick selection runcommand (if you install from retropie setup) allows you to set it as the first controller for retroarch emulators. (Wont set up as first controller for the menu) Many other emulators let you select what controller you want so it has never been much of an issue for me. You can use a keyboard and press x or m when it says press a button. Forget which one as i think now you can hit any key on the keyboard.

                          F 1 Reply Last reply Reply Quote 0
                          • F
                            fdrslegs @edmaul69
                            last edited by

                            @edmaul69 is this what you are talking about ?
                            If so, I'll give this a go!
                            https://retropie.org.uk/forum/topic/1167/here-is-a-way-to-select-joystick-for-players-1-4-global-or-emu-specific/1

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

                              @fdrslegs yes. If you use that you can set the ps3 controller to player 1 for all retroarch emulaters.

                              1 Reply Last reply Reply Quote 0
                              • F
                                fdrslegs
                                last edited by

                                @edmaul69 Sweet, I was looking for something like this before. After some testing I have noticed something. When turning on the Pi or rebooting it with cables plugged in for different controllers, I can have them set in their respective ports 0,1,2 etc and my PS3 controller will not become JS0 it will become whatever light is shown on the PS3 controller i.e. JS1 it will be player 1 on the controller light.

                                If I reboot and unplug every wire so the USB ports are empty and connect it to blue tooth as it's booting, my controller blinks for a bit then stops and shows no lights. I've had this happen before on macs and the controller still works even though it's not indicating a "player." When the controller is like this it is JS0.

                                So it appears that if you want your PS3 controller to be JS0 and not JS1-4 potentially, you need to connect it as it's booting through bluetooth with nothing else plugged in the USB ports.

                                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.