kritishmohapatra/100_Days_100_IoT_Projects

A 100-day challenge exploring IoT and embedded systems using ESP32, ESP8266, and Raspberry Pi Pico with MicroPython. Each day covers a new sensor or module with complete code, circuit diagram, and explanation.

Python

1,346

185 commits

updated Jul 17, 2026

See the code

README

White MicroPython Logo

100 Days 100 IoT Projects

Welcome to my 100 Days 100 IoT Projects repository!
This repo showcases my journey of learning and implementing IoT & Embedded Systems projects using ESP32, Raspberry Pi Pico, and MicroPython.

Each project is designed to teach a specific concept, sensor, or IoT technique — from basic analog/digital readings to web-based dashboards.

Buy Me A Coffee

MicroPython ESP32 ESP8266 Raspberry Pi Pico GitHub stars GitHub forks GitHub issues

100 Days 100 IoT Projects Banner

Recognition & Features

Featured on Adafruit

Featured on Hackster.io

Featured at Melbourne MicroPython Meetup

Awesome

Technologies, Boards & Tools Used

Hardware

  • ESP32, ESP8266 (NodeMCU)
  • Raspberry Pi Pico / Pico W / Pico 2 W
  • XIAO ESP32-S3
  • Arduino (UNO / Nano)

Programming & Platforms

  • MicroPython
  • Python (Tkinter, CustomTkinter, Matplotlib)
  • Arduino + Python (Serial, PyFirmata)

Sensors & Modules

  • LDR, Potentiometer, DHT11
  • PIR, IR, Ultrasonic (HC-SR04)
  • Gas Sensors (MQ-4, MQ-7, MQ-135)
  • RTC (DS3231), TM1637, OLED, LCD
  • Relay, Servo, Touch Sensor

Concepts Covered

  • ADC, PWM, GPIO
  • Wi-Fi, Web Server, WebSocket
  • Bluetooth, Blynk IoT
  • Data logging & visualization
  • Simulation-based testing

Project List

DayProjectBoard / SensorDescription
1Auto Night LightESP32 + LDRAutomatic LED turns ON/OFF based on ambient light
2Dimmer LED using PotentiometerESP32 + PotentiometerLED brightness controlled via potentiometer using ADC + PWM
3DHT11 Temperature & Humidity Web ServerESP32 + DHT11Reads temperature & humidity and displays on a live web page
41-Digit Seven Segment DisplayRaspberry Pi Pico + 7-SegmentDisplays numeric output using GPIO control
5Mini Weather Station (DHT11 + LCD)ESP8266 + DHT11 + I²C LCDDisplays real-time temperature & humidity on 16x2 LCD without flickering
6RGB Color Mixer using PotentiometersESP32 + 3 Potentiometers + RGB LEDMix RGB colors by adjusting potentiometers using ADC and PWM
7Potentiometer Bar Graph DisplayESP32 + Potentiometer + 10 LEDsVisualize analog input as a 10-LED bar graph using ADC mapping
8MQ4 Gas Leak Detection SystemESP32 + MQ4 Sensor + BuzzerDetects methane gas concentration using MQ4 sensor and triggers alert when gas level exceeds threshold
9Basic RTC Clock (Serial Monitor Display)ESP8266 + DS3231 RTCDisplays real-time date, time, and temperature on Serial Monitor using DS3231 RTC
10IoT Button Counter using ESP8266 & MicroPythonESP8266 + 3 Push ButtonsCounts button presses (Increment, Decrement, Reset) and displays live counter on webpage
11MicroPython-Based 8×8 LED Matrix Animation Display using ESP8266ESP8266 + MAX7219 8×8 LED MatrixDisplays custom animations (heart beat) on 8×8 LED matrix using MicroPython
12PIR Motion Detector using Raspberry Pi Pico 2W & MicroPythonRaspberry Pi Pico 2W + PIR SensorDetects motion using PIR sensor and indicates using built-in LED with MicroPython
13Bluetooth-Based Wireless LED Control SystemRaspberry Pi Pico 2W + HC-05Wireless LED ON/OFF control using MicroPython + HC-05 Bluetooth module
14Pico W Web Servo ControllerRaspberry Pi Pico 2W + Servo MotorControl servo angle (0–180°) from browser via WiFi
15ClimaPixel — Mini Weather DisplayESP32/ESP8266 + DHT11 + SSD1306 OLEDReal-time temperature & humidity display with icons on OLED using MicroPython
16TM1637 Button-Press Counter using ESP8266 & MicroPythonESP8266 + TM1637 + Push ButtonCounts button presses and displays live counter on TM1637 4-digit display
17IoT Relay Control Web Server (Raspberry Pi Pico 2W)Raspberry Pi Pico 2W + Relay ModuleWeb-based relay control using MicroPython with a smooth slide switch UI and real-time ON/OFF status over WiFi
18Blynk-Based IoT Relay Control (Raspberry Pi Pico 2 W)Raspberry Pi Pico 2 W + Relay ModuleMobile app–based relay control using Blynk IoT and MicroPython with real-time ON/OFF control over Wi-Fi
19NTP Digital Clock using TM1637 & ESP8266 (MicroPython)ESP8266 + TM1637Internet-synchronized digital clock using NTP with accurate HH:MM display, blinking colon, and custom segment mapping in MicroPython
20Smart IR Object Detection SystemESP8266 + IR Sensor + LED + BuzzerDetects the presence of an object using an IR sensor and triggers LED and buzzer alerts in real time using MicroPython
21ESP32 Password Lock SystemESP32 + Keypad + LCD + LEDsImplements a secure password authentication system using a keypad and LCD with visual LED feedback, developed in MicroPython
22Blynk Controlled DC Brushless FanRaspberry Pi Pico W + Relay + DC Brushless FanControls a DC brushless fan remotely using the Blynk IoT platform and a relay module, implemented in MicroPython
23ESP32 Hotspot SetupESP32Configures ESP32 in Access Point (Hotspot) mode using MicroPython, enabling direct device-to-device connectivity without internet
24Voice-Controlled LED SystemArduino + PythonControls an LED using voice commands processed in Python and sent to Arduino via serial communication
25Arduino RGB LED Control with Python GUIArduino + PythonControls an RGB LED using a Python GUI built with CustomTkinter and PyFirmata2, allowing color selection, individual LED on/off control, and brightness adjustment via sliders
26Clap Toggle Switch using ESP32 (MicroPython)ESP32 + MicroPythonA clap-controlled toggle switch using a digital sound sensor where one clap turns the output ON and the next clap turns it OFF, implemented with debounce logic for reliable operation
27IR Sensor Telegram Alert using ESP32 (MicroPython)ESP32 + MicroPythonAn IR sensor–based object detection system that sends real-time alert notifications to a Telegram channel whenever motion or object presence is detected near the sensor
28Soil Moisture Sensor Dry/Wet Detection using ESP8266 (MicroPython)ESP8266 + MicroPythonA soil moisture monitoring system that reads analog sensor values and determines dry or wet soil conditions in real time, displaying the status on the serial monitor
29Rain Sensor Analog Detection using ESP8266 (MicroPython)ESP8266 + MicroPythonAn analog rain detection system that reads real-time sensor values to determine rain intensity (no rain, light rain, heavy rain) and displays the status on the serial monitor
30Ultrasonic Distance Indicator using ESP32 (MicroPython)ESP32 + MicroPythonA distance-based indication system using an HC-SR04 ultrasonic sensor that measures real-time distance and indicates object proximity using red and green LEDs
31WebSocket LED Control using Raspberry Pi Pico WPico W + MicroPythonA real-time LED control system using WebSockets where a browser communicates directly with Raspberry Pi Pico W over WiFi to turn an LED ON or OFF without page refresh
32MQ-135 Gas Sensor with ESP32ESP32 + MicroPythonA gas level monitoring system using the MQ-135 sensor and ESP32 to read and average analog sensor values for stable environmental gas detection
33MQ-7 Carbon Monoxide Sensor with ESP32ESP32 + MicroPythonA carbon monoxide monitoring system using the MQ-7 sensor and ESP32 to read and average analog sensor values for real-time CO detection
34Servo Motor Control with Raspberry Pi Pico 2 WRaspberry Pi Pico 2 W + MicroPythonA simulation-based servo motor control project using PWM, where the user inputs an angle (0–180°) via serial monitor and the servo rotates accordingly with safe angle clamping
35ESP8266 Touch Sensor LED ControlESP8266 (NodeMCU) + MicroPythonA capacitive touch-based toggle switch using the TTP223 touch sensor, where each touch alternates the state of an external LED with proper debounce handling
36ESP8266 DHT11 Live Monitor Matplotlib and MicroPythonESP8266 + MicroPython + MatplotlibReal-time DHT11 temperature and humidity visualization with a dark neon-themed live graph using serial communication
37XIAO ESP32 4-LED Control using CustomTkinter and MicroPythonXIAO ESP32-S3 + MicroPython + CustomTkinterDesktop GUI application to control four ESP32 GPIO LEDs via serial communication using a modern dark-mode CustomTkinter interface
38ESP32 OLED Smart UI with Eyes Animation, Time & Weather (MicroPython)ESP32 + SSD1306 OLED + MicroPythonInteractive OLED UI featuring animated eyes, touch-based menu navigation, NTP-synced IST date & time, and live weather data using OpenWeatherMap API
39ESP32 Stepper Motor Control using A4988 (MicroPython)ESP32 + A4988 + NEMA 17Stepper motor control using STEP/DIR signals with direction control, speed adjustment via delay, and serial monitoring using print statements
40Pico W Async LED Control (MicroPython)Raspberry Pi Pico WAsync web server using uasyncio to control onboard LED via browser with ON/OFF buttons and fetch-based requests
41EEPROM Simulation using MicroPython (ESP32)ESP32File-based EEPROM emulation using MicroPython with byte-level read/write and persistent string storage
42ESP32 DC Motor Web Speed Control (MicroPython)ESP32 + L298NWeb-based slider controlled DC motor speed system using PWM, MicroPython web server, and L298N driver
43Temperature Based LED Indicator (MicroPython)ESP32 + DHT22Beginner-friendly ESP32 project that reads temperature data from DHT22 and visually indicates temperature levels using LEDs
44Flask LED Control using MicroPythonESP32 / Pico WBeginner-friendly IoT project where a Flask web server controls an LED on ESP32 or Pico W through HTTP polling using MicroPython
45Smart Cooling System using ESP8266ESP8266+DHT11+BRUSHLESS FANBeginner-friendly IoT project that automatically controls a fan using DHT11 temperature sensor and an active-LOW relay with MicroPython
46Soil & Weather Monitoring using ESP8266 and ThingSpeakESP8266 + DHT11 + Soil SensorBeginner-friendly IoT project that monitors soil moisture, temperature, and humidity and visualizes the data on the ThingSpeak cloud using MicroPython
47Smart Irrigation System using XIAO ESP32-S3 and BlynkXIAO ESP32-S3 + Soil Sensor + Relay + PumpA smart irrigation system that monitors soil moisture in real time and allows manual water pump control via the Blynk IoT platform using MicroPython
48HTTP-Based DHT11 Data Logger using Raspberry Pi Pico WRaspberry Pi Pico 2W + DHT11A simple IoT data logging system that reads temperature and humidity from a DHT11 sensor and sends the data via HTTP POST to a Flask server, where it is stored in a CSV file for analysis
49ThingsBoard RPC LED Control & DHT11 Telemetry using Raspberry Pi Pico 2 WRaspberry Pi Pico 2 W + DHT11A cloud-connected IoT system using MicroPython where a Raspberry Pi Pico 2 W sends temperature and humidity data to ThingsBoard via MQTT and allows remote LED control using RPC from a dashboard
50ESP32 BMP180 Atmospheric Monitoring with Blynk IoTESP32 + BMP180A cloud-connected IoT system using MicroPython where an ESP32 measures temperature, atmospheric pressure, and altitude using the BMP180 sensor and sends real-time data to the Blynk IoT dashboard via Wi-Fi
51ESP8266 Smart Home Automation using MicroPython & BlynkESP8266 + DHT11 + RelayA cloud-based smart home automation system where an ESP8266 controls home appliances via relay and monitors temperature & humidity using DHT11, with real-time control and monitoring through the Blynk IoT dashboard over Wi-Fi
52IoT Sensor Anomaly Detection using ESP8266 & ThingSpeakESP8266 + DHT11 + LDR + MATLABAn IoT-based environmental monitoring system that uploads real-time sensor data to ThingSpeak and performs statistical anomaly detection using Z-score analysis in MATLAB, with visualization and outlier classification
53Smart IoT Gas Monitoring SystemESP32 + MQ Gas Sensor + DHT11 + Flask + Chart.jsAn AI-inspired end-to-end IoT gas monitoring system that streams real-time sensor data to a Flask backend, applies moving-average based anomaly detection for SAFE/DANGER classification, logs data for analytics, and visualizes live environmental insights on an interactive web dashboard
54ESP8266 ESP-NOW LED ControlESP8266 + ESP-NOW + MicroPythonA low-latency wireless LED control system using ESP-NOW protocol, where one ESP8266 acts as a transmitter and the other as a receiver, enabling real-time device control without WiFi infrastructure
55ESP8266 ESP-NOW Button to LED ControlESP8266 + ESP-NOW + MicroPythonA low-latency peer-to-peer wireless communication system where a push button on one ESP8266 toggles an LED on another ESP8266 without WiFi or access point
56ESP8266 ESP-NOW 4-Channel Wireless Relay ControllerESP8266 + ESP-NOW + MicroPythonA wireless 4-channel relay control system using two ESP8266 boards, where push buttons on the sender toggle relays on the receiver via low-latency ESP-NOW communication without WiFi
57ESP-NOW Smart Relay & Sensor SystemESP8266/ESP32 + ESP-NOW + MicroPythonA bidirectional ESP-NOW based smart relay and sensor system where a sender control panel toggles relays on a receiver and receives real-time DHT temperature and humidity data displayed on an OLED
58NTP Synchronized LED Matrix ClockESP32 + MAX7219 + MicroPython + NTPA real-time internet-synchronized digital clock using chained MAX7219 LED matrices, showing HH:MM with NTP time sync and serial debugging output
59AQI-ESP - IoT AQI Monitoring SystemESP32 + MicroPython + Flask + MQ135 + MQ7 + PM2.5A real-time air quality monitoring system using ESP32 and multiple gas sensors, calculating AQI via Flask backend and displaying live results on SSD1306 OLED with status like Good/Moderate/Unhealthy/Hazardous
60Student Management System - ESP32ESP32 + MicroPython + SH1106 OLED + LittleFS + ujsonA serial command-based student record management system running on ESP32, storing up to 1000 student records in JSON format on onboard flash memory with live navigation and display on SH1106 OLED
61OTA Update - Raspberry Pi Pico 2 WRaspberry Pi Pico 2 W + MicroPython + GitHub + urequestsA WiFi-based OTA (Over-the-Air) update system that automatically downloads and applies new code from GitHub on every boot without physically connecting the device to a computer
62Smart Indoor Security SystemESP32 + PIR Sensor + 4x4 Keypad + MicroPython + Favoriot IoTA motion-triggered keypad security system that detects intruders, requests a password, logs all events to the Favoriot IoT cloud, and sends email alerts on unauthorized access
63ESP32 BLE LED ControlESP32 + MicroPython + Bluetooth Low Energy (BLE)A BLE UART-based LED control system that allows wireless toggling of the onboard LED via smartphone commands, with connection status indication and real-time state feedback
64microclawup — AI Powered ESP32 GPIO ControllerESP32 + Groq AI + TelegramAI-powered natural language GPIO controller using MicroPython, Groq AI and Telegram bot
65MicroPython WatchXiao ESP32-S3 + SSD1306 OLED + OpenWeatherMapNTP time sync + live weather on a 0.96" OLED display
66micropidash — IoT Web DashboardRaspberry Pi Pico 2W / ESP32Non-blocking web dashboard with real-time sync, dark mode & sensor monitoring via uasyncio
67Pulse Monitor — Heart Rate on OLEDESP32 +Pulse Sensor+ OLEDReal-time BPM display with scrolling waveform & pixel-art heart on SSD1306 OLED via ADC peak detection
68Joystick Servo ControlRaspberry Pi Pico 2W + SG90 Servo + Joystick ModuleSmooth 0°–180° servo control via joystick X axis using PWM & 5-sample ADC averaging in MicroPython
69Joystick Direction DisplayRaspberry Pi Pico 2 + KY-023 Joystick + SSD1306 OLEDReal-time joystick direction detection displayed on OLED with raw ADC values using I2C and MicroPython
70Dual IR Entry/Exit Detector with TelegramESP32 + HW-201 IR Sensor x2 + Red LED + Green LEDDual IR sensor-based entry/exit detection system — red LED stays ON while object is inside, green LED blinks on exit, with real-time Telegram alerts
71Wi-Fi Controlled 4WD Robot CarESP32 + L298N Motor Driver x2 + TT DC Motor x4 + 4WD ChassisWi-Fi controlled 4WD robot car — ESP32 hosts a web server, browser-based interface with Forward, Backward, Left, Right, Stop controls over local Wi-Fi
72RFID Basic Access Control SystemESP8266 NodeMCU + MFRC522 + Green LED + Red LEDRFID based access control — ESP8266 reads MIFARE card UID over SPI, checks against authorised list, green LED for granted and red LED blinks for denied
73RFID Attendance LoggerESP32 + MFRC522 + Google SheetsRFID based attendance system — scans student cards, logs name, IN/OUT status and NTP timestamp to Google Sheets via Apps Script webhook
74RFID Relay Control SystemRaspberry Pi Pico 2 + MFRC522 + 1 Channel Relay + 5V Brushless FanRFID based relay control — authorized card tap toggles 5V brushless fan ON or OFF via active low relay module
75ESP-NOW RFID DisplayESP8266 x2 + MFRC522 + SSD1306 OLEDESP-NOW based RFID system — one ESP8266 scans card and sends UID wirelessly, second ESP8266 receives and displays UID on OLED
76Bidirectional_ESP_NOW Communication_with_Dual_Sensor_NodesESP8266 x2 + DHT11 x2 + SSD1306 + SH1106Two ESP8266 nodes simultaneously send and receive DHT11 sensor data over ESP-NOW, each displaying local and remote readings on OLED
77Battery_Monitor_with_Blynk_IoTESP8266 + TP4056 + 18650 + 2x10kΩReal-time Li-ion battery voltage and percentage monitoring using voltage divider, lookup table calibration, pushed live to Blynk IoT dashboard
78IoT-Based DSM Smart Metering PrototypeESP32 + ZMPT101B + ACS712 + Blynk IoT + MATLABReal-time AC voltage and current monitoring with power calculation, demand-side management relay control, and live energy dashboard on Blynk IoT with MATLAB-based data analysis
79GC9A01 Round Display SmartwatchESP32 + Xiao ESP32-S3 + GC9A01 + OpenWeatherMap + NTPRobot eyes boot animation with blink effect, typing animation, NTP-synced real-time clock, live weather via OpenWeatherMap API, and flicker-free display rendering on 1.28" round TFT
80NeoPixel 8-Ring Web ControllerPico 2W + WS2812B NeoPixel + MicroPythonBrowser-based IoT controller with rainbow cycle, breathe effect, solid color, real-time brightness and color control via non-blocking HTTP server on Pico 2W
81Finger Gesture LED ControlXiao ESP32-S3 + 5 LEDs + OpenCV + MicroPythonReal-time finger count detection via webcam controls 5 LEDs over USB Serial — 0 to 5 fingers = 0 to 5 LEDs ON
82Flame Sensor Servo AlertESP32 + Flame Sensor (AO) + SG90 Servo + MicroPythonAnalog flame detection via ADC triggers servo sweep from 0° to 180° as alert — resets when flame is gone
83Adafruit IO MQTT LED ControlPico 2W + MicroPython + Adafruit IO MQTTSubscribes to Adafruit IO led-control feed over MQTT — sends ON/OFF commands from dashboard to toggle onboard LED in real time
84PicoDeskPico 2W + MicroPython + SSD1306 + OpenWeatherMapDual OLED desktop companion station live clock, NTP time sync, weather, animated eyes, heart rain & mobile todo list via built-in web server
85Virtual LED Control via Node-RED Dashboard & MQTTPico 2W + MicroPython + Node-RED + Mosquitto + DockerVirtual LED control via Node-RED dashboard & MQTT — onboard LED toggle with virtual ON/OFF button over MQTT broker
86Joystick MQTT Controller with Node-RED DashboardPico 2W + MicroPython + Node-RED + Mosquitto + DockerAnalog joystick X/Y and button state published as JSON over MQTT — decomposed and visualized on Node-RED dashboard widgets
87Relay Control via Node-RED & MQTTPico 2W + MicroPython + Node-RED + MosquittoRelay module on GP15 controlled remotely via MQTT toggled using a Node-RED dashboard switch
88NeoPixel Control via Node-RED & MQTTPico 2W + MicroPython + Node-RED + MosquittoWS2812 NeoPixel ring on GP0 controlled remotely via MQTT with RGB color and blink delay set from Node-RED dashboard sliders
89MQTT DateTime Display on LCDPico W + MicroPython + MQTT + Mosquitto16x2 I2C LCD on GP14/GP15 displays real-time date and time by subscribing to an MQTT broker topic with JSON payloads
90MQTT Servo ControllerPico W + MicroPython + MQTT + MosquittoServo motor on GPIO 18 controlled remotely by subscribing to an MQTT broker topic, moves to angles 0–180 via PWM
91DHT11 MQTT Node-RED DashboardPico W + MicroPython + MQTT + Mosquitto + Node-RED + Docker + Oracle CloudDHT11 sensor on GPIO 18 publishes temperature and humidity to MQTT broker every 5 seconds, visualized as live gauges on a Node-RED dashboard running in Docker on Oracle Cloud VM
92Smart Home Automation ESP32 + DHT22 + 4 Relay + Adafruit IOESP32 + MicroPython + DHT22 + 4 Relay + Adafruit IO + MQTT + WokwiDHT22 sensor on GPIO 4 publishes temperature and humidity to Adafruit IO every 20 seconds, controls 4 relays (Fan, Humidifier, Light, Spare) via MQTT dashboard toggles simulated on Wokwi
93NTP Synchronized Clock — ESP32 + I2C LCDESP32 + MicroPython + NTP + I2C LCD + WokwiSyncs real-time clock via WiFi NTP and displays it on a 16x2 I2C LCD — Row 1: HH:MM:SS Day, Row 2: DD/MM/YYYY, with IST timezone offset included
94GPS Clock & Location Display — Pico W + NEO-6M + OLEDRaspberry Pi Pico W + MicroPython + NEO-6M GPS + SSD1306 OLED + I2CParses NMEA sentences (GPRMC/GPGGA) to display satellite-synced IST time, live latitude/longitude, speed, satellite count, and altitude on OLED — no WiFi/internet required
95PicoSense Dashboard Pico 2W + DHT11 + StreamlitRaspberry Pi Pico 2W + MicroPython + DHT11 + MQTT (Mosquitto) + StreamlitPublishes live temperature/humidity over MQTT and subscribes to LED control commands; Streamlit dashboard displays real-time readings with line chart and ON/OFF buttons to control two LEDs remotely
96ESP32 Joke FetcherESP32 + MicroPython + JokeAPI (HTTP/REST)Connects to WiFi and polls JokeAPI's Programming category over HTTPS at a fixed interval, parsing the JSON response and printing a new joke to the serial console every cycle
97PIR Parking SystemESP32 + MicroPython + PIR Sensor + SSD1306 OLEDTracks 2 parking slots using PIR sensors with a toggle approach, displaying live occupancy and total free spaces on an SSD1306 OLED screen
98Cloud NeoPixel ControlAWS EC2 + Mosquitto + Node-RED + ESP32 + MicroPython + NeoPixelControl a NeoPixel strip remotely via a Node-RED color picker dashboard over MQTT hosted on AWS EC2
99Smart Irrigation SystemAWS EC2 + Mosquitto + Node-RED + ESP32 + MicroPython + DHT22 + PotentiometerMonitor soil moisture, temperature, and humidity in real time with manual pump control via a Node-RED dashboard over MQTT on AWS EC2
100ESP-NOW Wireless LED Control with ShrikeFiESP32 DevKit + ShrikeFi (ESP32-S3 + ForgeFPGA) + MicroPython + ESP-NOW + SSD1306Toggle LEDs wirelessly on a Vicharak ShrikeFi board using ESP-NOW button presses with real-time status on an OLED display

Key Highlights

  • Step-by-step progression from basic to advanced IoT concepts
  • Hands-on experience with real hardware and simulations
  • IoT dashboards using Web Server, WebSocket & Blynk
  • Python & Matplotlib-based live data visualization
  • Beginner-friendly documentation & explanations
  • Clean, folder-wise project organization

Roadmap

  • Complete 100 IoT projects in 100 days
  • Each project includes:
  • main.py
  • Detailed README.md
  • Circuit diagram / simulation
  • Upcoming focus areas:
  • Cloud & IoT dashboards
  • OTA & firmware updates
  • Power optimization
  • Smart home & automation systems
  • AI-assisted IoT (basic level) ation, and more

Sponsors

Thanks to these amazing people for supporting this project:

Author

Kritish Mohapatra
Third Year B.Tech – Electrical Engineering
Interests: IoT | Embedded Systems | MicroPython | Automation
Building in public through #100DaysOfIoT


⭐ If you like this repository, give it a star on GitHub and follow for more IoT projects!

100daysofcode
adafruit
cpp
embedded-systems
embedded-systems-and-iot
esp32
esp8266
iot
iot-application
microcontroller
micropython
project
python
python-3
python3
python-iot
raspberry-pi
raspberry-pi-pico
wokwi-example

kritishmohapatra/100_Days_100_IoT_Projects

A 100-day challenge exploring IoT and embedded systems using ESP32, ESP8266, and Raspberry Pi Pico with MicroPython. Each day covers a new sensor or module with complete code, circuit diagram, and explanation.

Python

1,346

185 commits

updated Jul 17, 2026

See the code

README

White MicroPython Logo

100 Days 100 IoT Projects

Welcome to my 100 Days 100 IoT Projects repository!
This repo showcases my journey of learning and implementing IoT & Embedded Systems projects using ESP32, Raspberry Pi Pico, and MicroPython.

Each project is designed to teach a specific concept, sensor, or IoT technique — from basic analog/digital readings to web-based dashboards.

Buy Me A Coffee

MicroPython ESP32 ESP8266 Raspberry Pi Pico GitHub stars GitHub forks GitHub issues

100 Days 100 IoT Projects Banner

Recognition & Features

Featured on Adafruit

Featured on Hackster.io

Featured at Melbourne MicroPython Meetup

Awesome

Technologies, Boards & Tools Used

Hardware

  • ESP32, ESP8266 (NodeMCU)
  • Raspberry Pi Pico / Pico W / Pico 2 W
  • XIAO ESP32-S3
  • Arduino (UNO / Nano)

Programming & Platforms

  • MicroPython
  • Python (Tkinter, CustomTkinter, Matplotlib)
  • Arduino + Python (Serial, PyFirmata)

Sensors & Modules

  • LDR, Potentiometer, DHT11
  • PIR, IR, Ultrasonic (HC-SR04)
  • Gas Sensors (MQ-4, MQ-7, MQ-135)
  • RTC (DS3231), TM1637, OLED, LCD
  • Relay, Servo, Touch Sensor

Concepts Covered

  • ADC, PWM, GPIO
  • Wi-Fi, Web Server, WebSocket
  • Bluetooth, Blynk IoT
  • Data logging & visualization
  • Simulation-based testing

Project List

DayProjectBoard / SensorDescription
1Auto Night LightESP32 + LDRAutomatic LED turns ON/OFF based on ambient light
2Dimmer LED using PotentiometerESP32 + PotentiometerLED brightness controlled via potentiometer using ADC + PWM
3DHT11 Temperature & Humidity Web ServerESP32 + DHT11Reads temperature & humidity and displays on a live web page
41-Digit Seven Segment DisplayRaspberry Pi Pico + 7-SegmentDisplays numeric output using GPIO control
5Mini Weather Station (DHT11 + LCD)ESP8266 + DHT11 + I²C LCDDisplays real-time temperature & humidity on 16x2 LCD without flickering
6RGB Color Mixer using PotentiometersESP32 + 3 Potentiometers + RGB LEDMix RGB colors by adjusting potentiometers using ADC and PWM
7Potentiometer Bar Graph DisplayESP32 + Potentiometer + 10 LEDsVisualize analog input as a 10-LED bar graph using ADC mapping
8MQ4 Gas Leak Detection SystemESP32 + MQ4 Sensor + BuzzerDetects methane gas concentration using MQ4 sensor and triggers alert when gas level exceeds threshold
9Basic RTC Clock (Serial Monitor Display)ESP8266 + DS3231 RTCDisplays real-time date, time, and temperature on Serial Monitor using DS3231 RTC
10IoT Button Counter using ESP8266 & MicroPythonESP8266 + 3 Push ButtonsCounts button presses (Increment, Decrement, Reset) and displays live counter on webpage
11MicroPython-Based 8×8 LED Matrix Animation Display using ESP8266ESP8266 + MAX7219 8×8 LED MatrixDisplays custom animations (heart beat) on 8×8 LED matrix using MicroPython
12PIR Motion Detector using Raspberry Pi Pico 2W & MicroPythonRaspberry Pi Pico 2W + PIR SensorDetects motion using PIR sensor and indicates using built-in LED with MicroPython
13Bluetooth-Based Wireless LED Control SystemRaspberry Pi Pico 2W + HC-05Wireless LED ON/OFF control using MicroPython + HC-05 Bluetooth module
14Pico W Web Servo ControllerRaspberry Pi Pico 2W + Servo MotorControl servo angle (0–180°) from browser via WiFi
15ClimaPixel — Mini Weather DisplayESP32/ESP8266 + DHT11 + SSD1306 OLEDReal-time temperature & humidity display with icons on OLED using MicroPython
16TM1637 Button-Press Counter using ESP8266 & MicroPythonESP8266 + TM1637 + Push ButtonCounts button presses and displays live counter on TM1637 4-digit display
17IoT Relay Control Web Server (Raspberry Pi Pico 2W)Raspberry Pi Pico 2W + Relay ModuleWeb-based relay control using MicroPython with a smooth slide switch UI and real-time ON/OFF status over WiFi
18Blynk-Based IoT Relay Control (Raspberry Pi Pico 2 W)Raspberry Pi Pico 2 W + Relay ModuleMobile app–based relay control using Blynk IoT and MicroPython with real-time ON/OFF control over Wi-Fi
19NTP Digital Clock using TM1637 & ESP8266 (MicroPython)ESP8266 + TM1637Internet-synchronized digital clock using NTP with accurate HH:MM display, blinking colon, and custom segment mapping in MicroPython
20Smart IR Object Detection SystemESP8266 + IR Sensor + LED + BuzzerDetects the presence of an object using an IR sensor and triggers LED and buzzer alerts in real time using MicroPython
21ESP32 Password Lock SystemESP32 + Keypad + LCD + LEDsImplements a secure password authentication system using a keypad and LCD with visual LED feedback, developed in MicroPython
22Blynk Controlled DC Brushless FanRaspberry Pi Pico W + Relay + DC Brushless FanControls a DC brushless fan remotely using the Blynk IoT platform and a relay module, implemented in MicroPython
23ESP32 Hotspot SetupESP32Configures ESP32 in Access Point (Hotspot) mode using MicroPython, enabling direct device-to-device connectivity without internet
24Voice-Controlled LED SystemArduino + PythonControls an LED using voice commands processed in Python and sent to Arduino via serial communication
25Arduino RGB LED Control with Python GUIArduino + PythonControls an RGB LED using a Python GUI built with CustomTkinter and PyFirmata2, allowing color selection, individual LED on/off control, and brightness adjustment via sliders
26Clap Toggle Switch using ESP32 (MicroPython)ESP32 + MicroPythonA clap-controlled toggle switch using a digital sound sensor where one clap turns the output ON and the next clap turns it OFF, implemented with debounce logic for reliable operation
27IR Sensor Telegram Alert using ESP32 (MicroPython)ESP32 + MicroPythonAn IR sensor–based object detection system that sends real-time alert notifications to a Telegram channel whenever motion or object presence is detected near the sensor
28Soil Moisture Sensor Dry/Wet Detection using ESP8266 (MicroPython)ESP8266 + MicroPythonA soil moisture monitoring system that reads analog sensor values and determines dry or wet soil conditions in real time, displaying the status on the serial monitor
29Rain Sensor Analog Detection using ESP8266 (MicroPython)ESP8266 + MicroPythonAn analog rain detection system that reads real-time sensor values to determine rain intensity (no rain, light rain, heavy rain) and displays the status on the serial monitor
30Ultrasonic Distance Indicator using ESP32 (MicroPython)ESP32 + MicroPythonA distance-based indication system using an HC-SR04 ultrasonic sensor that measures real-time distance and indicates object proximity using red and green LEDs
31WebSocket LED Control using Raspberry Pi Pico WPico W + MicroPythonA real-time LED control system using WebSockets where a browser communicates directly with Raspberry Pi Pico W over WiFi to turn an LED ON or OFF without page refresh
32MQ-135 Gas Sensor with ESP32ESP32 + MicroPythonA gas level monitoring system using the MQ-135 sensor and ESP32 to read and average analog sensor values for stable environmental gas detection
33MQ-7 Carbon Monoxide Sensor with ESP32ESP32 + MicroPythonA carbon monoxide monitoring system using the MQ-7 sensor and ESP32 to read and average analog sensor values for real-time CO detection
34Servo Motor Control with Raspberry Pi Pico 2 WRaspberry Pi Pico 2 W + MicroPythonA simulation-based servo motor control project using PWM, where the user inputs an angle (0–180°) via serial monitor and the servo rotates accordingly with safe angle clamping
35ESP8266 Touch Sensor LED ControlESP8266 (NodeMCU) + MicroPythonA capacitive touch-based toggle switch using the TTP223 touch sensor, where each touch alternates the state of an external LED with proper debounce handling
36ESP8266 DHT11 Live Monitor Matplotlib and MicroPythonESP8266 + MicroPython + MatplotlibReal-time DHT11 temperature and humidity visualization with a dark neon-themed live graph using serial communication
37XIAO ESP32 4-LED Control using CustomTkinter and MicroPythonXIAO ESP32-S3 + MicroPython + CustomTkinterDesktop GUI application to control four ESP32 GPIO LEDs via serial communication using a modern dark-mode CustomTkinter interface
38ESP32 OLED Smart UI with Eyes Animation, Time & Weather (MicroPython)ESP32 + SSD1306 OLED + MicroPythonInteractive OLED UI featuring animated eyes, touch-based menu navigation, NTP-synced IST date & time, and live weather data using OpenWeatherMap API
39ESP32 Stepper Motor Control using A4988 (MicroPython)ESP32 + A4988 + NEMA 17Stepper motor control using STEP/DIR signals with direction control, speed adjustment via delay, and serial monitoring using print statements
40Pico W Async LED Control (MicroPython)Raspberry Pi Pico WAsync web server using uasyncio to control onboard LED via browser with ON/OFF buttons and fetch-based requests
41EEPROM Simulation using MicroPython (ESP32)ESP32File-based EEPROM emulation using MicroPython with byte-level read/write and persistent string storage
42ESP32 DC Motor Web Speed Control (MicroPython)ESP32 + L298NWeb-based slider controlled DC motor speed system using PWM, MicroPython web server, and L298N driver
43Temperature Based LED Indicator (MicroPython)ESP32 + DHT22Beginner-friendly ESP32 project that reads temperature data from DHT22 and visually indicates temperature levels using LEDs
44Flask LED Control using MicroPythonESP32 / Pico WBeginner-friendly IoT project where a Flask web server controls an LED on ESP32 or Pico W through HTTP polling using MicroPython
45Smart Cooling System using ESP8266ESP8266+DHT11+BRUSHLESS FANBeginner-friendly IoT project that automatically controls a fan using DHT11 temperature sensor and an active-LOW relay with MicroPython
46Soil & Weather Monitoring using ESP8266 and ThingSpeakESP8266 + DHT11 + Soil SensorBeginner-friendly IoT project that monitors soil moisture, temperature, and humidity and visualizes the data on the ThingSpeak cloud using MicroPython
47Smart Irrigation System using XIAO ESP32-S3 and BlynkXIAO ESP32-S3 + Soil Sensor + Relay + PumpA smart irrigation system that monitors soil moisture in real time and allows manual water pump control via the Blynk IoT platform using MicroPython
48HTTP-Based DHT11 Data Logger using Raspberry Pi Pico WRaspberry Pi Pico 2W + DHT11A simple IoT data logging system that reads temperature and humidity from a DHT11 sensor and sends the data via HTTP POST to a Flask server, where it is stored in a CSV file for analysis
49ThingsBoard RPC LED Control & DHT11 Telemetry using Raspberry Pi Pico 2 WRaspberry Pi Pico 2 W + DHT11A cloud-connected IoT system using MicroPython where a Raspberry Pi Pico 2 W sends temperature and humidity data to ThingsBoard via MQTT and allows remote LED control using RPC from a dashboard
50ESP32 BMP180 Atmospheric Monitoring with Blynk IoTESP32 + BMP180A cloud-connected IoT system using MicroPython where an ESP32 measures temperature, atmospheric pressure, and altitude using the BMP180 sensor and sends real-time data to the Blynk IoT dashboard via Wi-Fi
51ESP8266 Smart Home Automation using MicroPython & BlynkESP8266 + DHT11 + RelayA cloud-based smart home automation system where an ESP8266 controls home appliances via relay and monitors temperature & humidity using DHT11, with real-time control and monitoring through the Blynk IoT dashboard over Wi-Fi
52IoT Sensor Anomaly Detection using ESP8266 & ThingSpeakESP8266 + DHT11 + LDR + MATLABAn IoT-based environmental monitoring system that uploads real-time sensor data to ThingSpeak and performs statistical anomaly detection using Z-score analysis in MATLAB, with visualization and outlier classification
53Smart IoT Gas Monitoring SystemESP32 + MQ Gas Sensor + DHT11 + Flask + Chart.jsAn AI-inspired end-to-end IoT gas monitoring system that streams real-time sensor data to a Flask backend, applies moving-average based anomaly detection for SAFE/DANGER classification, logs data for analytics, and visualizes live environmental insights on an interactive web dashboard
54ESP8266 ESP-NOW LED ControlESP8266 + ESP-NOW + MicroPythonA low-latency wireless LED control system using ESP-NOW protocol, where one ESP8266 acts as a transmitter and the other as a receiver, enabling real-time device control without WiFi infrastructure
55ESP8266 ESP-NOW Button to LED ControlESP8266 + ESP-NOW + MicroPythonA low-latency peer-to-peer wireless communication system where a push button on one ESP8266 toggles an LED on another ESP8266 without WiFi or access point
56ESP8266 ESP-NOW 4-Channel Wireless Relay ControllerESP8266 + ESP-NOW + MicroPythonA wireless 4-channel relay control system using two ESP8266 boards, where push buttons on the sender toggle relays on the receiver via low-latency ESP-NOW communication without WiFi
57ESP-NOW Smart Relay & Sensor SystemESP8266/ESP32 + ESP-NOW + MicroPythonA bidirectional ESP-NOW based smart relay and sensor system where a sender control panel toggles relays on a receiver and receives real-time DHT temperature and humidity data displayed on an OLED
58NTP Synchronized LED Matrix ClockESP32 + MAX7219 + MicroPython + NTPA real-time internet-synchronized digital clock using chained MAX7219 LED matrices, showing HH:MM with NTP time sync and serial debugging output
59AQI-ESP - IoT AQI Monitoring SystemESP32 + MicroPython + Flask + MQ135 + MQ7 + PM2.5A real-time air quality monitoring system using ESP32 and multiple gas sensors, calculating AQI via Flask backend and displaying live results on SSD1306 OLED with status like Good/Moderate/Unhealthy/Hazardous
60Student Management System - ESP32ESP32 + MicroPython + SH1106 OLED + LittleFS + ujsonA serial command-based student record management system running on ESP32, storing up to 1000 student records in JSON format on onboard flash memory with live navigation and display on SH1106 OLED
61OTA Update - Raspberry Pi Pico 2 WRaspberry Pi Pico 2 W + MicroPython + GitHub + urequestsA WiFi-based OTA (Over-the-Air) update system that automatically downloads and applies new code from GitHub on every boot without physically connecting the device to a computer
62Smart Indoor Security SystemESP32 + PIR Sensor + 4x4 Keypad + MicroPython + Favoriot IoTA motion-triggered keypad security system that detects intruders, requests a password, logs all events to the Favoriot IoT cloud, and sends email alerts on unauthorized access
63ESP32 BLE LED ControlESP32 + MicroPython + Bluetooth Low Energy (BLE)A BLE UART-based LED control system that allows wireless toggling of the onboard LED via smartphone commands, with connection status indication and real-time state feedback
64microclawup — AI Powered ESP32 GPIO ControllerESP32 + Groq AI + TelegramAI-powered natural language GPIO controller using MicroPython, Groq AI and Telegram bot
65MicroPython WatchXiao ESP32-S3 + SSD1306 OLED + OpenWeatherMapNTP time sync + live weather on a 0.96" OLED display
66micropidash — IoT Web DashboardRaspberry Pi Pico 2W / ESP32Non-blocking web dashboard with real-time sync, dark mode & sensor monitoring via uasyncio
67Pulse Monitor — Heart Rate on OLEDESP32 +Pulse Sensor+ OLEDReal-time BPM display with scrolling waveform & pixel-art heart on SSD1306 OLED via ADC peak detection
68Joystick Servo ControlRaspberry Pi Pico 2W + SG90 Servo + Joystick ModuleSmooth 0°–180° servo control via joystick X axis using PWM & 5-sample ADC averaging in MicroPython
69Joystick Direction DisplayRaspberry Pi Pico 2 + KY-023 Joystick + SSD1306 OLEDReal-time joystick direction detection displayed on OLED with raw ADC values using I2C and MicroPython
70Dual IR Entry/Exit Detector with TelegramESP32 + HW-201 IR Sensor x2 + Red LED + Green LEDDual IR sensor-based entry/exit detection system — red LED stays ON while object is inside, green LED blinks on exit, with real-time Telegram alerts
71Wi-Fi Controlled 4WD Robot CarESP32 + L298N Motor Driver x2 + TT DC Motor x4 + 4WD ChassisWi-Fi controlled 4WD robot car — ESP32 hosts a web server, browser-based interface with Forward, Backward, Left, Right, Stop controls over local Wi-Fi
72RFID Basic Access Control SystemESP8266 NodeMCU + MFRC522 + Green LED + Red LEDRFID based access control — ESP8266 reads MIFARE card UID over SPI, checks against authorised list, green LED for granted and red LED blinks for denied
73RFID Attendance LoggerESP32 + MFRC522 + Google SheetsRFID based attendance system — scans student cards, logs name, IN/OUT status and NTP timestamp to Google Sheets via Apps Script webhook
74RFID Relay Control SystemRaspberry Pi Pico 2 + MFRC522 + 1 Channel Relay + 5V Brushless FanRFID based relay control — authorized card tap toggles 5V brushless fan ON or OFF via active low relay module
75ESP-NOW RFID DisplayESP8266 x2 + MFRC522 + SSD1306 OLEDESP-NOW based RFID system — one ESP8266 scans card and sends UID wirelessly, second ESP8266 receives and displays UID on OLED
76Bidirectional_ESP_NOW Communication_with_Dual_Sensor_NodesESP8266 x2 + DHT11 x2 + SSD1306 + SH1106Two ESP8266 nodes simultaneously send and receive DHT11 sensor data over ESP-NOW, each displaying local and remote readings on OLED
77Battery_Monitor_with_Blynk_IoTESP8266 + TP4056 + 18650 + 2x10kΩReal-time Li-ion battery voltage and percentage monitoring using voltage divider, lookup table calibration, pushed live to Blynk IoT dashboard
78IoT-Based DSM Smart Metering PrototypeESP32 + ZMPT101B + ACS712 + Blynk IoT + MATLABReal-time AC voltage and current monitoring with power calculation, demand-side management relay control, and live energy dashboard on Blynk IoT with MATLAB-based data analysis
79GC9A01 Round Display SmartwatchESP32 + Xiao ESP32-S3 + GC9A01 + OpenWeatherMap + NTPRobot eyes boot animation with blink effect, typing animation, NTP-synced real-time clock, live weather via OpenWeatherMap API, and flicker-free display rendering on 1.28" round TFT
80NeoPixel 8-Ring Web ControllerPico 2W + WS2812B NeoPixel + MicroPythonBrowser-based IoT controller with rainbow cycle, breathe effect, solid color, real-time brightness and color control via non-blocking HTTP server on Pico 2W
81Finger Gesture LED ControlXiao ESP32-S3 + 5 LEDs + OpenCV + MicroPythonReal-time finger count detection via webcam controls 5 LEDs over USB Serial — 0 to 5 fingers = 0 to 5 LEDs ON
82Flame Sensor Servo AlertESP32 + Flame Sensor (AO) + SG90 Servo + MicroPythonAnalog flame detection via ADC triggers servo sweep from 0° to 180° as alert — resets when flame is gone
83Adafruit IO MQTT LED ControlPico 2W + MicroPython + Adafruit IO MQTTSubscribes to Adafruit IO led-control feed over MQTT — sends ON/OFF commands from dashboard to toggle onboard LED in real time
84PicoDeskPico 2W + MicroPython + SSD1306 + OpenWeatherMapDual OLED desktop companion station live clock, NTP time sync, weather, animated eyes, heart rain & mobile todo list via built-in web server
85Virtual LED Control via Node-RED Dashboard & MQTTPico 2W + MicroPython + Node-RED + Mosquitto + DockerVirtual LED control via Node-RED dashboard & MQTT — onboard LED toggle with virtual ON/OFF button over MQTT broker
86Joystick MQTT Controller with Node-RED DashboardPico 2W + MicroPython + Node-RED + Mosquitto + DockerAnalog joystick X/Y and button state published as JSON over MQTT — decomposed and visualized on Node-RED dashboard widgets
87Relay Control via Node-RED & MQTTPico 2W + MicroPython + Node-RED + MosquittoRelay module on GP15 controlled remotely via MQTT toggled using a Node-RED dashboard switch
88NeoPixel Control via Node-RED & MQTTPico 2W + MicroPython + Node-RED + MosquittoWS2812 NeoPixel ring on GP0 controlled remotely via MQTT with RGB color and blink delay set from Node-RED dashboard sliders
89MQTT DateTime Display on LCDPico W + MicroPython + MQTT + Mosquitto16x2 I2C LCD on GP14/GP15 displays real-time date and time by subscribing to an MQTT broker topic with JSON payloads
90MQTT Servo ControllerPico W + MicroPython + MQTT + MosquittoServo motor on GPIO 18 controlled remotely by subscribing to an MQTT broker topic, moves to angles 0–180 via PWM
91DHT11 MQTT Node-RED DashboardPico W + MicroPython + MQTT + Mosquitto + Node-RED + Docker + Oracle CloudDHT11 sensor on GPIO 18 publishes temperature and humidity to MQTT broker every 5 seconds, visualized as live gauges on a Node-RED dashboard running in Docker on Oracle Cloud VM
92Smart Home Automation ESP32 + DHT22 + 4 Relay + Adafruit IOESP32 + MicroPython + DHT22 + 4 Relay + Adafruit IO + MQTT + WokwiDHT22 sensor on GPIO 4 publishes temperature and humidity to Adafruit IO every 20 seconds, controls 4 relays (Fan, Humidifier, Light, Spare) via MQTT dashboard toggles simulated on Wokwi
93NTP Synchronized Clock — ESP32 + I2C LCDESP32 + MicroPython + NTP + I2C LCD + WokwiSyncs real-time clock via WiFi NTP and displays it on a 16x2 I2C LCD — Row 1: HH:MM:SS Day, Row 2: DD/MM/YYYY, with IST timezone offset included
94GPS Clock & Location Display — Pico W + NEO-6M + OLEDRaspberry Pi Pico W + MicroPython + NEO-6M GPS + SSD1306 OLED + I2CParses NMEA sentences (GPRMC/GPGGA) to display satellite-synced IST time, live latitude/longitude, speed, satellite count, and altitude on OLED — no WiFi/internet required
95PicoSense Dashboard Pico 2W + DHT11 + StreamlitRaspberry Pi Pico 2W + MicroPython + DHT11 + MQTT (Mosquitto) + StreamlitPublishes live temperature/humidity over MQTT and subscribes to LED control commands; Streamlit dashboard displays real-time readings with line chart and ON/OFF buttons to control two LEDs remotely
96ESP32 Joke FetcherESP32 + MicroPython + JokeAPI (HTTP/REST)Connects to WiFi and polls JokeAPI's Programming category over HTTPS at a fixed interval, parsing the JSON response and printing a new joke to the serial console every cycle
97PIR Parking SystemESP32 + MicroPython + PIR Sensor + SSD1306 OLEDTracks 2 parking slots using PIR sensors with a toggle approach, displaying live occupancy and total free spaces on an SSD1306 OLED screen
98Cloud NeoPixel ControlAWS EC2 + Mosquitto + Node-RED + ESP32 + MicroPython + NeoPixelControl a NeoPixel strip remotely via a Node-RED color picker dashboard over MQTT hosted on AWS EC2
99Smart Irrigation SystemAWS EC2 + Mosquitto + Node-RED + ESP32 + MicroPython + DHT22 + PotentiometerMonitor soil moisture, temperature, and humidity in real time with manual pump control via a Node-RED dashboard over MQTT on AWS EC2
100ESP-NOW Wireless LED Control with ShrikeFiESP32 DevKit + ShrikeFi (ESP32-S3 + ForgeFPGA) + MicroPython + ESP-NOW + SSD1306Toggle LEDs wirelessly on a Vicharak ShrikeFi board using ESP-NOW button presses with real-time status on an OLED display

Key Highlights

  • Step-by-step progression from basic to advanced IoT concepts
  • Hands-on experience with real hardware and simulations
  • IoT dashboards using Web Server, WebSocket & Blynk
  • Python & Matplotlib-based live data visualization
  • Beginner-friendly documentation & explanations
  • Clean, folder-wise project organization

Roadmap

  • Complete 100 IoT projects in 100 days
  • Each project includes:
  • main.py
  • Detailed README.md
  • Circuit diagram / simulation
  • Upcoming focus areas:
  • Cloud & IoT dashboards
  • OTA & firmware updates
  • Power optimization
  • Smart home & automation systems
  • AI-assisted IoT (basic level) ation, and more

Sponsors

Thanks to these amazing people for supporting this project:

Author

Kritish Mohapatra
Third Year B.Tech – Electrical Engineering
Interests: IoT | Embedded Systems | MicroPython | Automation
Building in public through #100DaysOfIoT


⭐ If you like this repository, give it a star on GitHub and follow for more IoT projects!

100daysofcode
adafruit
cpp
embedded-systems
embedded-systems-and-iot
esp32
esp8266
iot
iot-application
microcontroller
micropython
project
python
python-3
python3
python-iot
raspberry-pi
raspberry-pi-pico
wokwi-example

Significant stargazers

José Carlos García

193 followers · starred Mar 2026

toge

108 followers · starred Feb 2026

ztmr

54 followers · starred Jun 2026

Atharva Jaiswal

17 followers · starred Mar 2026