Virtual Pinball Controller for PC with working plunger- "The Redball"
Obliczymy ostateczną cenę na podstawie wybranego pliku. Sprawdzisz ją i zaakceptujesz przed płatnością.
Zapisane na tym urządzeniu.
A custom PC controller for virtual pinball using raspberry pi. Tested with Zaccaria, Pinball FX, and Visual Pinball
- Ocena
- 5 / 5
- Polubienia
- 8
- Pobrania
- 34
- Wydruki
- 2
- Wyświetlenia
- 376
- Oceny
- 1
Aktualizacja u źródła:
Informacje o modelu
- Źródło
- Printables
- Kategoria
- Video Games
- Licencja
- Creative Commons — Attribution — Share Alike
The Redball is a controller for virtual pinball games, using the GP2040-ce firmware and running on a pi-based breakout board. It uses standard arcade buttons and a pinball plunger coupled with a slide potentiometer to provide analog plunging!
UPDATE 24 August 2026- I have added an all 28mm button version to the files- see printing notes. I also created an all button version for those who want to build without a plunger:
The controller uses the amazing GP2040-CE firmware: https://gp2040-ce.info/
Components
Raspberry pi pico OR RP2040 breakout board
Wire
3mm female spade connectors
single dupont connectors
short USB-C to USB-C cable (or cable that suits your board, to connect to passthrough)
8x 5mm M3 threaded inserts
4x 4mm M4 threaded inserts
M3 and M2 countersunk bolts
Printing
Print the case with supports. The standard version uses 30mm buttons for the flippers, nudging, and 28mm buttons for the utility buttons. Update: there's also an all 28mm version. Be aware the 28mm version has a thinner case (3mm) around the front buttons to allow for snap-in buttons to be used,
The lid face down with supports on the button hole only. Add your own custom image in slicer! Pick the version that matches your button size- the standard one has a 30mm button, but there's also a 28mm version.
Print the board caddy that matches your board
Print the plunger receiver at a 45 degree angle, with 25% infill, from PETG (for strength)
Assembly
Ensure your Pi/board has the latest version of the GP2040-ce firmware loaded
Remove all supports
Add threaded inserts to the case- the M4 inserts in the base, the M3 around the rim and for the board caddy in the centre


Insert 30mm buttons to sides, and screw 28mm buttons to front


Attach USBC passthrough to back using M3 screws
Create a daisy chain from one terminal of each button for ground- making sure to leave an additional connector free on the left for the top button and one end free to connect to board

Attach board to caddy using bolts (if using pico, you can do this after soldering)
Using a wire with a connector, connect each button to its respective pin on the breakout using spade connectors- they should just push on to the switches on the buttons. These can be remapped later, but if using the breakout board:

For Pico, solder the wires to the GPIO ports as labelled

Attach the ground wire to a ground on the board. You may wish to glue down or secure wires leading to the right of the box to give the plunger clearance
insert the plunger into the case, then insert the washers. you may wish to use a long M3 bolt to align the washers and provide additional security. Bolt the plunger on using the included nut.
Attach the plunger receiver to the end of the plunger, securing with a short M2 bolt

Make sure the bolt ends up on the left side of the plunger

Bolt the slide potentiometer to the lid of the case with M2 bolts. I put a small strip of foam or tape behind mine for added cushioning

using dupont connectors, using the bottom set of pins in this picture: VCC to a VCC on the board (3V3 pin on Pico), GND to ground or G, and DTA to pin 28
Run your USB cable from your board to the USB-C passthrough
Attach the wires to the up button on the lid, set the slide potentiometer to the back of the lid, line up so the slider on the potentiometer aligns with the hole in the plunger receiver, then screw the lid on to the box
Configuration
Hold the start button (centre button on front) as you connect the controller to the computer
go to http://192.168.7.1/ on your computer. you should be in the GP2040 web configurator.
Go to "Configuration -> GPIO pin mapping" and map the pins to your buttons. I use the below, but you can also use the "map buttons with pad" and press to the prompts. Remember that you want to switch D-pad left and right- pressing the nudge button on the right side of the controller should nudge a pinball playfield left and vice versa. Make sure you SAVE once you've done it.

go to Addons and navigate to "Analog." Enable it.
Map "Analog stick 2" using settings below then hit save at the bottom of the page:

A small inner deadzone I've found reduces any noise/judder when the plunger is in it's default position. The Auto calibration will ensure it resets to its base position when connected.
Set the controller to "Xinput" and then Reboot, selecting "controller." Your computer should detect it as a controller. Test your inputs at https://hardwaretester.com/gamepad
It will work on a PS5 (in Xinput mode) with a Brook Wingman FGC 2- make sure you configure a hotkey to be the "guide" button and set the controller up as an "assistive controller"
Then, happy pinball!