Welcome to the official repository for
CSE382: Introduction to Embedded Systems Lab
This repository contains all lab materials, example codes, and resources used throughout the course.
This lab course introduces students to the fundamentals of embedded systems through hands-on experiments using:
- Arduino (AVR-based microcontroller)
- Sensors and actuators
- System integration concepts
- Advanced platforms (ESP32 & Raspberry Pi)
This course follows a progressive hands-on model:
- Learn basic hardware control
- Interface sensors and read data
- Control actuators
- Combine multiple components
- Build complete embedded systems
- Explore advanced platforms
| Lab | Topic | Key Concepts |
|---|---|---|
| Lab 01 | LED Control | Digital Output |
| Lab 02 | Serial Communication | UART |
| Lab 03 | Digital Input | Input Handling |
| Lab 04 | Sensor Introduction | Data Acquisition |
| Lab 05 | Motor Control | Actuators |
| Lab 06 | Sensor Fusion | Multi-sensor Logic |
| Lab 07 | Servo Control | Mapping & PWM |
| Lab 08 | System Integration | State-based Design |
| Lab 09 | Advanced Platforms | ESP32 & Raspberry Pi |
Each lab folder contains:
- Arduino / Python code
- README with explanation
- Required components
- Practice tasks
- Navigate to a lab folder
- Read the README file
- Upload/run the code
- Observe system behavior
- Modify and experiment
- These codes are starting points, not final solutions
- You are encouraged to modify and extend
- Understanding is more important than copying
- Used for Labs 01–08
- Programming language: C/C++
- Programmed using Arduino IDE
- Requires ESP32 board package
- Supports WiFi and IoT applications
- Uses Python
- Code executed via terminal
- No upload required
Students will build a complete embedded system using:
- Sensors
- Actuators
- Microcontroller logic
Project guidelines will be provided separately.
Do not just run the code — understand what each line does.
Tashreef Muhammad
Lecturer, Department of CSE
This repository is not just for passing the course —
it is meant to be a foundation for your future work in embedded systems, IoT, and hardware-based systems.
Arduino → Learn fundamentals
ESP32 → Learn connectivity (IoT)
Raspberry Pi → Learn system-level computing
👉 Together, they illustrate different classes of embedded platforms: microcontrollers, connected systems, and full computing devices.