Our software team develops the software that controls the robot. The software controls every aspect of the robot, ranging from the very low level, at which state estimation algorithms are implemented so that our robot knows its state, and control systems are synthesized to accurately track references to achieve desired behavior. At a higher level, the software plans out the robots motion and mechanism use during autonomous, and processes the driver input during teleop to actuate the robot’s mechanisms in the desired manner.