Source: https://mokxi.com/learn/path/iot-capstone
Updated: 2026-11-11

All paths

# IoT capstone: your own connected product

Design and build a connected product of your own on the ESP32-C3, milestone by milestone: the brief, the data contract, firmware, a dashboard, failure handling, a security review and a demo.

ESP32-C3-DevKitM-1 Free 7 lessons 8 h 4 chapters 3,550 XP Embedded engineering · Expert +400 XP

0 of 7 done

Start the course free Pick a product Lesson plan for teachers

What you will build

## 3 projects, built step by step

7 lessons in 4 chapters, about 8 hours on a simulated ESP32-C3-DevKitM-1. Free, in your browser, every step checked by the simulator.

Chapter 1 project

### Data and API design

Design the message before the code: a versioned JSON reading with units in its field names, a round trip through echo.mokxi to prove it parses, and a config pulled from api.mokxi that is checked before it is trusted.
Open it in the simulator

Chapter 2 project

### Dashboard

The node serves its own dashboard and a JSON endpoint from a WebServer, with one setLimit() behind both the form and the Serial Monitor, and the status LED following whatever either one sets.
Open it in the simulator

Chapter 3 project

### Security review

Review the node like an attacker: a token printed to the log, a limit that trusts any text, a name that could inject HTML into the dashboard, and a short threat model of who can reach what.
Open it in the simulator

The map

## Chapter by chapter

Each lesson opens when the one before it is done, and each chapter ends in a project.

Chapter 1

## Plan it

Pick a product, write requirements with numbers, and design the data before the code.

Open 350 XP

### Pick a product

The brief for a connected product of your own, and FridgeWatch, the reference build: a shared-fridge monitor that has to do its one job before it ever touches a network.

0 of 6 steps

Start What is in it

Project Locked 800 XP

### Data and API design

Design the message before the code: a versioned JSON reading with units in its field names, a round trip through echo.mokxi to prove it parses, and a config pulled from api.mokxi that is checked before it is trusted.

0 of 7 steps

Chapter 2

## Build it

Firmware that never waits, and a dashboard served by the board itself.

Locked 350 XP

### Firmware

The node as one loop that never waits: each job checks its own millis() clock and returns, so the LED keeps blinking while reports go out, and a serial console answers at any moment.

0 of 6 steps

Project Locked 640 XP

### Dashboard

The node serves its own dashboard and a JSON endpoint from a WebServer, with one setLimit() behind both the form and the Serial Monitor, and the status LED following whatever either one sets.

0 of 6 steps

Chapter 3

## Harden it

Survive a bad network and a curious attacker.

Locked 400 XP

### Failure handling

Make it expect trouble: WiFi as a state machine that names each failure and backs off, a weak-signal warning, a config fetch that survives errors and bad JSON, and readings buffered through an outage and sent when it ends.

0 of 7 steps

Project Locked 640 XP

### Security review

Review the node like an attacker: a token printed to the log, a limit that trusts any text, a name that could inject HTML into the dashboard, and a short threat model of who can reach what.

0 of 6 steps

Chapter 4

## Ship it

A 60 second demo, a release, a README and a link to share.

Locked 370 XP

### Demo and write-up

The finished build in a 60 second demo: it reports, it warns, it survives an outage. Then tag the release, write the README and share the project.

0 of 7 steps

Syllabus

## Every lesson in the course

All 7 lessons, in order, each with what it covers. Any of them opens in the editor right away.

Chapter 1

### Plan it

- Pick a product The brief for a connected product of your own, and FridgeWatch, the reference build: a shared-fridge monitor that has to do its one job before it ever touches a network.
- Data and API design Design the message before the code: a versioned JSON reading with units in its field names, a round trip through echo.mokxi to prove it parses, and a config pulled from api.mokxi that is checked before it is trusted.

Chapter 2

### Build it

- Firmware The node as one loop that never waits: each job checks its own millis() clock and returns, so the LED keeps blinking while reports go out, and a serial console answers at any moment.
- Dashboard The node serves its own dashboard and a JSON endpoint from a WebServer, with one setLimit() behind both the form and the Serial Monitor, and the status LED following whatever either one sets.

Chapter 3

### Harden it

- Failure handling Make it expect trouble: WiFi as a state machine that names each failure and backs off, a weak-signal warning, a config fetch that survives errors and bad JSON, and readings buffered through an outage and sent when it ends.
- Security review Review the node like an attacker: a token printed to the log, a limit that trusts any text, a name that could inject HTML into the dashboard, and a short threat model of who can reach what.

Chapter 4

### Ship it

- Demo and write-up The finished build in a 60 second demo: it reports, it warns, it survives an outage. Then tag the release, write the README and share the project.

Kits

## Build it on your bench too

Every lesson runs in the simulator with nothing to buy. When you want the real thing, these kits have the parts.

Have a kit already?

### Find your kit

Pick the starter kit you own and run every lesson in its manual with the same parts on the same pins.
See every kit

Questions

## About IoT capstone: your own connected product

Is IoT capstone: your own connected product free?

Yes. All 7 lessons of IoT capstone: your own connected product are free and run in your browser, with nothing to install and no parts to buy before you start.

Do I need a real ESP32-C3-DevKitM-1?

No. Every lesson runs on a simulated ESP32-C3-DevKitM-1 with its parts on the canvas, and the simulator checks each step as you go. When you want to build it for real, the same wiring and code work on a real board.

How long does IoT capstone: your own connected product take?

About 8 hours: 7 lessons in 4 chapters, each one a few short steps. Your progress is kept, so you can stop after any lesson and pick up where you left off.

What will I build?

Each chapter ends in a project that puts it together: Data and API design, Dashboard and Security review.

Where do I start?

With "Pick a product", and each lesson builds on the one before it. New to circuits? Electronics basics is the course that starts from zero.
