Push-Pull USB Arcade Spinner
thingiverse
Here is a push-pull spinner that I designed for my full-sized MAME arcade machine. See it in action here https://youtu.be/APumu_h8S0E. The spinner and micro-controller setup are based on a build I found on YouTube by Joe W. https://youtu.be/RsdFCMazzgI. This works great for a lot of spinner-based games in place of a top-fire joystick button. Pressing the spinner down and pulling it up will trigger joystick button responses, keyboard key presses, or mouse button presses, depending on which sketch is used. In the game ".50 Caliber", I have Push mapped to Fire and Pull mapped to Grenade. In "Discs of Tron", it's used for aiming high or low. And it’s also a great regular spinner, too. “Tempest” is no fun with a joystick! The spinner itself is made from a 2-phase, 5VDC incremental rotary encoder wired to an Arduino Pro Micro, which the system sees as either a mouse, mouse and keyboard, or mouse and game controller, depending on the Arduino sketch used. The Arduino sketches are available in the files section. The joystick version of the sketch uses the Arduino Joystick library, which can be found at https://github.com/MHeironimus/ArduinoJoystickLibrary. You'll need (2) small micro-switches (1/2"L x 1/4"W x 9/32"H), a 600P/R 2-phase 5VDC incremental rotary encoder (like this one www.amazon.com/gp/product/B00UTIFCVA/), an Arduino Pro Micro development board, and a solid aluminum or steel volume control knob with 6mm hole and set screw (44mm x 22mm is a good size). The heavier the knob, the more free spin you’ll achieve. You'll also need a 1/2"dia x 1-1/2"L compression spring, small zip ties, (3) M3x8mm button head screws, (4) M4x20mm screws, (4) M4 nuts, wire, wire cutters, solder, soldering iron, and shrink tubing. All printed parts except for "spinner_mounting_plate" should be printed in PLA or any stiff plastic filament. I used Sunlu PLA Plus. The mounting plate MUST be printed in a flexible material to allow the up and down movement. I used Lodesign TPU. ---UPDATE 1/29/2020--- Added 2 new Arduino sketches (push-pull_spinner_keyboard.ino and push-pull_mouse_buttons.ino) to eliminate the joystick buttons and replaced with keyboard keys or mouse clicks instead. This allows it to be used in RetroPie without any major configuration changes. By default, Push is KEY_LEFT_CTRL (or MOUSE_LEFT in the push-pull_mouse_buttons.ino sketch) and Pull is KEY_LEFT_ALT (or MOUSE_RIGHT in the push-pull_mouse_buttons.ino sketch). These values can be changed in the sketch to any keyboard keys (or mouse buttons) you want. I've put a lot of time and effort into this design. If you find the push-pull spinner useful, I would sincerely appreciate a donation. I'm not able to work due to health issues and I have very little income so any amount would be very beneficial to my family and me. Thank you. ---UPDATE 1/30/2020--- Resized the captured nut slots on PPR_base.stl for better fit. ---UPDATE 1/31/2020--- Lowered the Trigger arm a little bit (PPR_Trigger_lower.stl) to allow for easier adjustments. Modified code for "push-pull_mouse_buttons_2.ino" for smoother operation (replaced Mouse.click with Mouse.press and Mouse.release commands). Also modified keyboard emulator code to work much better. Changed file name to "push-pull_spinner_keyboard.ino". Changed joystick sketch file name to "push-pull_spinner_joystick.ino". ---UPDATE 2/3/2020--- Resized the template to 3-1/8" x 3-1/8". ---UPDATE 2/5/2020--- Resized the Trigger for better stability. ---UPDATE 3/11/2020--- Switch stability improved. Added detents to the base and switch housing to provide more secure micro switch positioning.
With this file you will be able to print Push-Pull USB Arcade Spinner with your 3D printer. Click on the button and save the file on your computer to work, edit or customize your design. You can also find more 3D designs for printers on Push-Pull USB Arcade Spinner.