A comprehensive series of 18 hands-on projects, guiding you from basic electronic circuits to a containerized, secure, and production-ready IoT telemetry pipeline.
Course Learning Path
Each project builds directly on the concepts, schematics, and configurations of the previous ones. Make sure to complete setup projects to prepare your local VirtualBox environment with the required packages.
🔧 Setup Labs
Set up a static-safe breadboard workbench, learn row routing structures, and calibrate multimeter probes to measure DC voltage across an LED.
→ Setup LabInstall VirtualBox guest settings, direct USB controller filters, configure Espressif board manager endpoints, and flash a 1Hz Arduino C++ Blink loop.
→ Setup LabConfigure VM Bridged network adapters, install Eclipse Mosquitto, configure local listener bindings, and register cloud telemetry endpoints.
→ Setup LabConfigure compilation properties inside tsconfig, write a TypeScript Express skeleton route, and compile code inside multi-stage Docker builds.
→📚 Practice Labs
Build series and parallel voltage dividers, apply current splits, and configure digital tactile button switches with pull-down resistors.
→ Practice LabCode identical tactile toggle logic in Arduino C++ and Python, executing Python code inside a simulated local console simulator layer.
→ Practice LabInterface a DHT22 humidity sensor, LDR photoresistor divider, and PIR motion sensor to control warning buzzers and 5V isolation relay switches.
→ Practice LabRefactor embedded routines into polymorphic C++ sensor classes. Write a Python daemon to parse incoming JSON serial packets from /dev/ttyUSB0.
→ Practice LabImplement Wi-Fi network retry loops, configure PubSubClient callbacks, differentiate QoS levels, and handle broker status monitoring with LWT.
→ Practice LabPush live telemetry data to ThingSpeak channels via REST APIs. Query the stored logs using Python data analyzer models.
→ Practice LabGenerate encrypted broker password databases, block anonymous bindings, and encrypt MQTT client payloads with secure handshakes.
→ Practice LabConfigure deep sleep cycles, write custom LDO HT7333 voltage regulator circuits, and model average current draw to calculate battery lifespans.
→ Practice LabBuild a real-time statistical anomaly detector in C++ using rolling-window Z-score calculations directly on the ESP32 CPU.
→ Practice LabProduce system specifications, BOM calculations, time-series hypertable schemas, and security threat modeling assessments.
→ Practice LabWrite interface properties for telemetry data and device status, configure REST API routes, and build validation middleware functions.
→ Practice LabConfigure automated integration testing using Jest and Supertest, assert HTTP status responses, and evaluate code coverage.
→ Practice LabConfigure multi-container orchestration services, add database health checks, and run automated container verification scripts.
→🏆 Final Capstone