The self-calibrating launcher consists of a catapult powered by a DC motor, nine target pads that can detect when something lands on them, and an Arduino handling the system’s logic and controls. The goal of the system is to be able to launch a metal ball at a specified target pad without knowing the proper input value to do so ahead of time. The launcher has to calibrate itself to use the proper input value to launch the ball the appropriate distance. In order to do this, the system uses the target pads to figure out how far off the ball was from the desired target pad and makes adjustments.