Beatmania IIDX/BMS controller build log
I made a controller for playing beatmania IIDX and BMS. Here it is. I wanted to write a full, proper build log with a ton of photos of every single stage of the process, but various technical issues have happened, so now it's gonna be kinda underwhelming. Sorry! But I wanted to post this anyway.
I designed the controller based on the DJ Dao FPS controller, due to it being smaller than an arcade style IIDX controller while still having what seemed like a nice turntable size. I designed it in two parts, so the top panel could be cut on an A4 laser cutter. Due to technical issues I don't have a photo, but you can kinda see the construction on this photo showing one half of the panel. The base is the same way but with no holes in it.
The walls of the controller are made from scrap ply and glued in place, and the top panel is held in with wood screws.
The parts were mostly sourced from istmall - I used samducksa buttons, and an encoder I bought from aliexpress.
Controlling everything is a pi pico running pico-game-controller. I don't have access to the firmware repo any more, but you shouldn't use it anyway because it sucks.
Wiring everything up sucked the first time - I tried to use existing jumper wires and cut one end of the wire and use a crimp connector, to connect to my pi pico that had headers on. This was awful and sucked.
I later did my own proper dupont crimps and cut the wires properly, making an actually good wiring harness that is significantly more reasonable.
The first version of the turntable was 3d printed. It worked fine, but I had difficulty adjusting the sensitivity. It was either too loose or too tight.
So I remade it with a 3d printed flange coupler on the encoder and made a wooden disc to be the turntable, and covered that with tape to provide something of a grip surface.
In the future I'm going to put a proper grip surface on the turntable. Otherwise I'm happy with this controller. It works, which is all it needed to do.