Logistics
Lecture
See schedule here
Lab
See schedule here
Instructor
- Office Hours: Tue 15:00 - 16:00, Wed 11:00-12:00
Course Description
The aim of the course is to introduce programming embedded device drivers to interface directly with hardware, sensor deployment and programming using Raspberry Pi. It also covers software overlay architectures, middleware-layer protocols such as MQTT and CoAP, and the design of APIs (RESTful) for data exchange. The course emphasizes techniques for data processing, the implementation and deployment of virtual sensors, and context-aware data modeling to adapt system behavior. Additionally, students will learn to build real-time interactive data visualization dashboards and deploy containerized applications on Raspberry Pi or edge/cloud nodes using Docker. The course concludes with a comprehensive project involving the design and implementation of an end-to-end IoT system.
This year, students will implement a real-life Smart Mailbox.
After this course, you should be able to:
- Program device drivers to interface with hardware.
- Deploy and program sensors on Raspberry Pi for data acquisition.
- Implement IoT middleware systems and clients using MQTT and CoAP on Raspberry Pi.
- Design APIs (e.g., RESTful) to expose and exchange sensor data.
- Apply data processing techniques such as filtering and event detection on sensor data.
- Develop and deploy virtual sensors using sensor data fusion on Raspberry Pi or Edge/Cloud platforms.
- Model and program context-aware behavior for adaptive IoT systems.
- Build interactive dashboards for real-time sensor data visualization.
- Deploy containerized IoT applications on Raspberry Pi and Edge/Cloud nodes using Docker.
- Design and implement an end-to-end IoT application combining sensor programming, middleware, data processing, visualization, and containerized deployment.
Deliverables and Grading
| What | Grade % | When |
|---|---|---|
| Lab Assignements | 15% | Every week |
| Project | 55% | TBD |
| Final Exam | 30% | TBD |
| Lecture and Lab Participation | up to 10% | Every week |