Interchangable Arcade Controllers
-
I've built out my first prototype arcade setup using retropie with a cy-2121 usb controller and a defender/stargate button arrangement. I really really want to build something with interchangeable panels, each would have its own USB controller so you can just remove a panel, swap in a new one and hook up the USB. I expect to set up each panel for specific games and don't expect them to be interchangeable. The goal is to have the interchange to be zero configuration (after the initial configuration) so that you can swap quickly and friends/family can do it (reboot would be tolerable).
Is this achievable? Currently it looks to me like the port numbering will haunt me. meleu joystick by name feature looks like it should help, but it is unclear how well that will work when the controllers are actually disappearing and reappearing, and some are likely to be duplicates. If PI's weren't so expensive right now I'd be tempted to just attach a pi to each panel, but the waste makes me shudder a little.
-
Is this achievable? Currently it looks to me like the port numbering will haunt me.
If you only have 1 board connected at any time, then port numbering is not that important. If you're using a libretro emulator (RetroArch core), then the configuration is based on the controller's name/ID, not on the port number. Other emulators use a similar name/ID based identification scheme for the controller, so the name and the identification of the controller is more important than the USB port.
meleu joystick by name feature looks like it should help, but it is unclear how well that will work when the controllers are actually disappearing and reappearing, and some are likely to be duplicates.
Yes, that will help if you controller boards have different names/IDs but only if you have them connected at the same time. It doesn't mater if you switch them at runtime, since the joystick script runs when the emulation starts.
If you'll have only 1 board connected at a time, the regular RetroArch auto-configuration should be enough - assuming the controller boards have different names/IDs, otherwise you'd have issues with the wrong configuration being applied to the controller. That can be worked out with some scripts, but it will not be automatic.
-
@mitu Thank you for the thorough, long and very helpful reply! It is a little clearer to me now. I think it is very likely I will end up with duplicate controllers; there are only so many of those USB controllers, and you can't muck with the ID's. I suppose I could make one, but that seems excessive.. However your comment on scripts really makes me think! It wouldn't be all that hard to hook up something like an RFID reader and attach an rfid tag to the controller panel, and have script selection use that. Pretty minimal code really, once I hassle you all for the general nature of the scripts :)
TBH though, my inclination to older arcade games makes me think harder to attaching a PI 3 to each panel, and just plugging in HDMI/power/sound (maybe a custom connection?). I mean, if I could actually buy them. A PI is actually less then a AAA game. But then you do have to maintain them all, etc
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.