Introduction: Tabletop Bowling Game

About: I am a high school engineering teacher (formerly an engine design engineer) and mother of two little makers who loves developing new projects - both personally and for my children and students to work through.

Looking for a fun way to bowl at home?

This instructable walks you through how to make a completely functional tabletop bowling game. Developed by an avid bowler for a school project, this Arduino-controlled at-home bowling game brings the bowling alley right to your house!

The game works by hooking up photoresistors to sense lights mounted under each pin to tell the game whether or not the pins have been knocked over, which allows the game to keep an accurate score through all ten frames. And as a bonus, the LEDs light up the pins to give them a glowing effect - so turn on your black light and have your own cosmic bowling party!



  • 3/4" wood, plywood, or MDF (at least 5.5 feet long)
  • 1/8" plywood or MDF (at least 5 feet long)
  • 1" x 3" lumber (pine was used for this project)


  • 1 Arduino Uno
  • 2 standard size breadboards
  • 11 white LEDs
  • 11 photo-resistors
  • 11 10k Ohm resistors
  • 1 4-pin I2C LCD display
  • ~ 70-75 jumper wires (This can vary slightly depending on exactly how close wires are to the breadboard and where you place your Arduinos. For the model shown, 73 wires were used.)


  • Table saw (or circular saw)
  • Jigsaw (or heavy-duty utility knife)
  • Palm sander (or sandpaper)
  • Wood glue
  • Clamps (or heavy books)
  • Hot glue gun and glue sticks
  • Mini bowling pins
  • Mini bowling ball

Step 1: Create the Base Structure: Overview

After ordering/acquiring the electronic components that were listed in the introduction, start by measuring and cutting out the structural lane pieces as described in the next several steps.

This project was made using scraps of MDF and pine, but any wood-like materials in the given dimensions and approximate thicknesses should work. Additionally, a table saw is probably the best choice for these cuts since many of the pieces are long with straight edges, but a circular saw could also be used.

Since the lane itself is quite long (more than 5 feet), a Tinkercad model of the individual components was created and included for clarity. The model of the complete assembly is accessible here for reference along with images of the assembled components in the following steps.

The following list gives an overview of all the individual pieces that will need to be cut:

From a 3/4" thick board (MDF was used for this project), measure and cut:

  • Lane
    • 6 1/2" x 5 1/2' (note that is 6.5 inches and 5.5 feet)
      • Note: This will be used as the lane itself, so make sure it is free from dings or dents.
  • Lane Supports (makes two supports)
    • 6 1/2" x 11 5/8" (x2)
    • 6 1/2" x 10 1/8" (x2)
    • 6 1/2" x 2 3/4" (x4)
  • Pin Counter
    • 6 1/2" x 11 5/8" (x2)
    • 6 1/2" x 6 1/2" (x2)
  • Pin/ball catcher
    • 6 1/2" x 10 1/8" (x2)
    • 6 1/2" x 6 1/2" (x2)

From a 1/8" thick board (MDF was used for this project), measure and cut:

  • Pin/ball catcher
    • 1 1/2" x 11 5/8"
  • Gutters (measure and cut one set for each side of the lane)
    • 1 3/4" 5' (again, that is 5 feet)
    • 1" x 5'
  • LCD frame
    • 7 1/2" x 11 5/8"

From a 1" x 3" board (pine was used for this project), measure and cut:

  • Gutter supports (measure and cut at least two sets of the following)
    • 10 1/8"
    • 1 5/8" (x2)

The next four steps will show you how to make each of the subassemblies needed to create the overall game.

Step 2: Create the Structure: Lane and Gutter Assembly

Begin by measuring, cutting, and sanding the gutter support components below. These pieces will make 2 gutter support units.

  • 1" x 3" x 10 1/8" (x2)
  • 1" x 3" x 1 5/8" (x4)

Next, glue the support pieces together as shown in the image above. If you have access to large clamps, clamp the assembly together. If not, place heavy books on both sides of the gutter support assembly to apply pressure to the unit while the glue dries.

Continue by measuring, cutting, and sanding the lane and gutters below:

  • 6 1/2" x 5 1/2' x 3/4"
  • 1 3/4" 5' x 1/8" (x2)
  • 1" x 5' x 1/8" (x2)

Once these pieces are made, apply glue to the top of the gutter support base and place the lane and gutter supports on them (as seen in the assembly image above). If the material you have chosen for the gutters is a bit flimsy or warping slightly, apply a bead of wood glue along the length of the pieces so they are held to the lane for support.

Step 3: Create the Structure: Lane Supports

Begin by measuring, cutting, and sanding the lane support components below. These pieces will make 2 lane support units.

  • 6 1/2" x 11 5/8" x 3/4" (x2) - base
  • 6 1/2" x 10 1/8" x 3/4" (x2) - upper shelf
  • 6 1/2" x 2 3/4" x 3/4" (x4) - side supports

Glue the two side supports onto the base as shown in the Tinkercad image above. Rest a scrap of the 3/4" wood on top of the base before applying glue to the edges of the upper shelf and inserting it between the side rails. Clamp or apply pressure as noted in the previous step to ensure good glue adhesion.

Step 4: Create the Structure: Pin Counter and Display

Measure, cut, and sand the lane pin counter components below.

  • 6 1/2" x 11 5/8" x 3/4" (x2)
  • 6 1/2" x 6 1/2" x 3/4" (x2)

Glue the two side supports onto the base as shown in the Tinkercad image above. Rest the top of the pin counter on the two side supports after applying glue to the top of the side supports. Gently place a book or two on the assembly while it dries.

Next, measure, cut, and sand the display board to the following dimensions:

  • 7 1/2" x 11 5/8" x 1/8"

Before attaching the display board to the pin counter unit, cut a 3" (width) x 1" (height) hole in the display board where you want the LCD screen to be. If you have access to a jigsaw, that is probably the easiest way to make this cut- but depending on the material you are working with a handsaw or heavy-duty utility knife may work. You may want to wait to cut and connect the display board until you connect the electronics and are able to see how far your jumper wires will reach. There is no one correct location for the display screen on the display board, so the screen can be placed according to your personal preference.

When the hole has been cut, glue the display board to the front of the pin counter as shown.

Step 5: Create the Structure: Pin and Ball Catcher

Begin by measuring, cutting, and sanding the pin and ball catcher components below.

  • 6 1/2" x 10 1/8" x 3/4" (x2)
  • 6 1/2" x 6 1/2" x 3/4" (x2)
  • 1 1/2" x 11 5/8" x 1/8"

Glue the two side supports and back onto the base as shown in the images above. Glue the thin piece to the front of the assembly to ensure no components get stuck under your game while playing. Clamp or apply pressure as noted in the previous steps to ensure good glue adhesion.

Step 6: Complete/join the Frame

Once you have the four component assemblies complete, you are all set. You can elect to connect the pieces with glue or nails, but we recommend leaving them separate so it is easier to move the game if you want to play it in a different location. The lane supports should be placed at the beginning and near the end of the lane (as defined in the picture). The pin counter should be placed so that the rear edge of the lane and the rear edge of the pin counter are aligned, and the ball/pin catcher should sit snugly up against the pin counter unit.

Step 7: Prepare the Frame for the Electrical Components

Before the electrical components of the game can be attached, there are several holes that need to be drilled for the sensors and LEDs. We elected to drill these holes after the frame subassemblies were in tack, but you could complete this step prior to the frame assembly if you prefer.

Print the attached templates for both the LED and photoresistor placement.

Starting with the template for the LED's, align the template with the end of the lane and drill holes as follows. For each of the 10 pins, drill a 1/4" thru-hole for the LED's to be fed up through. Then, use a 1/2" drill to countersink a hole from the top of the lane just slightly (~1/32") to help locate and place the pins.

Similarly for the photoresistors, print and align the attached template to the top rear of the pin counter unit. Drill a 1/4" thru-hole in the center of each pin location as shown in the template.

Finally, a 1/4" hole should be drilled on each side wall of the pin counter unit that will be used to house one LED and one photoresistor. For these components, drill a hole 1/2" above the lane and 1/2" from the front edge of the pin counter unit on both sides.

Step 8: Configure and Test Your Electrical Circuit

It's time to take a little break from the frame to focus on the electrical portion of this project, beginning with the circuit wiring.

Since photos of elaborate wiring can be a bit challenging to decipher, we have included a detailed fritzing diagram for the electrical configuration of this bowling game (created using Tinkercad) HERE.

Note: The LCD screen actually used is a 4-pin LCD screen (as opposed to the standard LCD screen shown in the Tinkercad model).

Connect your components as shown in this diagram and upload the attached code to test your circuit and components. To test, activate the sensor shown in the far left of the diagram by rolling a ball in front of it. That photoresistor should sense that a ball has passed by it which will indicate to the game that the first frame has started. When the remaining 10 light sensors are covered (by the 10 bowling pins), the circuit/game should display a score as if those pins have not been knocked down. Sensors that become uncovered will appear to the game as hit pins.

Confirm that your circuit and components are working properly before attaching them to the frame in the next step. If your game isn't working as expected, here is a quick troubleshooting tip to help you ensure all the sensors are working properly and are picking up enough light:

  • Use the attached test code to display the voltage being read by each sensor (using the serial monitor/serial print function) to ensure each sensor is accurately capturing the input from the light. Begin by attaching the sensor you want to test analog pin 1 and run the test code. The voltage you see output to the serial print display should range from 0.5 - 3.0 volts (for each sensor) when covered and uncovered. Too small of a range (for instance only reading from 2.0 - 2.5 volts) will likely result in sensing problems and you may want to swap out that sensor for another one with better performance.

Please feel free to ask questions in the comments if you run into any trouble getting your game to function.

Step 9: Connect the Electrical Units to the Frame

The specific location of the electrical components can vary depending on the length of your jumper wires provided that the wiring in the fritzing diagram in the previous step is preserved. The instructions below explain how and where the electrical components were mounted in this game but if you have a different stylistic preference, feel free to make modifications here.

Begin by gluing the pin-reated components into the frame. In each hole in the lane, align the LED in the center of the hole, below the surface of the lane, and apply a dab of hot glue from the bottom to hold the LED in place. Repeat this process for each of the photoresistors in the top of the pin counter. Finally, glue the last photoresistor in one side of the pin counter (your choice which side) and the last LED into the other side in a similar fashion. Securing the LEDs and photoresistors to the frame with hot glue should ensure they do not shift or move, which could result in misdetection issues.

Next, attach a breadboard to the bottom of the lane to connect the LEDs to the circuit. The breadboard can be attached either with glue or screws, whichever you prefer.

The Arduino itself can be attached to the side of the game for easy access and to connect easily to the photoresistor breadboard that is mounted on the top of the pin counter unit. Like the LEDs, connect the photoresistors to the frame with hot glue for stability.

Finally, mount and connect the LCD display to the back of the display board so it is aligned with the hole previously cut.

Step 10: Go Bowling!

That's it! Your bowling lane is now ready to enjoy. To play, simply power up the Arduino and follow the instructions on the LCD display. HERE is a quick video of us playing 10 frames with our game.

Good luck and we hope you enjoy this project/game. Please let us know if you are able to get a perfect game ...we still haven't beat ours!

Toys and Games Challenge

Participated in the
Toys and Games Challenge