Undergraduate Program
Michigan Robotics received state approval from the Michigan Association of State Universities on June 2, 2022 to establish an undergraduate program. We are working to launch the Robotics undergraduate major for the Fall 2022 term. Currently, we do not offer a SUGS program or minor but we will work to establish these programs in the near-term future after launching the major.
We already offer a handful of undergraduate courses, and will expand these offerings as we launch the undergraduate program. Please see our current course options to see what will be offered, check our scheduling advice below, and review our Robotics Undergraduate Program Guide for more information.
Because robotics is so interdisciplinary, most engineering disciplines offer routes into robotics. Many students in our graduate program come from mechanical, electrical, or computer engineering backgrounds, but also from aerospace engineering, naval engineering, information science, kinesiology, biomedicine, or other fields. There are also several undergraduate project teams where students can learn and apply skills while competing in international competitions.
Undergraduate Program Advising Office Hours
Drop in and ask questions about the upcoming undergraduate program.
On pause for the summer
Undergraduate Q&A Forum on Piazza
Post any Robotics-related questions as well as contribute to the discussion threads.
U-M email required.
Common general questions
Can I get a major or minor in Robotics?
Michigan Robotics received state approval from the Michigan Association of State Universities on June 2, 2022 to establish an undergraduate program. We are working to launch the Robotics undergraduate major for the Fall 2022 term. We will post more information about declaring Robotics as a major as soon as it is available. Currently, we do not offer a Robotics minor but we plan to establish one in the near-term future after launching the major. We do not yet have a timeline for when the minor may be available as we are still working hard to launch the major.
What are introductory Robotics classes like?
100-level Robotics classes cover topics such as computational linear algebra, robotic mechanisms, and introduction to programming and artificial intelligence.
This brings the typical upper-level topics to first-year undergraduates, allowing you to cover engineering fundamentals of math and science through robotics projects, an approach we call “coding is believing.”
Get a greater sense of each course below:
How can I get on the waitlist for Robotics courses?
To get on a course waitlist, follow these instructions:
1. Go to your Backpack and search for the class you want to join. In this example, we will use ROB 101.

2. Based on the search criteria you selected, you will see a list of Robotics classes.

3. Click on the class you want to add to your backpack. PLEASE NOTE: For classes with a lecture and lab section, you want to enroll in the lab section. You will be automatically enrolled in the lecture section when you enroll in a lab. For this example, we selected the in-person lab section for ROB 101. We will see the lecture section momentarily. Once on this screen, click “Next”.

4. The following screen shows you the lecture section, which you will be automatically enrolled in by joining the lab. Confirm your selection by clicking “Next” again.

5. Select the box that says “Wait list if class is full.” This will add you to the waitlist. Then, click “Next”.

6. The following screen confirms that both the lecture and lab sections have been added to your backpack.

7. Go to the “Backpack/ Registration” tab. Select the term you want (in this case, Fall 2022) and click “Continue”.

8. Select the relevant class by clicking the checkbox next to it. Then click “Proceed to Step 2 of 3”.

9. Click “Finish Registering”.

10. You will now see a message stating that the class is full and that you have been added to the waitlist. You can also see that you have been waitlisted through the yellow triangles that display next to the class instead of the green checkmark.

11. If you are moved off the waitlist, you will receive an email stating that “You have been issued a permission to enroll in class ROB[courseNumber].” The email will contain instructions for how to use your permission to enroll. Each permission has an expiration date–please pay careful attention to the expiration dates and enroll promptly! If your permission expires, you are not added back onto the waitlist.
How can I get a tour of the new building?
Building tours are currently in development. As of now, we recommend that interested prospective undergraduates sign up for a tour with the College of Engineering Undergraduate Admissions.
How can I use Robotics’ facilities and resources like M-Air or the Makerspace?
M-Air can be used by research groups, student teams, or courses. More information on M-Air and how to reserve it can be found on the M-Air site.
The Makerspace is designed for use by student teams and MDP projects.
How do I apply as an undergraduate?
Interested prospective undergraduates can find out more about applying to the College of Engineering. Please note that students coming to U-M will be admitted to the College of Engineering (not a specific department) and will declare their major afterwards. Please see the College of Engineering Bulletin for more information on declaring a major.
However, as robotics is so interdisciplinary, most undergraduate disciplines can offer routes into robotics. Many students in our graduate program come from mechanical, electrical, or computer engineering backgrounds, but also from aerospace engineering, naval engineering, information science, kinesiology, biomedicine, or other fields.
How do I find out about or apply for financial aid?
More information on financial aid for undergraduates can be found at the College of Engineering’s scholarship and funding site.
Scheduling advice
While we are still in the process of launching the Robotics Major for Fall 2022, we recognize that many students are seeking advice on how to structure their schedules for the upcoming semesters. Below is advice for students at different points in their degree. You may also find the Robotics Undergraduate Program Guide helpful.
ROB 101 for First Year engineering students
We have reserved 75 seats in ROB 101 for incoming First Year Engineering students. First Year students should register in the following lab sections (you are automatically enrolled in the appropriate lecture section when you register for the lab):
In Person:
ROB 101 – 012
Remote:
ROB 101 – 883
These sections are exactly the same—same instructor, meeting times, locations, etc—as sections 011 (in person) and 882 (remote) except that all seats are reserved for First Year Engineering students. If you are NOT a First Year Engineering student, please join the waitlist for one of the other sections of ROB 101. Once first year students have a chance to register, we will admit as many other students as we can to fill the class! ROB 101 will also be offered again in WN 23.
For more information on ROB 101 please see the course webpage.
Advice for Fall 22 Year 1 students thinking about a Major in Robotics
- Meet with an Undergraduate Advisor through the Engineering Advising Center
- Consider ROB 101 in F-22. We also plan to offer ROB 101 in WN-23.
- Consider ROB 102 as a means to meet your ENGR 101 requirement
- Be aware that there is a section of ENGR 100 called Robotics Mechanisms
- While in startup mode (F22 and WN 23 only), the prerequisites for ROB 204 are: ENGR 100 and one of (ROB 102, ENGR 101, EECS 183, or ENGR 151)
- Be aware that when not in startup mode, ROB 204 has as pre-requisites of one of (ROB 102, ENGR 101, EECS 183, or ENGR 151) and ENGR 100, and a co-requisite of one of (ROB 101, MATH 214, MATH 217, MATH 417, or MATH 419)
- These will be enforced starting in F-23
Advice for Fall 22 Year 2 Students thinking about a Major in Robotics
Let’s assume you have completed ENGR 101 or ROB 102, ENGR 100, Calc I and Calc II, and Phys 140.
Our suggestions are:
- Plan on ROB 204 for W-23
- While in startup mode (F22 and WN 23 only), the prerequisites for ROB 204 are: ENGR 100 and one of (ROB 102, ENGR 101, EECS 183, or ENGR 151).
- Over F-22 and W-23 semesters,
- Complete one of (IOE 265, BME 241, EECS 301)
- Complete one of (ME 240, ME 360) . Note that Math 216 (or equivalent) is required for ME 240.
- Complete one of (EECS 215, BME 211, EECS 270). Note that Math 216 (or equivalent) is required for EECS 215 and BME 211.
- Complete EECS 280
- Complete one of (ROB 101, MATH 214, MATH, 217, MATH 417, MATH 419)
- This will set you up for all of our 300-level classes. Of course, you are not required to take all of them, only three in fact. Hence, by studying the prerequisites more closely, you can be prepared for a subset of the 300-level courses, but not all of them.
Advice for Fall 22 Year 3 Students who are wondering if they can complete a Robotics Major
Attend our drop-in office hours held every Wednesday to discuss your degree plan with members of the Robotics Undergraduate Committee. If you can’t attend office hours because of a consistent conflict (such as a class) please email ugrad-robotics@umich.edu to inquire about setting up an individual meeting.
For many students, it will be difficult to complete the undergraduate program in a total of 4 years with a switch in majors at this time point, but the Robotics degree could be completed with additional term(s) depending on previous course credits. It may be more appropriate to be targeting an MS degree in Robotics.
Before attending office hours, please review the program requirements and flow chart below. It would be helpful to bring along a list of the requirements and prerequisites that you’ve already met with your previous coursework. Please also note that while in startup mode, the Undergraduate Committee will consider individual students’ petitions to waive certain prerequisites.
College of Engineering Core Program Requirements
- Introductory Engineering
- Introduction to Engineering: Engineering 100 or introductory engineering equivalent
- Computational Thinking: Robotics 102 (Introduction to AI and Programming) or Engineering 101 or Engineering 151 or approved introductory programming equivalent
- Linear Algebra: Robotics 101 or Math 214 or Math 217 or Math 417 or Math 419 or approved linear algebra equivalent
- Calculus requirements
- Introductory Calculus: Math 115 or Math 120 (AP); and Math 116 or Math 121 (AP)
- Intermediate Calculus: Math 216
- Physics 140/141 and Physics 240/241
- Chemistry 130 and 125/126
- Intellectual Breadth (16 credits as specified by the College of Engineering Core Requirements Bulletin)
- General Electives (15 credits)
- 15 credits are “required”; College degrees require 128 total credits, and more or fewer GE credits may be needed to achieve this total depending on individual factors in a student’s record.
Robotics in Engineering Program Requirements
- Teamwork in Robotics: Robotics 204 (Human-Robot Systems)
- Robotics Core: at least three of the following courses:
- Robotics 310 (Robot Sensors and Signals)
- Robotics 311 (Build Robots and Make Them Move)
- Robotics 320 (Robot Operating Systems)
- Robotics 330 (Localization, Mapping, and Navigation)
- Robotics 340 (Human-Robot Interaction)
- Discipline Breadth: at least one approved course from all of the following areas:
- Data Structures and Programming: EECS 280
- Probability, Statistics, and Visualization: IOE 265 or EECS 301 or BME 241
- Electronics and Circuits: EECS 215 or EECS 270 or BME 211
- Kinematics and Dynamics: ME 240 or ME 360
- Discipline Depth: at least one of the following courses: AERO 201, EECS 216, EECS 281, EECS 351, EECS 370, EECS 373, IOE 333, IOE 434, MSE 220, NAVARCH 270
- Technical Electives: a minimum of 18 credit hours of approved technical electives, with a minimum 8 credit hours from either the approved set of Upper Level Robotics Courses (described “Robotics Technical Electives” section below)
- Major Design: all of the following courses
- TCHNCLCM 350 (Technical Communication for Robotics)
- Robotics 450 (Robotics Capstone) or EECS 467 (Autonomous Robotics Laboratory)

Who is ready for 300-level courses in Fall 2022?
The following 300-Level courses will be offered in Fall 2022. Please note that the prerequisites listed below are modified for startup mode. The regular prerequisites are listed in the College of Engineering Bulletin.
If you meet the startup mode prerequisite requirements for Fall 2022, but not the regular prerequisite requirements, you will need to fill out this form to request an override in order to register.
Course | Name | Description | Pre-reqs for Fall 2022 | Faculty Teaching |
ROB 311 | How to Build Robots and Make Them Move | ROB 311 introduces the fundamentals of mechanical design, control, fabrication, actuation, instrumentation, and computer interfaces required to realize robotic systems. Students will learn to analyze/simulate rigid body kinematics, kinetics, and dynamics, as well as assess the impedance properties of their designs. ‘Hands-on’ skills will be emphasized in addition to theoretical concepts. | Advised Prerequisites: ROB 204 and (ME 240 and/or 360) | Rouse |
ROB 330 | Localization, Mapping, and Navigation | Development of full-stack autonomous navigation and semantic mapping for mobile robots. Topics include dead reckoning from odometry, sensor modeling of LIDAR and IMUs, simultaneous localization and mapping (SLAM), semantic scene understanding, and an introduction to deep learning methods for convolutional feature learning and object detection. | Prerequisite: EECS 280. Minimum grade of “C-” for enforced prerequisite. Advised Prerequisite: ROB 204 and (IOE 265 or EECS 301) and (ME 240 or ME 360) and (Math 215 or Math 216) | Skinner |
What 300-level courses will be offered in Winter 2023?
Below are the planned course offerings for Winter 2023. Please note that the prerequisites listed below are modified for startup mode. The regular prerequisites are listed in the College of Engineering Bulletin.
If you meet the startup mode prerequisite requirements for Winter 2023, but not the regular prerequisite requirements, you will need to email ugrad-robotics@umich.edu to request an override in order to register.
Course | Name | Description | Pre-reqs for Winter 2023 | Faculty Teaching |
ROB 310 | Robot Sensors and Signals | Covers practical analog and digital electronics for robotics. Students will: prototype, test, and debug various analog and digital circuits; interface a microcontroller to external circuits; learn to design and prototype circuit boards; interpret data recorded from physical circuits. An exploration of circuits and embedded systems that supports integrated robotic design. | Prerequisite: EECS 215 or BME 211. Minimum grade of “C-” for enforced prerequisite. Advised Prerequisite: ROB 101 and ROB 204. | Gaskell |
ROB 320 | Robot Operating Systems | General computational paradigm for robot operating systems that model, simulate, and control mobile manipulation robots. Composition of full-stack software systems for forward and inverse kinematics, planar path planning, high-dimensional motion planning, maximal coordinate robot simulation, and front-end visualization that work through interprocess communication. | Prerequisite: EECS 280. Minimum grade of “C-” for enforced prerequisite. (Credit for only one: ROB 320, EECS 367, and ROB 511). Advised Prerequisite: ROB 204. | Jenkins |
What do 300-level prerequisites look like in startup mode?
In startup mode (Fall 22 and Winter 23), several 300-level prerequisites that are usually enforced have been waived. For instance, in startup mode ROB 204 is not an enforced prerequisite for ROB 310, 311, 320, or 330. Below is a comprehensive list of which prerequisites are enforced and waived in startup mode. If you are eligible to take one of these classes under the relaxed prerequisites, you will need to fill out this form to receive an override to register for Fall 2022. If you have any questions, please email ugrad-robotics@umich.edu.

Other questions
Answers to other frequently asked questions for undergraduates are available from the Engineering Advising Center. If you have other questions, and are a current U-M undergraduate student, please contact the Engineering Advising Center. If you are not a U-M student, please contact Engineering Recruitment and Admissions.
Other questions about the Robotics Undergraduate Program can be sent to ugrad-robotics@umich.edu.