Skip to content
Free public beta until December 4, 2026: every course is open, no card needed. After that, the first chapter of each course stays free and full access is a one-time $39 ($19 for up to 100 founding members chosen for helpful feedback). Your progress is kept. How the beta works

Connected Devices and the Internet of Things

Networking, cloud, security, and edge AI for the devices you built in Embedded Systems -- MQTT and HTTP, back ends, safe updates, and small machine learning on the chip.

Free to read now, no account needed: Before you start. Create a free account to open the other chapters, take the quizzes and keep your progress.

My setup

Lessons that differ by operating system or tool show your choice first, and fold away notes meant for other setups. You can switch tabs in any lesson β€” it remembers what you pick.

Operating system

Board

Language

1 What makes a device connected πŸ”’

Create a free account to open this chapter.

  • From embedded to IoT ~30 min
  • Devices, gateways, brokers and clouds ~35 min
  • Telemetry, commands and state ~35 min
  • Edge vs cloud ~35 min
  • A connected device end to end ~35 min
  • Standards, protocols, radios and platforms ~30 min

2 How networks move data πŸ”’

Create a free account to open this chapter.

  • Packets and layers ~35 min
  • Links, frames and MAC addresses ~35 min
  • IPv4 addresses and subnets ~50 min
  • Routers, gateways and NAT ~40 min
  • DHCP and DNS ~40 min
  • Ports and sockets ~30 min
  • IPv6 for devices ~40 min
  • Seeing your own traffic ~45 min

3 TCP and UDP πŸ”’

Create a free account to open this chapter.

  • UDP datagrams ~35 min
  • TCP connections ~40 min
  • Reliability by retransmission ~45 min
  • Flow and congestion in one picture ~30 min
  • Latency, throughput and loss ~45 min
  • Choosing TCP or UDP ~35 min

4 Wi-Fi on the ESP32 πŸ”’

Create a free account to open this chapter.

  • How Wi-Fi works ~40 min
  • Joining a network ~45 min
  • Wi-Fi security ~40 min
  • Provisioning credentials ~50 min
  • Finding devices locally ~40 min
  • Ethernet for devices ~30 min
  • Range, power and interference ~45 min

5 HTTP and REST from a device πŸ”’

Create a free account to open this chapter.

  • Requests and responses ~40 min
  • Calling a REST API ~50 min
  • Why HTTPS ~35 min
  • A local status page ~45 min
  • JSON payloads on small devices ~45 min
  • WebSockets ~35 min

6 Bluetooth Low Energy πŸ”’

Create a free account to open this chapter.

  • The BLE radio and its roles ~35 min
  • Advertising and scanning ~45 min
  • GATT services and characteristics ~55 min
  • Notifications and throughput ~50 min
  • Pairing and bonding ~45 min
  • Talking to a phone or a browser ~45 min
  • Connection loss and recovery ~50 min

7 Other radios, and choosing one πŸ”’

Create a free account to open this chapter.

  • ESP-NOW ~45 min
  • Thread and Matter ~45 min
  • Zigbee ~35 min
  • LoRa and LoRaWAN ~60 min
  • Cellular IoT ~45 min
  • Choosing a wireless technology ~45 min

8 Staying connected πŸ”’

Create a free account to open this chapter.

  • The network will fail ~35 min
  • Reconnect with backoff ~45 min
  • Store and forward ~45 min
  • Retries and idempotency ~45 min
  • Time on a device ~40 min
  • Testing under bad networks ~45 min

9 MQTT πŸ”’

Create a free account to open this chapter.

  • Publish/subscribe ~35 min
  • Brokers and clients ~40 min
  • Topics and wildcards ~40 min
  • Designing a topic tree ~35 min
  • Quality of service ~45 min
  • Retained messages and last will ~45 min
  • Sessions and keepalive ~40 min
  • MQTT on the ESP32 ~50 min

10 Securing and choosing message protocols πŸ”’

Create a free account to open this chapter.

  • MQTT authentication and ACLs ~45 min
  • MQTT over TLS ~55 min
  • MQTT 5 features ~45 min
  • HTTP vs MQTT vs WebSockets ~40 min
  • CoAP for constrained devices ~50 min
  • Payload formats and contracts ~50 min

11 Identity, state, and fleets πŸ”’

Create a free account to open this chapter.

  • Device identity ~40 min
  • Registration and lifecycle ~40 min
  • Shadows and desired state ~50 min
  • Commands and acknowledgements ~50 min
  • Fleet management ~40 min
  • Observability and device health ~45 min
  • Events and rules ~45 min

12 Telemetry data πŸ”’

Create a free account to open this chapter.

  • Time-series data ~45 min
  • Relational, time-series and document stores ~50 min
  • Ingesting telemetry ~60 min
  • Querying device history ~55 min
  • Retention and downsampling ~50 min
  • Cost and scale ~50 min

13 End-to-end architecture πŸ”’

Create a free account to open this chapter.

  • Reference architectures ~45 min
  • Gateways or direct to cloud ~45 min
  • Architecture diagrams and interface contracts ~60 min
  • Managed clouds and lock-in ~50 min
  • Designing for failure ~50 min

14 Building an IoT back end πŸ”’

Create a free account to open this chapter.

  • Designing a back end ~45 min
  • The reference back end ~60 min
  • The same service in other languages ~45 min
  • Registration and authentication APIs ~60 min
  • API design, validation and rate limits ~60 min
  • Testing the back end ~60 min
  • Deploying and running it ~60 min

15 Dashboards, users, and alerts πŸ”’

Create a free account to open this chapter.

  • Real-time dashboards ~55 min
  • Charts, alerts and thresholds ~55 min
  • Users, roles and permissions ~60 min
  • Multi-tenant systems ~50 min
  • Command and control workflows ~55 min
  • Notifications ~50 min
  • Mobile monitoring ~45 min

16 C# and .NET in IoT πŸ”’

Create a free account to open this chapter.

  • Where C# fits ~35 min
  • Microcontrollers and Linux computers ~40 min
  • .NET on Linux devices ~45 min
  • GPIO, I2C, SPI and UART from .NET ~50 min
  • A .NET gateway ~55 min
  • ASP.NET Core IoT APIs ~50 min
  • Simulators and test harnesses ~50 min
  • Embedded .NET options ~35 min

17 Rust on microcontrollers πŸ”’

Create a free account to open this chapter.

  • Why Rust for firmware ~45 min
  • Ownership meets hardware ~40 min
  • Targets and cross-compilation ~40 min
  • no_std and no_main ~45 min
  • PACs, HALs and embedded-hal ~50 min
  • What is supported where ~35 min

18 Rust firmware on the ESP32 πŸ”’

Create a free account to open this chapter.

  • Blink with esp-hal ~40 min
  • Interrupts and shared state ~45 min
  • Async with Embassy ~55 min
  • Logging and debugging ~40 min
  • Testing Rust firmware ~55 min
  • Calling C from Rust and back ~45 min
  • Networking in Rust ~55 min
  • Choosing Rust for a project ~35 min

19 Threats and trust πŸ”’

Create a free account to open this chapter.

  • Why IoT security is different ~40 min
  • Threat modelling ~60 min
  • Security baselines ~45 min
  • Least privilege and segmentation ~50 min
  • The cryptography you need ~50 min
  • TLS, certificates and trust ~60 min
  • Storing secrets on a device ~45 min
  • Privacy and responsible telemetry ~40 min

20 Hardware trust and provisioning πŸ”’

Create a free account to open this chapter.

  • Roots of trust and secure boot ~45 min
  • Flash encryption ~40 min
  • eFuses and the point of no return ~45 min
  • Secure provisioning and device identity ~45 min
  • Manufacturing provisioning ~50 min
  • Debug ports and physical attacks ~40 min

21 Over-the-air updates πŸ”’

Create a free account to open this chapter.

  • Why OTA, and how it fails ~40 min
  • Partition tables and A/B slots ~45 min
  • Signing and verifying firmware ~50 min
  • Rollback and recovery ~55 min
  • Staged rollouts ~45 min
  • Configuration and schema versioning ~45 min
  • Crash diagnostics ~45 min
  • Power failure and corruption ~45 min

22 Production engineering πŸ”’

Create a free account to open this chapter.

  • Device testing and QA ~45 min
  • Unit, integration and hardware-in-the-loop tests ~50 min
  • Simulators and mock devices ~45 min
  • CI for firmware ~50 min
  • Reproducible builds and pinning ~50 min
  • Versioning and releases ~45 min
  • Field diagnostics ~45 min
  • Regulation and radio certification ~45 min
  • Production readiness reviews ~40 min

23 Processing at the edge πŸ”’

Create a free account to open this chapter.

  • Local processing vs raw data ~40 min
  • Filters on the device ~50 min
  • Thresholds, rules and anomalies ~50 min
  • Features from sensor windows ~55 min
  • When not to use AI ~35 min

24 TinyML πŸ”’

Create a free account to open this chapter.

  • What TinyML is ~40 min
  • Collecting and labelling data ~50 min
  • Training a small classifier ~55 min
  • Quantization and model size ~55 min
  • Running a model on the ESP32 ~55 min
  • RAM, flash and latency budgets ~50 min
  • Keyword and audio events ~45 min
  • Vision on capable hardware ~45 min
  • Edge-to-cloud models ~50 min

25 Engineering practice πŸ”’

Create a free account to open this chapter.

  • Requirements and acceptance criteria ~40 min
  • Component selection and the BOM ~40 min
  • Wiring and schematic documentation ~35 min
  • Code style and repository structure ~40 min
  • Cost, manufacturability and maintainability ~40 min
  • Documentation and handoffs ~40 min
  • Design reviews and demos ~40 min

26 Application domains πŸ”’

Create a free account to open this chapter.

  • Home automation and buildings ~40 min
  • Agriculture and water ~45 min
  • Environmental and infrastructure monitoring ~45 min
  • Industrial monitoring and predictive maintenance ~45 min
  • Tracking, fleets and location ~45 min
  • Wearables and assistive technology ~45 min
  • Robotics and scientific instruments ~45 min
  • Safety-critical limits ~40 min

27 Capstone projects πŸ”’

Create a free account to open this chapter.

  • Engineering a connected project ~50 min
  • Capstone Wi-Fi environmental station ~60 min
  • Capstone smart irrigation ~60 min
  • Capstone home automation controller ~60 min
  • Capstone multi-device IoT platform ~65 min
  • Capstone industrial condition monitoring ~60 min
  • Capstone secure OTA device fleet ~65 min
  • Capstone embedded AI sensor ~60 min
  • Capstone distributed monitoring network ~60 min
  • Capstone robotics and motion control ~60 min
  • Capstone BLE device and companion app ~60 min
  • Capstone cross-language system ~60 min
  • Capstone production-ready product ~75 min