Controller physically in js0 but on reboot changes to js1?
-
I have my Xbox 360 controller plugged into the 0 slot (top left) and a generic USB controller plugged in just below in the 1 slot. Originally I did the jstest and the the 360 was indeed js0 and the USB was js1. I did a reboot and all of a sudden the USB is js0 and the 360 is js1. Why is this happening?
-
I don't know why it is happening, but you could try @meleu's Joystick Selection tool. It can assign controllers by their port or name, if only for all RetroArch emulators.
-
@rolandpibb I had simliar issues. Not sure why, but booting up changed sometimes the order of gamepads. The solution is what Clyde posted, that little script makes gamepads persistent for say player 1 or 2. I use 2 gamepads plus an arcade stick and the order is different for some systems. It works perfectly.
In example, you can define XBox pad as player 1 (by name) for all emulators and then it does not matter in which usb port you put, it should remain player 1. Thats my understanding. And by port should be indipendent of gamepad, what you put in USB 1 port is always player 1. I didn't not test this much, but that should be the case (correct me if I am wrong).
-
@rolandpibb Joystick numbers,
jsX
, are assigned in the order they are recognised by the Pi as it boots. I believe the XBox controller needs to come out of a stale state so, when the Pi boots, the USB controller is recognised straightaway and assignedjs0
with the Xbox controller assignedjs1
.My PS3 controller needs to come out of a stale state which can be seen by the LEDs blinking for a second or two as the Pi boots before the player 1 LED becomes solid. My fix is to plug in the PS3 controller before the Pi boots and then plug in my generic USB gamepad once EmulationStation has loaded.
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.