Today in class, we finished our launcher. it uses two springs attached to a smooth screw. a bumper is attached to the flat end while a handle is screwed onto the screw end. additionally, there are washers and a wood stabilizer for support.
We went on a field trip to a pinball arcade to play them and take notes. Me and my partner chose to investigate the specific components of a Star Trek Pinball Machine
The launcher is used to send the ball onto the playing area. it works by pulling back a handle to spring launch a pinball to start the game. The launcher itself is a metal rod with springs attached that stores energy when you pull it back, then releases it when you let go launching the ball.
The scoreboard is an electronic component that displays moving graphics as well as events and your score. the scoreboard is set so it will display whenever a ball is lost, and whenever you get a bonus or hit a special target
the ball return is the area at the base of the machine, near the pinball hitter and the flippers. It's purpose is to return the ball when it gets the the bottom of the machine. The machine is slanted towards the player and the ball return is slanted to the right. This makes the ball roll back towards the launcher.
The lighting plan of the is a main triangle is the center which shows what level you are one, as well as arrows and signs showing areas
The theme of the pinball machine we investigated was Star Trek, the board background and many mechanical pieces are all Star Trek themed.
The scoring system is the system that adds point to your total score. Every time you hit a target or bumper you get a certain amount of points, and this is where they are shown.
The flippers of the machine are the most important part of the board becuase it is how the player moves the pinball once it is launched. When the pinball get near the flippers, the player can hit a button on the side of the board to activate the flippers and launch the ball back up the board.
The targets of the pinball machine are how you score points. over the course of a round, hitting target with the ball will get you points or unlock levels and new ways to score points. The targets can come in many forms like switches, bumpers and buttons. Usually the effects of hitting the targets it shown on the scoreboard.
The ball guide is a special path that gives the ball a special route around the machine. The player can get onto the special route by hitting the ball up the ramp. Once it goes up the ramp it will slowly roll back down the ramp until it stops, where it will then be launched back onto the board
In this image you can see a little ghost. The ghost is connected to a servo. This servo moves once the player has completed a certain action or reached a certain amount of points.
when the player hits the ship in the center of the board, a spring is released causing the ship to wingle and giving you some points.
The LED lights on the board are used to signal when you score, or to show which level you are on
Today in class, we finished our scoreboard using feedback provided by our teacher. the scoreboard fits with our theme and counts the score and ballcount correctly. When a change in score or ballcount is called for in the code, the function boardupdate() is also called, which resets and adds new values to the scoreboard. additionally when you loose the game, a message will pop up prompting the player to hit both bumper switches at once to restart the game.
Our ball return uses the ball to complete a circuit, which tells the Pico computer to lower the ball count. One point of our ball return is that the electrical circuit is run through the screws that hold the ball count down. This makes the wiring of the ball return very low profile.
One of the most important pieces of our pinball machine is our flippers. The purpose of the flippers is to launch the ball to the top of the board. Our board is designed to have two flippers with a corresponding switch for each. when the switches are activated, an if statement in the code detects this and tells the solenoids that hit the flippers to activate for the duration the switches are being pressed.
When designing our flippers, we had to iterate on our designs to find a design that would best fit our requirements and constraints. For our first prototype, we made a testbed out of scrap wood to we could work with the electronics easier. Once we had a working prototype, we added our design to our new board. After testing, we discovered our flippers were not that powerful, so we did testing with different springs to decide which ones would work best. We also collaborated with our classmates to brainstorm ways to increase the power of our flippers.
For most of the beginning of 2025, I have been working independently on building targets for the pinball machine.
The targets need to be small enough to fit reasonably in the machine, and need to use switches to increase the score when hit by the ball.
Due to time constraints, I decided to create my targets using a 3D printer instead of making it out of wood.
I started out making the basic shapes of the target, with functionality to hold pieces together. This didn't work well, so I worked on adding points to better attach the switch to the target. After iterating and testing several prototypes, the final product is now low profile, easy to make, and easily replaceable as well as fitting all constraints put forth by our teacher.
When the switches are activated, the player gains 50 points, but also adds +1 to a variable called streak, which is used later for the servo component.
In class we have been working on a servo component for our pinball machines. The objective of this component is to change the ball's direction when it is activated. Our servo component meets these criteria by opening a gate when a certain amount of targets are pressed down without loosing a ball. We created the servo component by first prototyping several designs on a second board. Once we had a workable design we installed it and some new ball guides next to our bumpers.
We created 3 bumpers as an extra source of points for the game. The bumpers work in tangent with the servo component by being difficult to access unless the servo gate is open. The bumper detect the ball in a similar way to the ball return; by using the ball to complete a circuit. when the ball is detected, a solenoid activates which slams a cone down on the ball.
We added neopixels to our pinball machine. The purpose of the neopixels is to add effects when something happens on the board. I designed a code function by myself using the Asyncio library to make it easy to add customizable blinking lights that work without interrupting the main code. There are three sets of lights on our pinball machine, the bottommost blinks red when you loose a ball, the middle turns green when you activate the servo component, and the top which encircles the bumpers blinks when the bumpers are set off.
Our unique mechanical component is an unpowered spinner that slows down the ball. We developed it as a response to user feedback that the ball moved to fast at launch.
This is our final pinball machine. It is fully playable with complete interactions between all electrical and mechanical components. I think I am most proud of how me and my partner Justin created unique and effective components despite being on a limited time frame. I think I am most proud of my wiring skills. I've learned a lot more about wiring during this project, for example I have increased my soldiering and wire management skills. This project feels like it is a combination of all of our projects. There has been much more programming like in the skittle sorter, but we are also learning how to use more mechanical components like in the skittle sorter and robot car.