All paths

Connected devices

WiFi, APIs, a web server, MQTT, ESP-NOW and BLE on the ESP32, and a device that keeps going when the network does not.

ESP32 DevKit V1Free7 lessons4 h4 chapters1,997 XPEmbedded engineering · Advanced+250 XP

0 of 7 done

What you will build

2 projects, built step by step

7 lessons in 4 chapters, about 4 hours on a simulated ESP32 DevKit V1. Free, in your browser, every step checked by the simulator.

Chapter 1 project

A web server

The board serves a page: a WiFiServer on port 80 reads the browser’s request a line at a time, switches two LEDs from the path, and prints the page back.

Open it in the simulator
Chapter 2 project

ESP-NOW

Two ESP32s and no router: a button on one switches an LED on the other over ESP-NOW, the sender hears the acknowledgment, and a wrong MAC address shows what no answer looks like.

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

On the network

Join WiFi, call an API, and serve a page of your own.

  1. Open265 XP

    Joining WiFi

    The connect loop every connected device starts with: WiFi.begin, the states a station walks through, the address DHCP hands out, and what a wrong password and a wrong network name look like.

    0 of 6 steps

  2. Locked250 XP

    Calling an API

    HTTPClient against a JSON API: a GET, the status code, the body, a different endpoint, and what a request that cannot reach its server returns.

    0 of 5 steps

  3. ProjectLocked408 XP

    A web server

    The board serves a page: a WiFiServer on port 80 reads the browser’s request a line at a time, switches two LEDs from the path, and prints the page back.

    0 of 5 steps

Chapter 2

Messages

MQTT through a broker, and ESP-NOW with no router at all.

  1. Locked204 XP

    MQTT with PubSubClient

    Publish and subscribe through a broker: topics, payloads, QoS and retained messages, the PubSubClient connect loop with its error codes, and the same reading sent over HTTP where the simulator has no broker.

    0 of 5 steps

  2. ProjectLocked454 XP

    ESP-NOW

    Two ESP32s and no router: a button on one switches an LED on the other over ESP-NOW, the sender hears the acknowledgment, and a wrong MAC address shows what no answer looks like.

    0 of 5 steps

Chapter 3

Talk to a phone

A Bluetooth LE server a phone can find, write and listen to.

  1. Locked166 XP

    BLE: a lamp your phone can find

    Bluetooth Low Energy the way phones see it: a GATT server with the Nordic UART service, a characteristic to write, notifications back, and advertising again after a phone leaves.

    0 of 4 steps

Chapter 4

Stay connected

The time from the network, and a device that rejoins on its own.

  1. Locked250 XP

    Reconnecting and NTP time

    A clock that gets the time from NTP, keeps counting on its own, shows your time zone, and notices when WiFi drops and joins again without a reset.

    0 of 5 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

On the network

  1. Joining WiFiThe connect loop every connected device starts with: WiFi.begin, the states a station walks through, the address DHCP hands out, and what a wrong password and a wrong network name look like.
  2. Calling an APIHTTPClient against a JSON API: a GET, the status code, the body, a different endpoint, and what a request that cannot reach its server returns.
  3. A web serverThe board serves a page: a WiFiServer on port 80 reads the browser’s request a line at a time, switches two LEDs from the path, and prints the page back.
Chapter 2

Messages

  1. MQTT with PubSubClientPublish and subscribe through a broker: topics, payloads, QoS and retained messages, the PubSubClient connect loop with its error codes, and the same reading sent over HTTP where the simulator has no broker.
  2. ESP-NOWTwo ESP32s and no router: a button on one switches an LED on the other over ESP-NOW, the sender hears the acknowledgment, and a wrong MAC address shows what no answer looks like.
Chapter 3

Talk to a phone

  1. BLE: a lamp your phone can findBluetooth Low Energy the way phones see it: a GATT server with the Nordic UART service, a characteristic to write, notifications back, and advertising again after a phone leaves.
Chapter 4

Stay connected

  1. Reconnecting and NTP timeA clock that gets the time from NTP, keeps counting on its own, shows your time zone, and notices when WiFi drops and joins again without a reset.
Keep going

The next course on your track

Connected devices is part of the embedded track, a ladder of courses from zero to expert.

Next course

Embedded on the STM32F411

A Cortex-M4 at 84 MHz, where a pin is a port and a number and every peripheral starts with its clock switched off.

Open the next course
Track

Embedded track

Arduino, ESP32, Raspberry Pi Pico and STM32: pins, timing, buses, motors, WiFi, registers and debugging, every lesson checked on a simulated board.

See every course on the track
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 Connected devices

Is Connected devices free?

Yes. All 7 lessons of Connected devices 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 DevKit V1?

No. Every lesson runs on a simulated ESP32 DevKit V1 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 Connected devices take?

About 4 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: A web server and ESP-NOW.

Where do I start?

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