Objective
Learn the fundamentals of embedded systems design through hands-on tasks: microcontroller programming, interfacing sensors and actuators, real-time control, and simple IoT connectivity. By the end of these tasks interns will be able to design, implement, and test small embedded projects and document results.
Features
- Hands-on microcontroller programming (Arduino / STM32 / ESP32)
- Sensor & actuator interfacing (GPIO, ADC, PWM, I2C, SPI, UART)
- Basic real-time behavior using timers and interrupts
- Simple data logging and visualization (serial / web)
- Optional wireless connectivity (Wi‑Fi / Bluetooth) for IoT workflows
Technologies
Tasks (4)
Goal
Read temperature from a sensor and display current value on a 16x2 LCD. Log readings over serial.
Requirements
- Hardware: Arduino UNO, LM35/DS18B20, 16x2 I2C LCD, breadboard, wires
- Software: Arduino IDE,
LiquidCrystal_I2C(or equivalent)
Deliverables
- Working circuit & Arduino sketch.
- Short video (30–60s) showing live reading on LCD.
- One-page README with wiring diagram and explanation.
Goal
Control DC motor speed using PWM and stop when an ultrasonic sensor detects an obstacle.
Requirements
- Hardware: Arduino/ESP32, L293D or motor driver, DC motor, HC-SR04 ultrasonic sensor
- Software: Arduino IDE, use hardware PWM pins
Deliverables
- Code implementing PWM speed control and obstacle stop.
- Wiring diagram and brief test results (distance vs response).
Goal
Collect sensor data (e.g., temperature and light) and save timestamped entries to an SD card (CSV).
Requirements
- Hardware: Arduino with SPI, SD card module, RTC module (DS1307/DS3231) optional
- Software:
SD.h,SPI.h, optionalRTClib
Deliverables
- CSV file from SD showing at least 100 samples.
- Code and explanation of sampling rate and power considerations.
Goal
Create a basic web dashboard served by an ESP32 that shows live sensor data and allows toggling a digital output (LED/relay).
Requirements
- Hardware: ESP32, sensor (e.g., DHT11/DHT22), LED/relay
- Software: ESP32 core for Arduino,
WiFi.h,ESPAsyncWebServerorWebServer
Deliverables
- ESP32 sketch with embedded HTML/JS for dashboard.
- Screenshot of dashboard and short demo notes.
How to Submit Your Tasks
-
For each task:
- Create a separate document (DOC, DOCX, or PDF) for each task (Task 1, Task 2, Task 3, Task 4).
- Add all required screenshots, code snippets, commands, and links as per the deliverables.
-
Upload your documents:
- Upload each task document to Google Drive or GitHub (create a public repository or shareable folder).
- Make sure the sharing permissions allow anyone with the link to view your files.
-
Submit your links:
- Copy the public links for each task document.
- Go to the Task Submission page.
- Paste your document links in the submission form, clearly mentioning the task number for each link.
Tip: Organize your files and links clearly for faster review and feedback!
Quick Resources
Evaluation Checklist
- Code compiles and runs.
- Proper wiring and safety checks.
- Documentation (README + wiring diagram).
- Short demo (video or GIF) or live demo session.