Many people learning electronics hit the same wall. They make an LED blink, feel pleased and then have no idea what to build next. Tutorials explain one sensor at a time, then stop. Nothing joins together into a device you would actually use.
The 100 Days 100 IoT Projects collection tackles that problem with a simple structure: one small project per day, a hundred days in a row. It focuses on the ESP32, the ESP8266 and the Raspberry Pi Pico, mostly using MicroPython. Each project comes with source code, a circuit diagram and an explanation. The topics move from basic digital and analogue readings to Wi-Fi, Bluetooth, web dashboards, MQTT and cloud monitoring. It has also been featured by maker publications.
This guide explains why the format works, how to use it well, what hardware you need and how to use an AI assistant alongside it without skipping the learning.
Why MicroPython is a good start
MicroPython is a version of Python that runs on microcontrollers. You can type a line of code into a prompt connected to the board and see the result at once, without waiting for a compile and upload. That fast feedback is valuable when you are learning what a pin, a sensor or a timer does. Later, if you need more speed or lower power, you can move to C or C++ with the Arduino framework or ESP-IDF, and the concepts you learned will carry over.
What the collection covers
Based on the collection's own description, the projects include:
Basic inputs and outputs: LEDs, buttons, analogue readings and PWM for dimming and motor speed.
Common sensors: temperature and humidity, gas, ultrasonic distance and motion sensors.
Networking: Wi-Fi, Bluetooth Low Energy, ESP-NOW for board-to-board messages and WebSocket for live web pages.
Dashboards and cloud: web control pages, MQTT, and services such as Blynk and ThingSpeak.
Bigger builds: home automation, security systems, weather stations, smart irrigation, network time clocks and some AI-related IoT projects.
Many projects can also be tried in the Wokwi online simulator if you do not have the parts yet.
What you need
An ESP32 development board. A common board with a USB port and pin headers is enough.
A breadboard, jumper wires, a few LEDs, resistors and push buttons.
A starter sensor kit. Many low-cost kits include most of the sensors used in beginner projects.
A computer with Thonny or another editor that supports MicroPython, and the MicroPython firmware for your board.
A USB data cable.
How to use the collection well
Do not race. One project per day is a pace, not a rule. If a project teaches something new, spend two days on it.
Type the code instead of copying it. It is slower, and that is the point. You notice each line.
Change one thing after each project. Make the LED blink faster, change the threshold for the sensor or add a second button. A small change proves you understood it.
Keep a notebook. Write what you built, what went wrong and how you fixed it. Your notes will become your own reference.
Combine projects. After a few weeks, join two earlier projects into one device: a temperature sensor and a web dashboard, or a motion sensor and a buzzer.
Using an AI assistant as a tutor
An AI chat assistant or code editor can make this kind of learning much faster, if you use it to understand rather than to skip ahead.
Paste a project's code and ask for a line-by-line explanation in plain words. Then close the chat and try to explain it back to yourself.
When something does not work, describe exactly what you see, paste the error and the wiring and ask what could cause it. Ask for three possible causes ranked by likelihood, not just one fix.
Ask the assistant for a small challenge based on the project you just did, such as making the LED fade instead of blink. Try it yourself before asking for the answer.
Later in the hundred days, ask an AI coding agent to help you convert one of your favourite MicroPython projects to Arduino C++, and compare the two versions. This is a good bridge to the larger ESP32 world.
Be careful with wiring advice. An assistant cannot see your board, and it can be wrong about pin numbers or voltages. Check pin diagrams for your exact board, and never connect anything to mains power based on a chat answer.
Pitfalls
Charge-only cables. If your computer does not see the board, try a different cable first.
Wrong firmware. MicroPython has different builds for different ESP32 chips. Use the one for your exact chip.
Five volt sensors on three volt pins. The ESP32 uses 3.3 volt logic. Some sensors output 5 volts and can damage it without a level shifter or divider.
Pins that are not free. Some ESP32 pins are used during start-up or for flash memory. If the board will not boot after wiring something, check which pins are safe.
Cloud accounts and keys. Projects that use cloud dashboards need accounts and keys. Keep keys in a separate file and do not share them in screenshots.
Ways to extend the journey
After the hundred days, pick one project and turn it into a finished device with a case, a power supply and a proper install in your home.
Learn ESPHome to connect your sensors to Home Assistant without writing code.
Try a voice or camera project, such as a voice assistant or an on-device vision model, using what you learned about networking and inputs.
Share your own versions and notes in a public repository, so other beginners can learn from your mistakes.
The short version
The 100 Days 100 IoT Projects collection breaks ESP32, ESP8266 and Pico learning into small MicroPython projects with code, wiring and explanations, moving from LEDs and sensors to Wi-Fi, Bluetooth, MQTT and dashboards. Go at a steady pace, type the code, change one thing after each project and combine projects over time. Use an AI assistant as a tutor that explains and challenges you, check its wiring advice against real pin diagrams and keep your notes and keys organised.
Project resources: https://github.com/kritishmohapatra/100_Days_100_IoT_Projects
