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