Controlblock joysticks + USB (PS3) controllers at the same time?

Home Forums RetroPie Project Controller Configuration in RetroPie Controlblock joysticks + USB (PS3) controllers at the same time?

RetroPie has a new website and forum. Please visit https://retropie.org.uk/ for the new site. The new forum is located at https://retropie.org.uk/forum/. This forum is left here as a read-only archive.

This topic contains 2 replies, has 2 voices, and was last updated by Profile photo of colinshare84 colinshare84 1 year, 7 months ago.

Viewing 3 posts - 1 through 3 (of 3 total)
  • Author
    Posts
  • #105398
    Profile photo of james808
    james808
    Participant

    I’ve successfully got a wired PS3 controller working, but the problem is that it always takes the js0 input, moving my two arcade joysticks on the controlblock to js1 and js2. Ideally, I would like the PS3 controller to be on js2.

    Is there a way to force the joysticks to stay on js0 and js1? I’ve searched the forums for the past two days and tried everything! I’ve tried changing retroarch cfg files to assign player 1 to js1 and player 2 to js2, but then if I remove the PS3 controller, I will have to revert the cfg file back.

    There’s got to be a better way? Any help would be greatly appreciated!

    #105556
    Profile photo of colinshare84
    colinshare84
    Participant

    I had a shot at something very similar to this recently but gave up! I’m not experienced enough in Linux to see it through to the end.

    You could have a shot and see if you have any more luck. Here are the links to the pages I used:

    http://blog.petrockblock.com/forums/topic/using-udev-rules-to-assign-persistent-names-to-joypads/

    http://ubuntuforums.org/showthread.php?t=1595666&p=9974813#post9974813

    http://linux-tips.org/t/persistent-device-naming-with-udev/203

    As a rough guide, here are the steps I used:

    lsusb

    udevadm info –name=/dev/input/js0 –attribute-walk

    and then use the information which is returned to create a udev rule (in /etc/udev/rules.d)

    Good luck!

    #106326
    Profile photo of colinshare84
    colinshare84
    Participant

    For anyone that’s interested…

    I managed to have another go at this and I think I got it working.

    1. Plug in a controller to any USB port and type this command:

    udevadm info –query=property –name=/dev/input/js0

    2. Move the controller to the other USB ports and run the command above.

    3. The information returned from each USB port allows you to create a file named 20-custom.rules in /etc/udev/rules.d with the following contents:

    # Lower Left USB Port
    KERNEL==”js*”, KERNELS==”1-1.3″, NAME=”input/js0″
    # Lower Right USB Port
    KERNEL==”js*”, KERNELS==”1-1.5″, NAME=”input/js1″
    # Upper Left USB Port
    KERNEL==”js*”, KERNELS==”1-1.2″, NAME=”input/js2″
    # Upper Right USB Port
    KERNEL==”js*”, KERNELS==”1-1.4″, NAME=”input/js3″

    This results in a control pad being connected to, for example, the upper left USB port to be assigned js2. It doesn’t differentiate between devices but using their model/serial/name rather than which USB port they are connected to should generate this behaviour.

    Hope this is of help to someone!

Viewing 3 posts - 1 through 3 (of 3 total)

Forums are currently read only - please visit the new RetroPie forums at https://retropie.org.uk/forums/

Skip to toolbar