Teaching robotics to undergraduate students requires a course framework that allows students to learn about robotics in stages, without being overwhelmed with details. Such a framework must also provide the students with a motivating application environment that challenges them to apply what they have learned. Robotics competitions have proven to be an excellent method for motivating students, so the framework should be portable and robust enough to be used for competitions, and flexible enough to provide a range of environments that can become more challenging as students become more adept. Finally, the framework should provide repeatability and control for evaluating the student's work, as well as for performing research. In this paper, we overview a mixed reality approach that meets these criteria, and describe its use in an advanced undergraduate course.