Specifying P1 controller with two identical pads
-
Hi
I've had a look around and tried a few things but I'm struggling with getting a controller permanently assigned to player 1. I have to identical Giotek PS3 joypads and for some reason they keep changing which one can control the RP and RA config menus.
I've tried this however instead of using ID_MODEL= I've used ID_PATH as everything is identical on these controllers so the only way to differentiate is this. I'm guessing it's the USB port the dongle is connected to and if that isn't removed then it should stay the same?My rules file is named the same and looks like:
KERNEL=="js?", ENV{ID_PATH}=="platform-3f980000.usb-usb-0:1.3.5:1.0" ENV{ID_MODEL}=="PC_USB_Controller", NAME="input/js0"
KERNEL=="js?", ENV{ID_PATH}=="platform-3f980000.usb-usb-0:1.3.3:1.0" ENV{ID_MODEL}=="PC_USB_Controller", NAME="input/js1"The output of udevadm info -q all -n /dev/input/js0 is:
P: /devices/platform/soc/3f980000.usb/usb1/1-1/1-1.3/1-1.3.3/1-1.3.3:1.0/0003:25 F0:83C2.0001/input/input0/js0
N: input/js0
S: input/by-id/usb-Goodbetterbest_Ltd_PC_USB_Controller-joystick
S: input/by-path/platform-3f980000.usb-usb-0:1.3.3:1.0-joystick
E: DEVLINKS=/dev/input/by-id/usb-Goodbetterbest_Ltd_PC_USB_Controller-joystick / dev/input/by-path/platform-3f980000.usb-usb-0:1.3.3:1.0-joystick
E: DEVNAME=/dev/input/js0
E: DEVPATH=/devices/platform/soc/3f980000.usb/usb1/1-1/1-1.3/1-1.3.3/1-1.3.3:1.0 /0003:25F0:83C2.0001/input/input0/js0
E: ID_BUS=usb
E: ID_FOR_SEAT=input-platform-3f980000_usb-usb-0_1_3_3_1_0
E: ID_INPUT=1
E: ID_INPUT_JOYSTICK=1
E: ID_MODEL=PC_USB_Controller
E: ID_MODEL_ENC=PC\x20USB\x20Controller
E: ID_MODEL_ID=83c2
E: ID_PATH=platform-3f980000.usb-usb-0:1.3.3:1.0
E: ID_PATH_TAG=platform-3f980000_usb-usb-0_1_3_3_1_0
E: ID_REVISION=0313
E: ID_SERIAL=Goodbetterbest_Ltd_PC_USB_Controller
E: ID_TYPE=hid
E: ID_USB_DRIVER=usbhid
E: ID_USB_INTERFACES=:030000:
E: ID_USB_INTERFACE_NUM=00
E: ID_VENDOR=Goodbetterbest_Ltd
E: ID_VENDOR_ENC=Goodbetterbest\x20Ltd
E: ID_VENDOR_ID=25f0
E: MAJOR=13
E: MINOR=0
E: SUBSYSTEM=input
E: TAGS=:seat:uaccess:
E: USEC_INITIALIZED=812371The output of udevadm info -q all -n /dev/input/js1 is:
P: /devices/platform/soc/3f980000.usb/usb1/1-1/1-1.3/1-1.3.5/1-1.3.5:1.0/0003:25F0:83C2.0002/input/input1/js1
N: input/js1
S: input/by-id/usb-Goodbetterbest_Ltd_PC_USB_Controller-joystick
S: input/by-path/platform-3f980000.usb-usb-0:1.3.5:1.0-joystick
E: DEVLINKS=/dev/input/by-id/usb-Goodbetterbest_Ltd_PC_USB_Controller-joystick /dev/input/by-path/platform-3f980000.usb-usb-0:1.3.5:1.0-joystick
E: DEVNAME=/dev/input/js1
E: DEVPATH=/devices/platform/soc/3f980000.usb/usb1/1-1/1-1.3/1-1.3.5/1-1.3.5:1.0/0003:25F0:83C2.0002/input/input1/js1
E: ID_BUS=usb
E: ID_FOR_SEAT=input-platform-3f980000_usb-usb-0_1_3_5_1_0
E: ID_INPUT=1
E: ID_INPUT_JOYSTICK=1
E: ID_MODEL=PC_USB_Controller
E: ID_MODEL_ENC=PC\x20USB\x20Controller
E: ID_MODEL_ID=83c2
E: ID_PATH=platform-3f980000.usb-usb-0:1.3.5:1.0
E: ID_PATH_TAG=platform-3f980000_usb-usb-0_1_3_5_1_0
E: ID_REVISION=0313
E: ID_SERIAL=Goodbetterbest_Ltd_PC_USB_Controller
E: ID_TYPE=hid
E: ID_USB_DRIVER=usbhid
E: ID_USB_INTERFACES=:030000:
E: ID_USB_INTERFACE_NUM=00
E: ID_VENDOR=Goodbetterbest_Ltd
E: ID_VENDOR_ENC=Goodbetterbest\x20Ltd
E: ID_VENDOR_ID=25f0
E: MAJOR=13
E: MINOR=1
E: SUBSYSTEM=input
E: TAGS=:seat:uaccess:
E: USEC_INITIALIZED=812610I've also edited /opt/retropie/configs/allretroarch.cfg to have this:
input_player1_joypad_index = 0
input_player2_joypad_index = 1 -
Just to try to walk through some of what you may or may not have done when troubleshooting:
Do the controllers switch their assignment even without rebooting? (Example, in one game they are one way, exit that game, start another, they are switched). If so, do they stay the same within the same emulator, or only switch when going between different emulators?
Are you pairing them in the same order each time?
-
@obsidianspider said in Specifying P1 controller with two identical pads:
Do the controllers switch their assignment even without rebooting? (Example, in one game they are one way, exit that game, start another, they are switched). If so, do they stay the same within the same emulator, or only switch when going between different emulators?
No they only time I've noticed them switch is after a reboot or even after being idle.
Are you pairing them in the same order each time?
When you say pairing, do you mean to the dongle? I just pick up joypad one (I've labelled them for my sanity) and press the home button and it pairs to its dongle.
AHHH ive just noticed its pairing to another dongle intermittently SORRY guess its a controller issue then!
-
Looks like I can only assign channels when its connected to a PS3. I'm guessing I'll have to leave only one dongle in and then connect the second as and when I need a P2 pad.
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.