Introduction to Internet of Things
Undergraduate course, American University of Phnom Penh, 2026
Introduction to Internet of Things introduces students to the design and implementation of connected systems using sensors, actuators, embedded devices, cloud platforms, and user interfaces. The course emphasizes hands-on labs and real-world IoT applications such as smart homes, environmental monitoring, and industrial automation.
Course Syllabus
You can find the course Syllabus in here: IOT Course Syllabus
đź‘‹ Introduction
Welcome to the Introduction to Internet of Things (IoT) course!
This course introduces the fundamental concepts of IoT, focusing on sensing, connectivity, cloud integration, and user interaction. Students will learn how physical devices collect data, communicate over the Internet, and interact with users through dashboards, mobile apps, and messaging platforms.
IoT concepts will be applied to real-world scenarios such as smart monitoring systems, remote control applications, and data-driven automation.
đź“‹ Course Overview
🗝️ Key Topics Covered
Foundations of IoT
- What is IoT?
- IoT architecture: device, network, cloud, application
- IoT use cases and real-world applications
Embedded Devices for IoT
- ESP32 and microcontroller fundamentals
- GPIO, ADC, PWM, timers
- Power management basics
- Wi-Fi networking concepts
Sensors & Actuators
- Temperature, humidity, gas, light sensors
- Motion and distance sensors
- Relays, motors, servos, LEDs
- Sensor calibration and data reliability
Communication Protocols
- HTTP and REST APIs
- MQTT protocol and publish–subscribe model
- Data formats (JSON)
IoT Platforms & Visualization
- Node-RED for IoT flow programming
- MQTT integration with Node-RED
- Grafana dashboards and data visualization
- Data logging and monitoring
Web & Mobile Interfaces
- ESP32 Web Server for control and monitoring
- Telegram Bot for IoT interaction
- Blynk IoT platform
- MIT App Inventor mobile applications
Automation & Control
- Event-driven IoT systems
- Rule-based automation
- Scheduling and alert systems
IoT Security (Introduction)
- Device authentication concepts
- Basic communication security
- Common IoT security risks
By the end of this course, students will be able to design, implement, and deploy a complete IoT system with remote control and real-time monitoring.
📝 Course Criteria
| Criteria | Percentage |
|---|---|
| Lab | 20% |
| Quizzes | 15% |
| Assignment | 10% |
| Midterm Exam | 10% |
| Mini Project | 25% |
| Final Project & Presentation / Practical Labs | 20% |
đź’» Programming & Tools
Students may use the following tools and platforms:
- ESP32 microcontroller
- MicroPython / Arduino (C++)
- Python (basic level)
- MQTT Broker
- Node-RED
- Grafana
- Telegram Bot API
- Blynk IoT
- MIT App Inventor
- Arduino IDE / Thonny / PlatformIO
Component
You can find all the components which are used in the course in here: Components for IOT Class
Classroom Rules
- No food or Drink inside the Lab
- No later than 15 minutes after the class start time.
- No work for other classes during this class.
- No gaming (mobile, laptop, or browser games).
- Do not use equipment without permission.
- Follow lab instructions and safety rules carefully.
- Listen respectfully when others are speaking.
- Respect classmates and the instructor at all times
- Be open to feedback and constructive criticism.
- No cheating.
🗺️ Course Progress
Note: The following content will be updated progressively as the course advances.
| Topic | Lab | Assignment | Remark |
|---|---|---|---|
| IoT Overview & ESP32 Setup |  | – | …Loading |
| Telegram Bot Integration | Lab 1 | ESP32-Camera Setup | …Loading |
| ESP32 Web Server | Lab 2 | – | …Loading |
| Blynk IoT Platform | Lab 3 | Assignment2 | …Loading |
| Mini Project |  |  | …Loading |
| Grafana Dashboard | Lab 4 | Installation & Configuration | …Loading |
| MIT App Inventor IoT App | Lab 5 | – | …Loading |
| Firebase with esp32 | Lab 6 |  | …Loading |
| Final IoT Project | Project | Demo | …Loading |
