×Read this message from Erik, founder of YouMagine

Arcade Stick with Swappable Top

Change your arcade layout with an easily removable top; customisable with OpenSCAD.


Creative Commons Attribution Noncommercial Share Alike

Commercial use is not allowed, you must attribute the creator, you may remix this work and the remixed work should be made available under this license.

Learn more or download attribution tags


A large, comfortable arcade stick box that can be easily customised using OpenSCAD. The default layout uses the Sega Astro City joystick/button positions, and an included example mod shows what a Hitbox-style layout would look like for this button layout. Both tops are removable without tools; a simple array of snap inserts are used to hold the top in place, making it easy to pry off and access the wiring or replace the top with a new layout. Layouts are provided through the included libraries, which can easily be modified with a different number of buttons or entirely different layouts.

All parts fit within a 180mmx180mm square and should fit easily on a build plate at least that large, although larger might be necessary if you need extra support. Top and bottom halves use a complex cutout to ensure they fit together easily, and can be glued together with superglue or epoxy, or friction welded if you want to be all fancy about it like me.

Also includes a mounting point for an Adafruit USB-C adapter, making it easy to add a replaceable cable. The USB-C adapter can be mounted using a very simple printable bracket, which is available here: https://www.youmagine.com/designs/adafruit-usb-c-adapter-mount

Materials and methods

Files should be printable with any configuration and with minimal support on the top halves to guarantee the curved edges print correctly.

Settings used:
Printer: Prusa i3 Vanilla
Slicer: PrusaSlicer
Material: PLA (Gizmo Dorks Blacklight Fluorescent Green)
Layer height: 0.5mm
Print speed: 60mm/s
Print time: ~8h total, ~3h for the two replaceable top halves

Additional materials: 10 M3x6 screws to attach the bottom cover to the side panels; this can be skipped if you choose to export and print them as one piece, which should be easy enough. You also will need however many 24mm/30mm Sanwa OBSF buttons you have added to the top (1 24mm for the start button, 8 30mm for the action buttons and another 4 30mm if using the Hitbox layout) and the Sanwa JSF joystick and screws/nuts to hold it in place. You will of course also need a USB HID-compatible board that can take the inputs and output the correct signals through USB; there are many boards available to do this, and as long as it has a USB output it can be connected to the USB panel mount adapter as shown in the example photos. For a simple hack, you can take an old XBox 360 controller apart and solder the Sanwa buttons directly to the button contacts on the PCB, then connect the USB cable to the panel mount adapter.



Issues are used to track todos, bugs or requests. To get started, you could create an issue.


Mini dsc1lt7xgauneycBattyBovine published this design ago