# Level 1- Tasks
9 / 5 / 2025
Task 1 - Simon Says
This project is a memory-based game where LEDs blink in a random sequence, and the player must press the matching buttons in the correct order. With each round, the sequence grows longer. The ESP32 controls the LED pattern, checks button inputs, and displays 'Game Over' on the serial monitor if the user makes a mistake. The game then restarts automatically.
Task 2 - Basics of MQTT protocol and other communication protocols
In this task, I explored the fundamentals of the MQTT protocol and how it works. I also studied various communication and networking protocols commonly used in IoT systems. These include protocols for device-to-device communication, data transfer, and cloud connectivity. This helped me understand how IoT devices interact efficiently and securely. Here is the report
Task 3 - Basics of creating a website
Explored the process of creating a functional website by combining front-end and back-end development. Designed a simple webpage featuring a button that toggles the background color on each click, reinforcing my understanding of event handling and dynamic content updates.
Task 4 - ESP32 CAM Based Surveillance Robot using Arduino IDE
Integrated an ESP32-CAM module with the L298N motor driver to build a Wi-Fi-controlled surveillance robot. Set up a live video streaming server and enabled remote control over a web interface. Unlike standard implementations, this version uses the L298N driver for motor control, requiring specific changes to the wiring and control logic. Through IP address I accessed the vedio and used ESP32 to control the robot.
Task 5 - MQTT PUBLISH AND SUBSCRIBE USING CLOUD MQTT
Demonstrated the use of MQTT by setting up publishing and subscribing mechanisms through MQTT LENS or a similar platform. Extended the standard single-LED example to control three separate LEDs. Messages like "LED 1 ON" or "LED 2 OFF" were published, and each subscriber responded by toggling only the corresponding LED at the appropriate time. This task involved customizing both the topic structure and message handling logic to support multiple devices.
Task 6 - Sending data to ThingSpeak
Utilized the ESP32 to collect temperature data from a sensor and post it to the ThingSpeak platform using its API. The data was visualized on a real-time graph showing temperature vs. time. After processing the data on the platform, I retrieved it back to analyze trends and perform further actions.
Task 7 - Communication using I2C protocol
I Set up a communication between an ESP32 and Arduino using the I2C protocol. A webserver hosted on the ESP32 allowed users to type a custom message, which was then sent to the Arduino over I2C and displayed on an serial monitor. This task combined web interaction, inter-device communication, and display control.
Task 8 - Flashing Morse Code
Designed a system where a user can input a message through a webserver hosted on the ESP32. The ESP32 then converts the text into Morse code and flashes it using an LED. Each character is translated into a series of short and long LED pulses representing dots and dashes.
Task 9 - Soil Moisture Sensor
Built a smart monitoring system using a capacitive soil moisture sensor connected to the ESP32. The sensor measures the moisture level in the soil, displaying the data on the serial monitor or an LCD screen. If the moisture level drops below a defined threshold, the system triggers an alert to notify the user.
Task 11 - FIRE ALARM SYSTEM WITH EMAIL ALERTS
In this task I built a fire alarm system using an ESP32 and fire sensors to detect potential fire hazards. When fire is detected, the ESP32 connects to Wi-Fi and sends an automated email alert via the Blynk IoT platform to notify designated recipients.