Der PiLogger One kann auch als MQTT Client mit einem ESP32 (WROOM) betrieben werden.
Wir haben ein dazu passendes Software-Paket im Download Bereich bereit gestellt : pilogger-mqtt-esp32
Diese Software basiert auf MicroPython von Damien George (https://micropython.org/), hier in der Version 1.24.1 vom 29.11.2024.
Als MQTT Modul kommt dazu passend 'MicroPython Asynchronous MQTT' von Peter Hinch zum Einsatz (micropython-mqtt).
In diesem Minimal-Ansatz wird keine SD Karte zum Loggen verwendet, da die Daten regelmässig an den MQTT-Server (Broker) gesendet werden und dort dann geloggt werden können.
Somit kann ein PiLogger One Typ B mit 5 Dupont-Kabeln direkt an das ESP32-Modul angeschlossen werden (siehe Foto).
Die notwendigen Verbindungen als Tabelle:
Farbe | Signal | PiLogger Pin | Esp32 Pin |
rot | Versorgung 3,3V | 1 | 3V3 |
schwarz | I2C SDA | 3 | GPIO 26 |
gelb | I2C SCL | 5 | GPIO 25 |
blau | /REQ | 7 | GPIO 27 |
weiss | Masse | 9 | GND |
Zur Zeitsynchronisation wird beim Start und immer zu Mitternacht ein NTP Server kontaktiert. Hier empfiehlt sich - wenn möglich - den Heimnetz-Router als NTP Server zu verwenden.
Wenn als Broker ein lokales Hausautomatisierungssystem verwendet wird, ist somit kein externer Internetzugriff notwendig und kann für den ESP32 im Router gesperrt werden.
Bei jedem Neustart sendet das Programm eine Erkennungs-Nachricht (Discovery Message) an den MQTT Server. Dabei kann in der Konfigurationsdatei 'conf.py' mit dem Wert für die Variable 'HostSystem' festgelegt werden, welche Art dieser Nachricht gesendet werden soll.
Mit 'homeassistant' wird eine komplexe Nachricht gesendet, die den Auto-Discovery Mechanismus von 'Home Assistant' bedient und somit automatisch alle Datenpunkte des PiLogger MQTT erscheinen läßt.
Mit 'ioBroker' oder einem anderen Text wird eine Discovery Message im Tasmota-Stil gesendet.
Die Integration in IoBroker kann mit Hilfe der 3 Dateien im Ordner 'IoBroker' des Archivs erfolgen. Dafür müssen vorher mit einem Texteditor die Platzhalter 'xxyyzz' durch die letzten 6 Zeichen der individuellen MAC-Adresse des ESP32 ersetzt werden. Der ESP32 meldet diese MAC-Adresse und die daraus generierten MQTT Topics beim Programmstart in der Konsole.
Eine minimalistische Visualisierung in IoBroker sieht dann etwa so aus :
Grundsätzlich erfolgt die Installation ähnlich wie beim WebMonitor für ESP32 : Kurzanleitung PiLogger WebMonitor auf ESP32
Eine Kurz-Anleitung für PiLogger MQTT auf ESP32 folgt.