A fewposts have been made about similar topics in the past, and I think (can’t find it right now) midi2vjoy has been mentioned in the past, but I have made a GUI remake of it that can map MIDI controllers to vJoy devices using pygame. I’ve had this idea for a while, and I made a script to map a cheap MIDI keyboard (was $50 when I bought it but now it’s $90 and better controllers can be bought in that price range so I wouldn’t recommend it) to virtual joysticks, but I finally got around to making a more user friendly interface to generate these scripts. I tried to loosely copy the UI of DriverStations joystick tab so it should be straightforward.
Back in 2018, in the off-season, I had an idea to use a DDR (Dance Dance Revolution) pad to control the auxiliary functions of our robot, Roxanne. Of course, this was outlandish and incredibly funny, but we can’t wait until the 2024 season releases to see if this stupid idea can actually get some real laughs.
Strum bar is elevator up and down, I’ve seen it before too. Then 5 buttons for quick scoring heights or intake, outtake. Worked well. Can’t recall what teams I’ve seen with it, but more than 1 definitely in FIM over the years
Edit. I swear I saw this in 2015. 4 tote heights and the topper can were the buttons and strum was elevator up and down manual adjustment. Not sure what the other functions were. Or star power…
This could be a good controller if you have too many things to control :)
You can even fit 2 of these (or 4 standard gamecube controllers) on one usb port!
I wouldn’t recommend any of the above personally, because I want to be able to replace a controller quickly and cheaply if it breaks, but they do have the advantage of looking cool AF.
I’ve also managed to program an Adafruit RP2040 MacroPad using CircuitPython to present itself as a standard controller.
It’s a great cheap macropad, all the keys have an RGB LED so each key can be colour-coded. There’s also a small OLED display on the device, which I use to show what function each key does.
I’m sure a similar thing can be done with Adafruit’s larger button pads.