The course consists of two parts. In the first part, the course offers an overview of IoT and covers the basics of designing and developing IoT applications, including the building blocks of IoT, characteristics of IoT systems, and IoT design patterns. Sensors, actuators, IoT hardware platforms, and communications capabilities will all be explored. The second part covers how to design and prototype IoT applications with a focus on end-to-end solutions. Taking the knowledge gained in the first part of the course, one will implement several end-to-end solutions, gaining important practical experience.
- Definition and characteristics of IoT
- Building blocks of IoT
- Domains of IoT applications
- Designing IoT systems, including design methodologies, design patterns and case studies
- End-point devices in IoT: Sensors, actuators and IO interfaces
- Programming with sensors
- Popular IoT devices and prototyping platforms
- IoT cloud platforms and getting data into them
Note(s): This course is project based and requires the purchase of several sensors and IoT hardware platforms (about $120, not included in the tuition). Detailed board information will be provided at the first class. Students are required to bring laptops to class.
Skills Needed: Knowledge of embedded system hardware and programming experience with C. Some practical electronics or electrical engineering experience is beneficial, but not required.