TL;DR: how to have the controlblock service only show one arcade controller? Editing this?
So I’ve converted an iCade cabinet into a retropie machine, using a Controlblock to wire the buttons to the Pi. As you’d guess, this is a one-player machine, and the arcade controls aren’t ideal in all situation. I plan on adding physical SNES ports eventually but in the mean time I plugged in a bluetooth key to play with other controllers (ps3 and soon a nice snes30 from 8bitdo).
So here’s my problem: the controlblock registers two controllers but only one is wired, thus creating a “ghost device”. BT controllers come after the index of this ghost gamepad. Not a big deal in ES as any controller can drive the interface but when I open the GUI in RetroArch as I want to switch controls (controlblock’s player 1), when I try to change the index from 0 (controlblock player 1) to 2 (bluetooth), I have to go through 1 first and then I lose all control in the GUI 🙂
So basically I’d like to be able to only circle through controllers that are actually working so that I don’t get stuck in retroarch.
I had a quick look at the driver and was wondering if simply changing the value of NUMGAMEPADS here would do the trick? Of course ideally if that was editable through the config file it would be best.
Can the driver detect when a SNES controller is plugged in the GPIO adapter ?
I want to build a 2 players bartop arcade with 2 SNES controllers connectors on the front side of the machine, to be able to play with 4 simultaneous players. Will these 2 empty connectors always appear as existing gamepads even when nothing is plugged in ?