Introduction: DIY Skee Ball Machine

Picture of DIY Skee Ball Machine
The skee ball machine is a wonderful thing. The simple experience of rolling a ball into a target is so freakishly satisfying that I used to play as much as I could as a kid at the local amusement park/mini-golf course. The sound of the rolling ball on the ramp, the pop as it launched in the air, and the bouncing as you hoped it would hit the 50 or even the 100.

So when the idea for doing a bigger project came up, I jumped at the chance to make a DIY version. I was amazingly lucky to get a lot of help from the folks at Because We Can who did the design and fabrication of the machine on a Shopbot.

Note: this version was made for Maker Faire and as such has a few loose ends. It survived Maker Faire (mostly), but needs some more work to be bullet-proof.

Step 1: Get Stuff

Picture of Get Stuff
  • Arduino
  • Processing
  • Illustrator (or other vector graphics program)
    • 7 sheets of 3/4" plywood
    • gorilla tape
    • netting
    • wood screws
    • paint
    • Balls. These are balls from the ice ball game and were bought on eBay (search for "ice balls skee") for $10 each

    Step 2: The Four Main Pieces

    Picture of The Four Main Pieces

    These are the four main pieces of the skee ball machine. These can be easily taken apart so that the whole thing can be moved in a 10' U-Haul truck. The ramp slots onto the cabinet and doesn't use any fasteners to be attached.

    The Revit files for the skee ball machine are attached. With this design, the pieces were cut out of 3/4" ply on a ShopBot. The assembly is straightfoward as it's a tab-and-slot design.

    Step 3: The Playfield

    Picture of The Playfield

    The pieces for the playfield are straightforward. Most of the pieces fit together as in the picture above. The kicker at the end of the playfield is made up of several s-shaped pieces of cut plywood all glued together.

    The ramp itself is covered with cork and the front end of the ramp has a metal bracket to protect against wayward throws.

    Step 4: Cabinet

    Picture of Cabinet

    Here is an exploded view of the cabinet. Again, the assembly is very quick with tabs slotting the middle pieces into the sides. A few screws are used to keep everything more snug.

    One thing that we didn't add was a shield for the display. We tested the machine out by throwing the balls in a regular bowling fashion and never came close to it. When kids or excited adults played it, however, a lot more force was used and the balls would pop up enough to hit the display. Kids being kids, this became a game of its own and one of the displays broke right before the end of Maker Faire.

    Step 5: The Electronics

    Picture of The Electronics

    The electronics for the skee ball machine are refreshingly easy and simple. Each target has a 5cm distance sensor attached to it. As soon as anything gets within 5 cm of the sensor it signals the Arduino and the hits gets logged.

    Each sensor is running off of the 5V on the Uno and is also sending a digital signal to the Arduino. There's no pulldown resistor. That's it.

    As for the Arduino itself, it's running StandardFirmata. This can be found in the Arduino software under Files>Examples>Firmata.

    So what this does is just turn the Arduino into an interface for the computer. You can certainly put the entire program with an LED display for the score and this was an initial direction for this project, but I wanted to make the display a little fancier and have some more fun with it.

    All of this is held in place by Gorilla tape which looks odd. This is not meant to be the final version. All of the pieces only came together the day before Maker Faire. The goal was to survive Maker Faire and that worked out on the electronics side. The next version will have 3D-printed brackets and shield for all of the electronics.

    Step 6: Just Add Processing

    Picture of Just Add Processing
    The Arduino solution would be great for recreating the classic skee ball machine. In fact, I did that in the first hour of this project. But then I got bored and realized "I don't have to follow the original rules!"

    Seriously, if we're going to make our own game, then lets make the game our own.

    By using software that displays information on a monitor you're free to do so much more with it. Instead of each hit giving you one single set score you can add more effects and events. Like these:
    • Combos - Hit a group of targets for a special bonus score. I added the Up the Line combo (10 - 50) and the Around the World combo (all targets)
    • Streaks - Hit the same target again and again to get more points each time. Doesn't work on the 10.
    • More specific combos - Two combos only work by hitting two targets in a row in the right order. I added the Don't Panic combo (40, then 20) and the Because We Can combo (10, then 100)
    I tried showing just the score with these effects happening, but people just got confused. Making it all visually apparent was crucial.

    In addition to more points, the big combos (Up the Line and Around the World) also had a bonus ball. If you hit a specific target after the combo you'd double your combo bonus.

    Here are a couple other features added to the game:
    • Game recap - At the end of the game there's a display of what targets you hit during the whole game and what your cumulative score was
    • Random backgrounds - The backdrop was randomly picked from 9 different images
    • Sound effects - fun!
    • Score bounce - the more your score increased after a hit, the more the score on the screen would "bounce." Getting over 1,000 points* would make the score expand well past the edge of the screen.
    And that was just a short list of things I wanted to do before I ran out of time. Even so, it's already way past the original game design.

    To run the game, download the attached Processing sketch and plug in an Arduino with StandardFirmata on it. My experience with Firmata was that it can be a little finicky in pairing the Arduino with the laptop so make sure you are getting basic features to work there with a simple test first before trying this out.

    Notes on attached sketch:
    • The sketch is designed to be run on a HDTV screen and can be changed from a 720p resolution to a 1080p resolution by changing the monScale variable to 2 or 3
    • The sketch resets the game after 10 seconds or so. This is because I was having issues with the arcade button, but can easily be changed to add it back in.
    • Apologies in advance for the messy code. This is my first Processing sketch.
    *the max score in this version is 7,777 and is achieved by only hitting the 100 targets. We never got close to seeing that happen in real testing, but it's there!


    happyalegrias (author)2013-10-11

    Is there no way to get an exploded diagram with basic dimensions? I don't have Revit or anything like it. But I do have the ability to cut the parts myself on a water jet machine if I can draw the parts. Some basic dimensions would be helpful.

    You can get Revit free for a month.

    kodex (author)fungus amungus2013-10-14

    First of all, let me say how impressed I am with this instructable! There was clearly a fair amount of time that went into this machine, and it's clear that everyone involved worked very hard on it. I love the overall aesthetics of the machine as well as the Arduino integration.

    That said, I would like to build one of these for an upcoming course project (the deadline of which is mid-December). I'm an EE student and this would certainly make good demo of what we're doing in my microcontrollers class. Anyway, the fact that the files are uploaded in native Revit formats makes them very time-consuming to get to the point where I can actually send them out to get cut; Revit it not a standard tool in the manufacturing industry.

    Would you please try to get the person who created these files to export the different parts separately as either DWG, DXF, or STL files? This would allow other people to take them directly to a machine shop/makerspace to get them cut. Not providing de facto standard file types hinders others' ability to benefit from and enjoy your hard work. If this is not possible, I will gladly bumble my way thru Revit to extract usable files and forward them to you so that others may use them as well.

    auburnate (author)kodex2017-08-08

    Did you ever get the shopbot files or make them?

    lauraroberts011 (author)2017-06-05

    Can someone convert the files to a cadd .dwg file for me so we can try to build this at our school?

    wolfew (author)2017-03-03

    I don't have a shopbot. Can this be built with conventional tools?

    AngelaL98 (author)2016-08-20

    is there vcarve pro toolpaths for this?

    Deadlocked2 (author)2016-05-22

    I like the cardboard mini one better. It is a great idea.

    JustinZ11 (author)2016-05-11

    Hi! I've been building a skee ball machine similar to yours, and could really use some help wiring the 7 sensors, start button, and servo to release the balls at the start of the game. I've fairly handy with would, but not so much with Arduinos... You're help is greatly appreciated!

    Cutilikewhoa (author)2016-03-03

    I love the colors and design! I would love someone to make it for me lol. How much would it cost for me to make it?

    mjh2901 (author)2015-05-17

    Hmm can this run on a raspberry pie?

    fungus amungus (author)mjh29012016-01-15

    Now that Processing runs on RaspPi I would only do this on that if I was to do it again. The Arduino was only being used for its IO anyway.

    fungus amungus (author)mjh29012015-05-19

    This can be recreated on a Pi. I was originally going to use a Beaglebone Black, but was having issues with it running the sketch. Since I was running out of time I just used my laptop instead.

    As far as the sensors, any of the choices out there (Arduino, Pi, BB) can handle the inputs. The scorekeeping is trivial as are the combos. The only thing I didn't have time to do are the graphics.

    andaloons (author)fungus amungus2015-05-22

    I am currently working on a RPi version in cunjuction with an Arduino instead of a laptop.The skeeball machine itself will probably be about half as long as the one in your instruction. I'm glad to see you are still responding to messages here. Thanks for the great inspiration! (My last RPi build was a bartop retroarcade!)

    Why would you combine an RPi with and Arduino for something like this? The RPi has more i/o ports and being a full Linux computer with multiple graphic output options means you can code I any high level language you are comfortable with and drive the display all in one.

    Furthermore, I'm yet to see any project that combines an RPi with an Arduino in a sensible manner.

    I know exactly what you mean. I have also yet to see any project that legitimately needed two ardinos in one physical device. (Although I have seen projects involving physically separate devices, which is a perfectly legit use case for having more than one controller.)

    fungus amungus (author)andaloons2015-05-26

    Nice, I'd love to see how that goes. Since there is interest it would be good to make a DIY Skee site to collect all of the variations. I'd make it myself if I had the time.

    andaloons (author)fungus amungus2015-06-04

    I'm not a very good coder; with that said do you know what changes I would need to make to the application file to make it work with an ARM processor? It looks like it pulls a bunch of libraries and when I attempt to run the linux32 on raspbian I get several exceptions:

    Exception in thread "main" java.awt.HeadlessException:
    No X11 DISPLAY variable was set, but this program performed an operation which requires it.
    at sun.java2d.HeadlessGraphicsEnvironment.getDefaultScreenDevice(
    at processing.core.PApplet.runSketch(
    at processing.core.PApplet.main(
    at freeskee.main(

    smithmi8 (author)andaloons2015-11-09

    Were you ever able to get this running on a RP? I am new the RP and Arduino world and Love to make this project for my kids. I downloaded the files, but I have not made sense of them all yet

    andaloons (author)smithmi82015-11-19

    Nope. I used another instructable instead. It was just getting too frustrating!

    Good luck! If you happen to figure either one out with a RPi I'd love to hear about it!

    BrianH130 (author)2016-01-13

    Awesome Project!!

    Some suggestions on the "combos" (which is a really cool idea btw)

    -have a "combo counter", kinda like the yahtzee format, so like a combo tree, so when you land the first of a possible combo, it lists all possible combos from there.

    -have a point chart by the start button

    -use "straight" instead of up the line? kinda like poker

    -add "full house":2 in one score, 3 in another

    -3,4,5 of a kind? you have those in "streaks", but i think it might make more sense like that.

    -come up with a cool name if you get all 7 balls in one target (kinda like a yahtzee) maybe another round of balls?

    fungus amungus (author)BrianH1302016-01-15

    That'd all be cool and easy to implement. This machine is long gone, but if I was to go back to this project I'd do it as a pure RaspPi project since it now supports Processing. Then can just use the RaspPi IO.

    mjh2901 (author)2015-05-17

    I don't have the space to store the machine but, Thanks to you I am planning to build the board with the holes and electronics. maybe design a stand to work with bean bags. The real idea is to work on the electronics, will start with your code, maybe spend time trying to come up with brackets and good ways to hold the electronics and make them repairable. Then if I can ever find a space to store it, build the skiball machine. I love the full machine, saw something similar at maker faire this year (didnt see all the booths so maybe missed this table?)

    gargoyle169 (author)2013-10-01

    As I literally live 75 miles away from the nearest make shop or any open shop bot, I was wondering if you could "port" the drawings so those of us who've mastered the original 'shopbot,' aka the router, could have a go at a skee ball machine.

    I could if I knew more about Revit. Let me see if I can get more accessible files out of it.

    isaacbeus (author)fungus amungus2015-03-25

    Do you have ai or dxf files?

    Gyvven (author)gargoyle1692014-01-13

    We're in the process of building this ourselves. We have the Rings cabinet built already and should have the playfield finished in the next month or so. Probably without cork on the ramp, maybe rubber or something similar.

    I made PDFs and DXFs of all the individual pieces, and fixed a couple of errors (a couple missing holes). We used these to plug into our 4x4 shopbot and had to figure out how to index the pieces that were longer than 4'. Not an easy task.

    If you want a copy of the files I can send them, just PM me. The PDFs don't have piece counts, and they need to be scaled up 4 times, the DXFs have all the piece counts and are accurate exports from the Revit model.

    isaacbeus (author)2015-03-25

    Who has these files in a ai or dxf format?

    andracke (author)2015-03-13

    Can any help me with information on the shopbot files? I have a group of hs manufacturing kids that would like to make this as a project.

    ccbarr (author)2014-03-01

    Is there anyway to receive more detailed information of your Arduino instructions? Thanks - looks great!

    5gamesuspension (author)ccbarr2015-01-16

    did you find anything?

    5gamesuspension (author)2015-01-16

    I'm looking for a step by step guide to setting up the electronics for use and how to add numbers and different colors/fonts...


    5gamesuspension (author)2015-01-16

    Are there any detailed instructions/steps for a beginner to set up the electronics and displays, how to customize, etc...??

    gmonroy (author)2014-12-20

    Wonderful !!! Thanks friend!!!

    jshimon (author)2014-04-18

    I'm having issues getting the software side of this figured out. Has anyone successfully gotten that working? I PM'ed OP but did not recieve an answer.

    Rad racer8 (author)2014-01-17

    Hey was just wondering what degree angle the wood with the holes in is at? Cheers

    p.s cool design

    jeffspace2002 (author)2014-01-14

    Wouldn't it also be fun to have a device to measure the speed of the ball? I really enjoyed your project, lots of really cool ideas! Thanks!

    tpardue (author)2014-01-02

    I was wondering where did you get the cork and how did you secure it to the ramp?

    jrinvelt (author)2013-11-25

    Anyway we could get the shopbot files? I think I can get Revit to DWG, but the next step might be beyond me.

    AJMansfield (author)2013-10-01

    Revit? How would you use Revit to create something like this? Revit is only for architectural renderings (it was never originally intended to create build-able models, either). What CAD did you actually use?

    It was actually Revit. I didn't make the file, an architect did.

    It's still the wrong piece of software for the job.

    Gyvven (author)AJMansfield2013-10-15

    Tell that to this guy: He created an elephant completely in Revit.

    I use Revit everyday and I'm just as happy modeling in it as in some of my other modeling software. Sure, it's not as robust as some but for this project I think it would be great.

    Is it still wrong if the results came out right?

    Well, there is that. The main problem with using something like Revit for this is that it encourages Autodesk to add misfeatures (like the ability to do this) to their programs, making it all that much harder to use it for its real purpose when one needs to. This is actually a quite serious problem, as exemplified by the current Revit itself, which (as I said), was only ever intended to be used for architectural renderings, but which now has a large number of 'extra features' that get in the way, and give the user the illusion of being able to actually design a whole building with it.

    AJMansfield (author)AJMansfield2013-10-02

    And then, of course, company managers see the software, get conned into it by that illusion, and then the real engineers have to use it, rather than an actually good BIM program.

    AJMansfield (author)AJMansfield2013-10-02

    I like the results of your project, though. I wish I had my own one now...

    Thanks. Me too. This is currently in storage. Too big for our office and way too big for my house.

    Perhaps, but this is not a complicated project and the person who designed it used the software that he normally uses for architectural purposes. I doubt that skee ball design needs will be driving forward changes at Autodesk. I see what you mean about a greater problem, but this is a tiny tiny subset of that.

    Chiana_Rei (author)AJMansfield2013-10-02

    May be but people have been using the "wrong software" for years and getting great results, otherwise we would not have a maker sub-culture.

    About This Instructable




    Bio: I like to make things for the internets. I also sell a pretty cool calendar at You'll like it.
    More by fungus amungus:3D Printed US Population MapLight Painting With an IPhoneSuper Bright RGB LED Bike Wheels
    Add instructable to: