• 0 Votes
    3 Posts
    370 Views
    L

    @mitu I don't think that works (though thank you for the suggestion).
    The problem is that my gamepad's number was dynamic so I wouldn't know what number it was until I start the game!

    Though I managed to solve the problem by creating a runcommand-onstart.sh script:

    root@retropie:/opt/retropie# cat /opt/retropie/configs/all/runcommand-onstart.sh

    #!/bin/bash # fix player input index order! # on my system, the bluetooth gamepad always gets index 0 when it is active # which messes up the controls for all joystick based games! if [ -e "/dev/input/js2" ] then # Bluetooth controller is currently active! # Change retroarch's config order for player 1 through 3... # wired joystick 1 for player 1, wired joystick 2 for player 2, wireless gamepad for player 3 /bin/cp /opt/retropie/configs/all/base_configs/retroarch.cfg.all-bluetooth_enabled /opt/retropie/configs/all/retroarch.cfg # bluetooth gamepad for player 1, for psx! /bin/cp /opt/retropie/configs/all/base_configs/retroarch.cfg.psx-bluetooth_enabled /opt/retropie/configs/psx/retroarch.cfg else # Bluetooth controller not presently active! # Reset retroarch's config # wired joystick 1 for player 1, wired joystick 2 for player 2 /bin/cp /opt/retropie/configs/all/base_configs/retroarch.cfg.all-bluetooth_disabled /opt/retropie/configs/all/retroarch.cfg # no custom input config for psx! /bin/cp /opt/retropie/configs/all/base_configs/retroarch.cfg.psx-bluetooth_disabled /opt/retropie/configs/psx/retroarch.cfg fi

    root@retropie:/opt/retropie#

    This is hardcoded to my system but it solves my problem!
    It looks for /dev/input/js2 (which is the device for my bluetooth gamepad) and, if it exists, it overwrites the retroarch.cfg global (and the psx) config to map the input_playerX_joypad_index parameter! :)

  • 0 Votes
    1 Posts
    621 Views
    No one has replied
  • 0 Votes
    11 Posts
    14k Views
    B

    @AmigaGamer Seems this post is quite old, but I couldn't find other related post yet.
    I encountered exactly same problem with you but I can't get this 8bitdo zero tool because official homepage has renewed. Do you still have the tool? If you don't mind, May I ask you to upload that tool on mirror?

  • 0 Votes
    2 Posts
    1k Views
    D

    Did you manage to solve this?
    My situation is kind the same. I have two controllers, though they are different type than this one.
    Both controllers report themselves as "Gamepad", fortunately with different addresses.
    So in the udev rule instead of specifying its name I used
    ATTRS{address}=="bt address"
    (interestingly with small letters when required: E8:A1:00:.... -> e8:a1:00:... you can check it with the udevadm info -a -n /dev/hidraw0 or hidraw1 command)
    This is where the good story ends.
    From this point the EmulationStation looses, because both of the controllers are recognized with the same name and somehow they got mixed up. Sadly the same happens in the games also.
    Any idea to tell Linux to propagate the BT client on different name than it reports itself?