Embedded track
IoT

An IoT course where you build the connected devices

Join WiFi, call an API, serve a page and publish over MQTT on an ESP32, then ESP-NOW, BLE and the devices people put around the house.

FreeIn your browser3 courses, 15 lessons, about 12 hours
Overview

How you will learn it

The Internet of Things is mostly two skills: building a small device that measures or switches something, and getting its data to the right place reliably. This route teaches both with real code on a simulated ESP32.

Connected devices covers the protocols one lesson at a time and ends with what real devices need to survive: reconnecting when WiFi drops and keeping the time with NTP. Home Assistant devices then puts it to work around the house.

Outcomes

What you will learn

  • Join WiFi, call a web API and serve a page from the board.
  • Write MQTT publish and subscribe code, and send data peer to peer with ESP-NOW.
  • Make a BLE device a phone can find and control.
  • Build sensors and switches that report to Home Assistant and recover when the network drops.
Your route

The courses and lessons to take

Every lesson opens in the editor right away, signed in or not, and the simulator checks each step.

  1. Step 1 路 7 lessons 路 4 h

    Connected devices

    The protocols, one per lesson.

    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. 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.
    4. 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.
    5. 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.
    Every lesson in the course
  2. Step 2 路 5 lessons 路 5 h

    Home Assistant devices

    Devices for the house, each reporting to Home Assistant.

    Build the sensors and switches people put around the house on an ESP32-C3, and see how each reading reaches Home Assistant.

    Every lesson in the course
  3. Step 3 路 3 lessons 路 3 h

    Build a smart home hub

    A hub with a web dashboard that runs them.

    A web dashboard on an ESP32-C3 that switches relays, reads sensors and runs schedules from a clock.

    Every lesson in the course
Keep going

Guides and tools on the same subject

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 the whole track
Questions

Questions people ask

What do I need to know before an IoT course?

A little Arduino-style C++. If you have never written a sketch, take Embedded on the Arduino Uno or the ESP32-C3 course first.

Which protocols does it cover?

WiFi, HTTP APIs, a web server, MQTT, ESP-NOW and BLE, plus reconnecting and NTP time.

Do I need an MQTT broker or a cloud account?

No. Everything runs in your browser with nothing to set up. The simulator has no MQTT broker of its own, so the MQTT lesson shows the connect loop and its error codes and sends the same reading over HTTP. The code works against a real broker unchanged.