Kursüberblick
Willkommen zu meinem Online-Kurs über Node-RED, MQTT und ESP32! Dieser Kurs wurde speziell für Maker und DIY-Enthusiasten entwickelt und gibt dir die Möglichkeit, deine Projekte auf die nächste Stufe zu bringen, indem du Node-RED, MQTT und ESP32 kombinierst.
Node-RED ist eine visuelle Programmierumgebung, mit der Projekte einfach und intuitiv erstellt werden können, ohne dass tiefgreifende Programmierkenntnisse erforderlich sind. MQTT ist ein leichtgewichtiges Protokoll für die Datenübertragung in IoT-Netzwerken, mit dem Endgeräte schnell und einfach miteinander verbunden werden können. Der große Vorteil von MQTT ist, dass eine Übertragung in nahezu Echtzeit möglich ist. Der ESP32 ist ein leistungsstarker Mikrocontroller, der sich durch seine integrierte WiFi- und Bluetooth-Unterstützung ideal für IoT-Projekte eignet.
In diesem Kurs lernst du, wie du Node-RED verwendest, um deine ESP32-basierten Projekte zu steuern und zu regeln und Daten über MQTT auszutauschen. Du lernst, wie du dein eigenes IoT-Netzwerk aufbaust, Daten von Sensoren sammelst und diese in Echtzeit mit aktuellen Programmen wie InfluxDB oder Grafana visualisierst. Du lernst auch, wie du deine Projekte über das Internet überwachen, steuern und Daten von überall auf der Welt abrufen kannst.
Dieser Kurs ist ideal für Maker und DIY-Enthusiasten, die ihre Projekte selbst in die Hand nehmen und ihre Kenntnisse im Bereich des Internets der Dinge (Internet of Things) mit MQTT und Node-RED vertiefen möchten. Durch die Kombination von Node-RED, MQTT und ESP32 erhältst du die Flexibilität und Leistungsfähigkeit, die du brauchst, um deine Projekte in die Realität umzusetzen.
Folgende Inhalte und Projekte werden wir gemeinsam umsetzen:
- Installation aller notwendigen Programme und Services
- Installationsvariante mit Docker
- Erster Überblick von Node-RED
- MQTT Grundlagen
- ESP32 Express Einstieg
- Erstes Projekt - Mini Wetterstation
- Wetterdaten am E-Ink Display mit Akkubetrieb visualisieren
- Überwachungskamera mit ESP32-Cam inkl. Machine-Learning Node
- Zeiterfassung mit RFID und TimeTagger
- Zeitgesteuerte Pflanzenbewässerung mit Füllstandsüberwachung
- Smarte Steckdosen und Relais
- Kleiner IoT Button mit 100 Tage Batterielaufzeit
- Exkurs eigene Web API mit OCR-Service und Telegram-Anbindung erstellen
- Internet Radio
- Spotify Steuerung
- MQTT SSL/TLS
- Raspberry Pico
- Abschluss
Lassen Sie uns also loslegen und erfahren Sie, wie Sie Ihre eigenen IoT-Projekte erstellen können!
Markus Edenhauser, MA MSc
Curriculum
- 1.3 Voraussetzungen (1:18)
- 1.4 Begleitmaterial Notizen und Commands (2:02)
- 1.5 Der Basis-Sketch - Start von jedem Projekt (0:35)
- 1.6 Machen statt Vortragen (1:36)
- 1.7 Bauteillisten (1:37)
- 1.8 Haftungsausschluss (1:54)
- 1.9 FAQ und das geht doch sicher auch anders (2:07)
- 1.10 Anmerkungen & alle Fragen zum Kurs können hier gestellt werden
- 2.1 Intro (0:44)
- 2.2 Heimserver, Virtualbox, vServer oder Raspberry PI (8:47)
- 2.3 Virtualbox mit Ubuntu (12:23)
- 2.4 Raspberry Pi aufsetzen (7:38)
- 2.5 SSH mit Putty und CLI von Windows (2:50)
- 2.6 vServer mieten und erster login (2:49)
- 2.7 Node-RED auf Ubuntu Debian (6:14)
- 2.8 Node-RED Autostart on Boot (3:36)
- 2.9 Node-RED mit Passwort schützen (3:30)
- 2.10 Mosquitto Broker installieren und erster Test (2:41)
- 2.11 MQTT Broker Node-RED einbinden (1:59)
- 2.12 InfluxDB2 (4:55)
- 2.13 Grafana (2:33)
- 2.14 Nerven und Zeit sparen durch Snapshots (1:07)
- 3.1 Intro (0:44)
- 3.2 Was ist Docker (7:29)
- 3.3 vServer einrichten (1:51)
- 3.4 Docker Installation (2:58)
- 3.5 Docker CLI am Beispiel Focalboard (5:51)
- 3.6 Portainer (5:28)
- 3.7 Übersicht Docker Volumes (2:00)
- 3.8 Mosquitto Broker (8:01)
- 3.9 Mosquitto in Container ausführen (1:42)
- 3.10 ohmyz für bequemeres Terminal-Handling (1:15)
- 3.11 Mosquitto Broker mit PW-Authentifizierung (6:28)
- 3.12 Node-RED (5:33)
- 3.13 Node-RED mit Authentifizierung (4:38)
- 3.14 InfluxDB (3:38)
- 3.15 Grafana (2:29)
- 3.16 MariaDB und DB über CLI erstellen (5:36)
- 3.17 Adminer (5:20)
- 3.18 Docker Container Updaten (2:00)
- 3.19 Ausblick Docker-Compose mit Wordpress und MySQL (5:03)
- 3.20 Traefik als Reverse Proxy für SSL Zugriff (9:59)
- 3.20a NodeRED in Traefik einbinden für SSL Zugriff (5:33)
- 3.21 Cronjobs für Backup Routinen (3:23)
- 3.22 Backup von Flows via Cronjob (8:57)
- 4.1 Intro (0:40)
- 4.2 Warum Node-RED für Maker die beste Lösung ist (1:41)
- 4.3 Trennung der Aufgaben von Soft- und Hardware (2:39)
- 4.4 Erster Überlick über Flow und Nodes (6:43)
- 4.5 Flows importieren und exportieren (3:06)
- 4.6 Paletten installieren am Beispiel MySQL (3:04)
- 4.7 Dark ModeTheme installieren (4:57)
- 4.8 Erste Ausgaben mit Payload (3:30)
- 4.9 Payload mit Function Node überschreiben (4:14)
- 4.10 Payload Abfragen mit Funktion und mehreren Ausgängen (6:34)
- 4.11 JSON verarbeiten (9:28)
- 4.12 Context, flow und globale Variablen (10:41)
- 4.13 Join Node (1:49)
- 4.14 Link in & Link call - Globale Funktionen über Flows hinaus (8:23)
- 5.1 Intro (0:46)
- 5.2 MQTT Begrifflichkeiten (6:20)
- 5.3 MQTT Netzwerk am Beispiel Subscriber und Publisher (8:26)
- 5.4 MQTT Topic Ebenen und Test mit CLI (9:19)
- 5.5 Quality of Service QoS (3:21)
- 5.6 Retained Messages (1:25)
- 5.7 Birth, Death und Last Will (3:58)
- 5.8 MQTT Best Practices (3:46)
- 5.9 MQTT Explorer verwenden (2:48)
- 5.10 MQTT mit Linux Commandline (3:19)
- 6.1 Intro (0:44)
- 6.2 Broker Einstellungen (4:39)
- 6.3 Daten von Node-RED in InfluxDB speichern (11:18)
- 6.4 Zufällige Temperaturwerte generieren (2:47)
- 6.5 Erste Visualisierung von InfluxDB Daten in Grafana (6:51)
- 6.6 Verbindung zu MariaDB herstellen (4:10)
- 6.7 Daten von Node-RED in MariaDB speichern (6:39)
- 6.8 SQL Query an MariaDB Node senden und auswerten (4:36)
- 7.1 Intro (1:04)
- 7.2 Arduino vs ESP8266 vs. ESP32 (7:14)
- 7.3 GPIO als Ein und Ausgang (1:59)
- 7.4 Wissenswertes über Pinouts (4:44)
- 7.5 Treiber, Arduino IDE und Boardverwalter URLs (6:50)
- 7.6 Empfehlung VS Code mit PlatformIO (2:59)
- 7.7 LED Blink (4:56)
- 7.8 Blink without delay (8:00)
- 7.9 Quellcode für WIFI Verbindung (6:35)
- 7.10 Quellcode für MQTT mit PubSub Client (11:35)
- 7.11 LED mit MQTT ein und ausschalten (7:15)
- 7.12 Quellcode in Headerdatei auslagern (5:04)
- 7.13 Arduino JSON senden und empfangen (12:05)
- 7.14 Quellcode von VS Code für Arduino IDE übernehmen (4:52)
- 8.1 Intro (0:53)
- 8.2 Verdrahtung (2:54)
- 8.3 BMP180 Temperatur und Luftdruck (7:29)
- 8.4 BH1750 Lichtsensor (3:07)
- 8.5 Sensordaten an Node-RED übermitteln (4:39)
- 8.6 Daten in InfluxDB speichern (2:54)
- 8.7 Daten in Grafana visualisieren (9:32)
- 8.8 Lüfter mit MQTT ansteuern (6:03)
- 8.9 Funktionsprinzip Hysterese (3:07)
- 8.9 Hysterese
- 8.10 Ventilator mit Hysterese regeln (4:27)
- 8.11 Temperaturwerte und Hysterese (3:19)
- 9.1 Intro (0:50)
- 9.2 Verdrahtung (3:31)
- 9.3 PlatformIO und XIAO ESP32 (2:34)
- 9.4 E-Ink Hello World (7:24)
- 9.5 Text ausrichten und Font anpassen (5:42)
- 9.6 Grafik konvertieren und einbinden (6:23)
- 9.7 Text und Grafik gemeinsam anzeigen (7:57)
- 9.8 Wetterdaten REST API (3:09)
- 9.9 Node-RED mit REST API (2:48)
- 9.10 JSON Bearbeitung (5:51)
- 9.11 Datum in JS auswerten (4:21)
- 9.12 Unixtimestamp als Uhrzeit darstelle (4:43)
- 9.13 Logik für das Updateintervall (2:56)
- 9.14 Werte von Node-RED an E-Ink übertragen (9:37)
- 9.15 Weitere Werte und show Funktion (6:02)
- 9.16 Timezone von Node-RED berichtigen (1:41)
- 9.17 Daten holen und Deepsleep (9:24)
- 9.18 Variante mit Forecast (4:38)
- 9.19 Stromverbrauch berechnen (3:25)
- 9.20 3D Druck Gehäuse (2:15)
- 10.1 Intro (0:53)
- 10.2 Verdrahtung (4:06)
- 10.3 Beispiel CameraWebServer (4:44)
- 10.4 Node-RED Anbindung (7:27)
- 10.5 Foto Darstellung in Node-RED (4:03)
- 10.6 Deepsleep und Bewegungssensor als Überwachsungskamera (3:23)
- 10.7 Telegram Token und Verbindung zu Node-RED (3:16)
- 10.8 Foto auf Server speichern mit dynamischen Dateinamen (5:03)
- 10.9 Foto bei Auslösung von Bewegungsmelder via Telegram versenden (4:16)
- 10.10 Mit Docker eigene kostenlose ML für Object und Facerecognition hosten (3:21)
- 10.11 Object Detection (2:51)
- 10.12 Face Registration and Recognition (3:02)
- 11.1 Intro (0:49)
- 11.2 Verdrahtung (1:43)
- 11.3 RFID ID auslesen (6:17)
- 11.4 Anbindung an Node-RED (2:56)
- 11.5 LED checkin checkout (5:02)
- 11.6 TimeTagger als Container mit docker-compose (7:10)
- 11.7 TimeTagger Web API (6:45)
- 11.8 PUT Record via WEB API (8:57)
- 11.9 Ein- und auschecken mit globaler Variable (7:00)
- 11.10 Record an WEB API beim Check out mit RFID (2:33)
- 11.11 TXT statt globaler Variable für Checkin (12:39)
- 12.1 Intro (1:10)
- 12.2 Verdrahtung (3:48)
- 12.3 Funktionsprinzip (4:32)
- 12.4 Grundstruktur mit Enums (5:40)
- 12.5 MQTT Kommunikation mit Node-RED und ESP32 (6:46)
- 12.6 Globals.h für globale Variablen (3:16)
- 12.7 Relais via MQTT 3 Sekunden einschalten (7:18)
- 12.8 Füllstand mit Ultraschall auswerten und übermitteln (9:47)
- 12.9 MariaDB Tabelle anlegen und Datenbank Node (3:34)
- 12.10 Füllstands-Information in MariaDB speichern (4:13)
- 12.11 Logik für die Zeitdifferenz (7:18)
- 12.12 E-Mail Node einrichten (3:57)
- 12.13 Füllstand für Wasserbehälter überwachen mit E-Mail Notification (11:00)
- 12.14 DeepSleep zum Strom sparen (7:11)
- 12.15 Füllstand und Gießvorgang am Dashboard visualisieren (11:10)
- 12.16 Ausblick Dashboard (1:32)
- 13.1 Intro (1:17)
- 13.2 Mögliche Smart Plugs mit Tasmota flashen (5:38)
- 13.3 Kurzüberlick Gosund EP2 mit Tasmota flashen (5:28)
- 13.3a Nicht alle Smart Plugs haben eiunen ESP8266 (1:05)
- 13.4 Tasmota konfiguriere (7:45)
- 13.5 Tasmota Steckdosen mit Node-Red schalten (4:51)
- 13.6 Sensordaten von Smart Plug auslesen (2:03)
- 13.7 Energieverbrauch in InfluxDB übermitteln (4:00)
- 13.8 Werte in Grafana visualisieren (6:03)
- 13.9 Shelly 1PM Setup (6:38)
- 13.10 Shelly Anbindung an Node-RED via RPC (9:57)
- 13.11 Relais mit Node-RED schalten (3:20)
- 13.12 Intervall und InfluxDB Anbindung (7:00)
- 13.13 RPC Anfragen zwischen definierter Uhrzeit ausschließen (3:12)
- 13.14 Relais Temperaturüberwachung mit Telegrambenachrichtigung (4:03)
- 15.1 Intro (1:07)
- 15.2 Projektidee 5 teuersten Produkte von Kassabon automatisch auslesen (4:21)
- 15.3 VSCode und SFT (5:02)
- 15.4 Python Webserver erstellen (2:22)
- 15.5 Eigenen Token per GET Parameter auslesen (4:07)
- 15.6 PDF Link von Telegram in Node-RED auswerten (4:05)
- 15.7 PDF Datei via GET am Server speichern (3:23)
- 15.8 ocrmypdf erster Test (3:10)
- 15.9 OCR Shell Script in Python ausführen (4:16)
- 15.10 OCR Textdatei analysieren für die Auswertung (4:30)
- 15.11 OCR Textdatei Auswertung in JSON konvertieren (2:36)
- 15.12 Kassabonauswertung in Webserver integrieren (3:01)
- 15.13 JSON Rückgabe in Node-RED (4:15)
- 15.14 Auswertung in MariaDB Eintragen (10:14)
- 15.15 Die teuersten Produkte mit Telegram BOT und SQL auswerten (7:06)
- 15.16 Gesamten Ablauf durchspielen (2:06)
- 18.1 Intro (0:46)
- 18.2 Sicherheitsaspekte rund um Smart Home (6:09)
- 18.2 Sicherheitsaspekte rund um Smart Home
- 18.4 Verschlüsselung im Internet (2:33)
- 18.4 Verschlüsselung im Internet
- 18.5 Letsencrypt als CA (2:38)
- 18.6 DynDNS Eintrag anlegen (1:11)
- 18.7 Certbot installieren (2:16)
- 18.8 Zertifikat von Let-s Encrypt abrufen (2:31)
- 18.9 Verschlüsselte Pub und Sub mit Linux CLI (6:19)
- 18.10 Node-RED für MQTT mit TLS einrichten (2:08)
- 18.12 Mit Wireshark unverschlüsselte MQTT Pakete analysieren (6:09)
Häufig gestellte Fragen
Warum werden die Preise in US-Dollar angezeigt?
Die Preise werden in Dollar angezeigt, damit ich auch PayPal als Zahlungsanbieter nutzen kann. Wenn du mit Kreditkarte oder PayPal zahlst, wird der Preis zum aktuellen Wechselkurs in Euro umgerechnet.
Wann beginnt und endet der Kurs?
Der Kurs startet jetzt und hört nie auf! Es ist ein Online-Kurs - du entscheidest, wann du anfängst und wann du fertig bist.
Wie lange habe ich Zugang zum Kurs?
Wie klingt lebenslanger Zugang? Nach der Anmeldung hast du unbegrenzten Zugriff auf diesen Kurs - auf all deine Geräte.
Was ist, wenn ich mit dem Kurs unzufrieden bin?
Wir möchten auf keinen Fall, dass du unglücklich bist! Wenn du mit deinem Kauf unzufrieden bist, kontaktiere mich innerhalb der ersten 30 Tage und wir erstatten dir den vollen Betrag.