User Tools

Site Tools


Hal-Con 2015 Pinball Project

Stretch Goals

  • Cabinet Shaker Motor
  • Playfield Incline Motor
  • Nixie Tube Score Multiplier

Note: While this wiki is and probably will continue to be horribly out of date, we are working on the pinball project pretty much weekly (note added July 2015).

We're looking at using a William's Space Shuttle as a donor game. This game is from 1984, and the playfield should be 20.25“ wide and 42” long.

We also have a complete three-inline drop target bank as something to get our feet wet with. The coil on the reset solenoid is a Bally 26-1900 with a measured resistance of 20.5 Ohms. At 48V that should allow a current of 2.34A. Some of the leaf switches need a little adjustment.

We also have a brand new 48V 7.5A switched power supply on the way.

Here is our schedule:

  • Jan 08 - Kickoff/Meet-and-Greet
  • Jan 22 - Design Brainstorming Session
  • Feb 05 - Design Brainstorming Session Take 2
  • Feb 19
  • Mar 01 - Met to dewire the Globetrotters board, remove the lights and wire up some of the solenoids with Peter's board.
  • Mar 05
  • Mar 19
  • Apr 02
  • Apr 16 - Planned an ambitious, moderate, and basic version of the playfield.
  • Apr 30
  • May 14
  • May 28
  • Jun 11
  • Jun 25
  • Jul 09
  • Jul 23
  • Aug 06
  • Aug 20
  • Sep 03
  • Sep 17
  • Oct 01
  • Oct 15
  • Oct 29

Thoughts on Electronics

The plan we have settled on is to have a linux-based single board computer as the main game play, sound, and video engine (aka kingpin). At this point we are looking at the Raspberry Pi since most of the team already have a few but other options exist at a similar price point if the Pi turns out to be unsuitable.

This kingpin will be connected to several Arduino UNOs using USB. UNOs already have USB infrastructure which, with one or more USB hubs should make communications fairly straightforward.

The Arduinos will have custom designed shields allowing them to read twelve inputs (up to six analog) and control five solenoids (up to three with PWM). In software, the arduino will be able to directly translate a change in input state to a solenoid trigger. For example, we will be able to instruct the an arduino to translate the closing of a pop bumper switch into triggering the corresponding solenoid. The arduino will also send a signal back to the kingpin for gameplay and scoring.

Events that require delays (like rolling up the score for a saucer collect bonus, or playing a music clip) will involve the kingpin. In this case, the arduino will not trigger the solenoid immediately, but only send the signal back to the kingpin. Once the event is completed, the kingpin will send a signal back to the arduino to trigger the solenoid and put the ball into play.


  • Arduino UNO (ATmega328 based)
  • Arduino MEGA (ATmega2560 based)
  • Arduino DUE (ATSAM3X8E based)
  • others?


Pinball machines typically use an NxM switch matrix (similar to a keyboard) to manage their inputs. These use N+M lines to identify which switches are open and which are closed at a given moment.

Possible options include:

  • use uC lines directly (only really feasible on MEGA or DUE with their huge supply of GPIOs)
  • use a second uC dedicated to managing input. (could communicate with the brain serially and asynchronously)
  • use 74HC595 and 75HC165 and some SPI (this would give us 8×8 or 256 switches and SPI is fast!)
  • use one or more bus expanders (like MCP23017 or its SPI counterpart MCP23S17)


Pinball solenoids are the ultimate in inductive loads. Resistances in the 3-30 ohm range, and drive voltages around 50v mean currents measuring in several amperes! So, at some layer, we will need transistors (and fairly beefy ones) to drive them.

Options include:

  • Power Driver 16 This one costs around $100US, and requires a separate supply. However it appears to use really fast (8MHz) RS485 to communicate. They offer a fairly thin arduino example, which uses SPI (but only the MOSI pin) and an external RS485 driver board to fake RS485. That means that we couldn't use SPI for other things.
  • Ultimate Solenoid Driver Board It is designed to be a drop in replacement for a similar board manufactured by both Bally and Stern. This means it has the power supply on board, but requires a transformer to make work. Also there doesn't seem to be even less documentation for this board compared to the one above.
  • Build our own. I've built a single transistor prototype using a bit of perfboard, a FQP30N06L a 100ohm resistor and a TVS diode on the gate for ESD protection. This solution has the advantages of being completely open source, requires little in the way of communication electronics (high is on, and low is off), and allows us to use PWM to control the solenoid's strength. We would have to design our own PCB and have it manufactured, and where the board would be dealing with such high current, I'd want to get it inspected by someone. Here is a proposed design.


I think the clear option in this category is the WS2812 (NeoPixels). The ability to control the color just makes these guys the obvious choice in my mind. I got two 5m strands of 50 pixels each and they work like gangbusters.


Find a local artist who might be interested in promotion.



  • Nelson (ball catcher, multiball opportunity)
  • Fat Apollo (possibly a pop bumper)
  • Warp Speed Pass (drop target in front of a ramp)
  • Sound (Fat Apollo?)
  • D20 as Score Multiplier (Dragon guard?)
  • Mario Warp Pipe
  • Bridges
  • Shooter lane con-goer lineup (rails?)
  • Cartoonish artwork (talk to Hal-Con comics coordinator Sam Bonin)
  • Nelson legs
  • Volunteers make the 'Con (super important!!!!) Meeple volunteers.
  • Oled displays below the drop targets allow rethemed drop targets
  • Costume contest drop targets
  • Neopixel Catan triggered by kickers
  • One-Fingered Deathpunch using flipper buttons.
  • Teleporter.
  • Pop cultural references limited to display/animation
  • Ball Saver (“He was only mostly dead!!!”)
  • Tilt (Lightswitch rave from Strongbad The system is down)
  • New library has a sound studio.
  • Futurama head-in-a-jar
  • Konami code
  • Rick Roll
  • All your Base are Belong to Us
  • Khaaaannn!
  • Coooooonnnn!
  • Ball Capture should use Galaga Capture noise.
  • We should use the cabinet area for a guest leaderboard. Let the guests play the table a few times and then have them sign the table and write in their best score.

Table Elements

  • Cabinet
  • Power Supply
  • Backbox Display
  • Playfield
  • Toys
  • Gameplay Software (scoring)
  • Control Electronics
  • Control Software
  • Logistics


Setting up a Raspberry Pi

Cabinet Work

The cabinet pieces, work needed and estimated costs.

Back Box

Sand, fill with Bondo, prime and repaint. Some of the corners are in pretty rough shape. We may need to rebuild this, but we'll try to salvage it first.

  • Top Lock - There is no top lock on the box. Do we want to add one?
  • Backglass - We can scrape the backglass with a stainless razor blade and reuse it. We'll need to replace the backglass if we move the speaker from the backbox, as the speaker panel takes up the whole lower portion of the backbox.
  • Hinge - the back is hinged, for transport. There's a clasp accessible outside the box. There should be 2 bolts inside to secure the backbox to the cabinet. We need to make sure those are there, otherwise anyone can send the back smashing into the cabinet.


Sand, fill with Bondo, prime and repaint or apply wet decals.

  • Side Rails - drill out the nails. Polish the siderails. Replace nails with more nails, or decorative stainless hex or phillips screws.
  • Lockdown Bar - We swapped out the lockdown bar for a nicer one. We need to clean and polish it. Might need to adjust the clips slightly.
  • Playfield Glass - Replace (scratched) with tempered using John's contact.
  • Flipper Buttons - We have new ones, currently on the test rig
  • Start Button - replace, or at least add a bezel around it.
  • Coin Door
    • Rechrome the coin slot.
    • Polish the rest (it's stainless).
    • There is a hole that needs filled or disguised.
    • Replace the lock (we don't have a key for the current lock) (Yes, we do! the old key was broken off inside the barrel)
    • Replace the “Insert Coin” square inserts with OLED displays that could randomly change to “Insert (credit|blueback|space buck|chronodollar|latinum|quatloo|dollarpound|druggat|etc.)”. We can see how likely this is once we take possession of the cabinet.
    • It might be cool, but ambitious, to cast a new coin door part (the part that sticks out), replacing “Williams” with “Halifax Makerspace”. This should maybe be a “flex goal”, if we find ourselves with too much time prior to Hal-con.
  • Ball Launch - Chris has new ones
  • Legs - Replace. $60-100 total, probably. We can try to sand and paint the old ones first.


“Before” pictures of the Space Shuttle cabinet.
Pictures of the work in progress can be found at Hal-Con 2015 Pinball Project Images.

= Resources =

bally pop bumper cap has two 1/8“ screw holes that are on 1 7/8” centers

Stuff to deal with power wise:

Stuff to deal with noise on the switch inputs:

  • filtering on 48VDC (Low pass filter to eliminate PWM frequency)
  • 4.7-1K pullups on switch inputs
  • filtering on arduino power
  • tidy up the wiring
  • heavier ground wire
  • Choke/toroid on flipper wires

State of the Project


  • Finish sanding and priming (There are a few places where the grain is showing through the primer, we would like to clean those up)
  • Legs (We have the old set that came with our donor machine that need to be:)
    • Cleaned/prepped
    • Primed
    • Painted
    • Clear coated
  • Playfield glass (The donor glass is fairly beat up. A new sheet would be very nice to have.)
  • Coin Door (Again the existing door from the donor machine needs some love:)
    • Unbending
    • Polishing
  • May need some new mounting hardware (carriage bolts and the like)
  • Internal 120V power distribution
  • Need to ground all external metal
    • Side-rails
    • Lock-down bar
    • Coin door
    • Legs


  • Raspberry Pi (mainboard)
  • Arduino
    • Drop target OLED software
    • NeoPixel Lighting


(This is by far the critical path)

  • Layout (There will be a forthcoming document for consideration and approval by Hal-Con)
  • Artwork
  • Fabrication
    • Blank plywood (John Greatwich has generously offered us one of his blanks for the final machine)
    • CNC milling (eyecandysigns got back to me, we are working on establishing a time-line)
    • Glue/epoxy the light lenses into the playfield (we plan to use only white or clear lenses and let the neopixels provide the colour)
    • Sanding
    • Sealing (Not sure if this is a thing, need to ask John)
    • Printing (back to eyecandy signs)
    • Clear coating (This will happen at John's place, he has the infrastructure)
    • Install
      • Toys
      • Lighting
      • OLED Drop Target Displays
      • Wiring (so much wiring)
    • Testing
hal-con_2015_pinball_project.txt · Last modified: 2015/08/02 10:59 by spierepf