The flow diagram shown here displays a high-level flow diagram for the software subsystem. This method was largely in-line with our initial design concept, with functions to reset and retract the launch system, reload a beanbag, adjust the launch distance, and interpret the Serial command inputs. Our launch distance adjuster was changed to a rack-and-pinion based method rather than a lead screw, so the actuation provided by this function was changed, and we did not include a laser rangefinder in the final prototype, though the software still includes functionality to support one.