Class Central is learner-supported. When you buy through links on our site, we may earn an affiliate commission.

University of California, Irvine

Programming for the Internet of Things Project

University of California, Irvine via Coursera


In this Capstone course, you will design a microcontroller-based embedded system. As an option, you can also build and test a system. The focus of your project will be to design the system so that it can be built on a low-cost budget for a real-world application. To complete this project you'll need to use all the skills you've learned in the course (programming microcontrollers, system design, interfacing, etc.). The project will include some core requirements, but leave room for your creativity in how you approach the project. In the end, you will produce a unique final project, suitable for showcasing to future potential employers.

Note that for the three required assignments you do NOT need to purchase software and hardware to complete this course. There is an optional fourth assignment for students who wish to build and demonstrate their system using an Arduino or Raspberry Pi. Please also note that this course does not include discussion forums.

Upon completing this course, you will be able to:
1. Write a requirements specification document
2. Create a system-level design
3. Explore design options
4. Create a test plan


  • Get Started
    • This section will answer questions you might have about the project assignment, the grading rubric, and what you can expect in the upcoming weeks together.
  • Capstone Design, Part 1
    • This module will assist you in selecting an idea for your Capstone project. There are many variables to consider in this decision so it's important to know the parameters and how they impact your choice. Your decision will then drive the content of the very first step in your Capstone project -- preparing a requirements specification.
  • Capstone Design, Part 2
    • With the requirements specification out of the way, it's time to turn your attention to the system-level design of your project. This module will walk you through the constraints your project will need to satisfy. You'll also be informed about how to consider alternatives to your design.
  • Capstone Design, Part 3
    • Naturally testing is a key component of any technical design. This module will walk you through the important aspects of a test plan for your design.
  • Capstone Design, Part 4 (OPTIONAL)
    • In this final module, you will have the option of actually building out and then demonstrating your final project. This module is optional because it requires you to have the necessary equipment.
  • Specialization Wrap-Up
    • Let's wrap up our time together as we have traveled through the specialization.

Taught by

Ian Harris


4.0 rating, based on 1 Class Central review

4.7 rating at Coursera based on 882 ratings

Start your review of Programming for the Internet of Things Project

  • Ellie Ireland
    This course completes the series of the introduction to the IoT on coursera, which is a great series for beginners. In this course, you glue together what you've learned with an idea for a device that you plan out. I gave this course 4 stars because…

Never Stop Learning.

Get personalized course recommendations, track subjects and courses with reminders, and more.