Class Central is learner-supported. When you buy through links on our site, we may earn an affiliate commission.

Coursera

Node-RED: IoT projects with ESP32, MQTT and Docker

Packt via Coursera

Overview

Coursera Flash Sale
40% Off Coursera Plus for 3 Months!
Grab it
This course features Coursera Coach! A smarter way to learn with interactive, real-time conversations that help you test your knowledge, challenge assumptions, and deepen your understanding as you progress through the course. Dive into the world of IoT development with Node-RED, ESP32, MQTT, and Docker in this hands-on course. You'll start by installing essential tools like Docker and Portainer, then progress through setting up your IoT development environment. With each section, you'll build real-world projects like a mini weather station, surveillance camera, smart plant watering system, and more. You'll learn how to use MQTT for secure communication, configure your devices with Node-RED, and store and visualize data in InfluxDB and Grafana. The course also covers best practices for working with Docker containers and managing services securely. By the end, you'll have the knowledge to design and implement your own IoT projects, leveraging MQTT, Docker, and powerful Node-RED flows for smart, connected devices. This course is perfect for aspiring IoT developers and engineers who want to understand the tools, technologies, and techniques needed to bring IoT projects to life with ease and efficiency. No prior IoT or Node-RED experience is required, though basic knowledge of programming and hardware concepts will be beneficial.

Syllabus

  • Introduction
    • In this module, we will introduce the course, its objectives, and the instructor. You’ll learn about the essential prerequisites, the resources provided, and the hands-on approach we follow. We’ll also discuss important disclaimers and guidelines to ensure a smooth learning experience.
  • Install all programs as containers
    • In this module, we will guide you through setting up a complete IoT software stack using Docker. You’ll learn how to install and configure key services like Mosquitto, Node-RED, InfluxDB, and MariaDB as containers. We’ll also cover authentication, SSL setup, and automated backups to ensure a secure and efficient workflow.
  • First overview of Node-RED
    • In this module, we will explore the fundamentals of Node-RED and its role in IoT projects. You’ll get an overview of flows, nodes, and payload manipulation. We’ll also dive into JSON processing, context variables, and the wide range of available nodes that enhance automation capabilities.
  • MQTT Basics
    • In this module, we will cover the essential concepts of MQTT, a lightweight messaging protocol for IoT communication. You’ll learn how publishers and subscribers interact, how to use wildcards and retained messages, and how to implement QoS levels. We’ll also introduce tools like MQTT Explorer for monitoring topics.
  • Setup Node-RED
    • In this module, we will set up Node-RED to communicate with an MQTT broker, process incoming data, and store it in databases. You’ll learn how to configure Node-RED’s MQTT nodes, save IoT data in InfluxDB, and create interactive visualizations using Grafana.
  • Basic sketch with ESP32 for WIFI and MQTT
    • In this module, we will create a foundational ESP32 sketch for connecting to WiFi and an MQTT broker. You’ll learn how to send and receive JSON data, control LEDs via MQTT messages, and integrate development tools like VS Code with PlatformIO and the Arduino IDE.
  • Mini weather station
    • In this module, we will build a mini weather station using ESP32 and sensors like BMP180 and BH1750. You’ll learn how to collect environmental data, transmit it via MQTT, visualize it in Grafana, and use hysteresis for intelligent fan control.
  • Visualize weather data on the e-ink display
    • In this module, we will display weather data on an e-ink screen using ESP32. You’ll learn how to retrieve data via REST APIs, process JSON, format text and graphics, and implement deep sleep mode to extend battery life.
  • Surveillance camera with ESP32-Cam incl. Machine-Learning Node
    • In this module, we will turn an ESP32-Cam into a smart surveillance camera. You’ll learn how to capture images, send them via MQTT, and display them in Node-RED. We’ll also implement motion-triggered alerts via Telegram for real-time security monitoring.
  • Time recording with RFID and TimeTagger
    • In this module, we will use an RFID reader to log time records and store them in a database. You’ll learn how to interact with Node-RED, TimeTagger, and a web API to automate time-tracking tasks efficiently.
  • Time-controlled plant watering with water level monitoring
    • In this module, we will create an automated plant watering system with ESP32. You’ll learn how to control relays via MQTT, measure water levels with an ultrasonic sensor, store data in MariaDB, and visualize it on a dashboard.
  • Smart plugs and relays
    • In this module, we will work with smart plugs and relays to automate energy management. You’ll learn how to flash and configure Tasmota, control devices using Node-RED, and visualize energy data in Grafana for efficient monitoring.
  • Mini IoT Button with 100 days battery life
    • In this module, we will build a battery-powered IoT button using ESP32 XIAO. You’ll learn how to implement low-power strategies, toggle functions in Node-RED, and calculate battery consumption for extended operation.
  • Internet Radio
    • In this module, we will create an ESP32-based internet radio. You’ll learn how to stream online stations, control playback using MQTT, and set up a dashboard for scheduling alarms and managing audio settings.
  • MQTT with TLS
    • In this module, we will enhance MQTT security using TLS encryption. You’ll learn how to configure SSL certificates, mount them in Docker, and analyze encrypted traffic with Wireshark.
  • Conclusion
    • In this module, we will recap all the concepts and projects covered throughout the course. You’ll receive final insights from the instructor and recommendations for future IoT development.

Taught by

Packt - Course Instructors

Reviews

Start your review of Node-RED: IoT projects with ESP32, MQTT and Docker

Never Stop Learning.

Get personalized course recommendations, track subjects and courses with reminders, and more.

Someone learning on their laptop while sitting on the floor.