Repo of the Day
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.
Published: Mar 30, 2026
Open repository ↗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 ...
Summary
This repository is a 100-day learning archive of IoT and embedded projects built with ESP32, ESP8266, and Raspberry Pi Pico boards running MicroPython. Each entry targets a single sensor, module, or concept, pairing example code with a circuit diagram and a written explanation. It works as a reference shelf you can pull from when wiring up a common component or prototyping a small device.
What it is useful for
The repo is most useful when you need a working starting point for a specific board-and-sensor combination. The project list covers analog and digital basics (LDR, potentiometer, DHT11, PIR, HC-SR04 ultrasonic), displays (TM1637, MAX7219 matrix, SSD1306 OLED, I²C LCD), gas sensors (MQ-4, MQ-7, MQ-135), actuators (servo, relay, stepper, DC motor), and peripherals like the DS3231 RTC and MFRC522 RFID reader.
Beyond hardware, the projects demonstrate communication and integration patterns: ESP-NOW peer-to-peer links between ESP8266 boards, BLE LED control on ESP32, WebSocket and uasyncio-based web servers on Pico W, and cloud hooks into Blynk, ThingSpeak, ThingsBoard, Favoriot, Telegram, Google Sheets via Apps Script, and a Flask backend with a Chart.js dashboard. Larger builds include a Wi-Fi-controlled 4WD robot car, an RFID attendance logger, a heart-rate pulse monitor on OLED, an NTP-synchronized LED matrix clock, an OTA update mechanism for Pico 2 W, and an AI-assisted GPIO controller driven by a Telegram bot and Groq.
How engineers can use it
Pick a day whose title matches the sensor or topic you need, then open that folder's README for wiring notes and MicroPython source. The top-level README is essentially a table of contents linking each project to its per-folder page.
A few practical notes from the source:
- The visible project table ends at day 74, with day 74's description itself cut off mid-sentence, so the contents of the final days are not documented in the supplied README and would need to be confirmed by browsing the repository directly.
- Several projects include
(Wokwi)in their folder names, andwokwi-exampleis listed as a topic, so simulation is an option for the projects that support it. - There is no single root-level install or flash command documented; each project has its own setup steps, board flashing procedure, and pin definitions inside its folder.
- A few projects (voice-controlled LED, CustomTkinter LED controller) mix Arduino firmware with a Python host on the laptop, illustrating serial-based control alongside the MicroPython work.
This combination of small, self-contained examples and clearly named folders makes the repository more of a cookbook than a framework, which fits how embedded engineers usually hunt for reference code.