8BitDo Zero Gamepad


I used to have it somewhat working under clockworkos 0.3 but now I am doomed under 0.5.
Now that we have a kinda working bluetooth menu, I managed to connect my gameshell to the 8bitdo Zero. I added the udev rules as suggested here Bluetooth device on gameshell
obviously with the correct " and the name without space between 8 and Bitdo.
but it is a mess and does not work with udev. SDL2 as input driver for joysticks works though when I remove the role from udev, but only for player 1. why is that not working as player 2? no matter what mode I put the gamepad in, I either get no mappings at all or keys that are already occupied by the native keypad of gameshell (e.g. h, j, u). What can I do to get it working as player 2?


I’m not sure exactly of what you’re facing, but from memory on my old rpi3, I remember specifying the device index for different played input controls.
This was more when using a mixture of Bluetooth ps3 controllers, USB Xbox 360 controllers and a keyboard. I think the mixed nature of the inputs similarly mirrors your problem.
It’s strange that you had of working in your 0.3 installation. Perhaps it’s a Retroarch update that changed things, or possibly your config differing.

yes, it is something about device indexing and the autoconfig I learned meanwhile.
I figured out now, somehow. Getting a stable bluetooth connection is hell of a luck, but this is what I did:

  1. I paired the device in android mode (just holding Start to turn on) via bluetoothctl.
  2. I marked the device as tusted.
  3. I added the udev rules and rebooted.
  4. I checked at the settings of the launcher and the gamepad is shown as connected. If it did not, I re-connected via settings and not via bluetoothctl.
  5. I went to retroarch:
  6. RA under settings, drivers, I left the drivers for joysticks at “udev”
  7. RA under settings, input I selected maximum users: 2
  8. RA under settings, input, user 2 binds I did not attempt to bind any keys but I went to user 2 device index and selected “8bitDo GamePad Zero”.
  9. RA under settings, input, user 1 binds make sure user 1 device index is “Disabled”

Now, when I start the Gamepad by holding the start button for a couple of seconds just after I started GameSH, It gets connected (I usually double check that under Settings) and I can then launch RetroArch or any game directly (I made some shortcuts in the menu for games I play more often).