Skip to content

8. Schnellstart Anleitung deutsch

Chris edited this page Jun 27, 2024 · 32 revisions

Roc-MQTT-Display - Schnellstart Anleitung

A quickstart guide in German language.
Dies ist nur eine Kurzanleitung, alle ausführlichen Details stehen im Wiki https://github.com/chrisweather/RocMQTTdisplay/wiki

Benötigte Hardware

  • 1x Microcontroller, getestet mit:
    - Lolin D32
    - Lolin D32 Pro
    - Lolin/Wemos D1 mini (4MB flash memory)
    - Lolin/Wemos D1 mini pro (16MB)
    - D1 mini Clone mit min. 4MB
  • 1x I2C Multiplexer TCA9548A, wird nur benötigt, wenn mehr als 1 Display an einem Controller betrieben werden soll.
  • 1-8 OLED I2C Displays, getestet mit:
    - 128x32 0.91"
    - 128x32 0.87"
    - 128x64 0.96"
    - 64x48 0.66"
    - 96x16 0.69"
    - 72x40 0.42"

Benötigte Software und Konfiguration

MQTT Broker
Zur Übertragung der Informationen an die Displays wird ein MQTT Broker im Netzwerk benötigt.
Die Schritte für die Installation eines mosquitto MQTT Brokers sind hier hier beschrieben.

Installation und Vorbereitung der Arduino Entwicklungsumgebung (IDE) um Roc-MQTT-Display zu kompilieren und auf die Controller zu laden. Bereits kompilierte .bin Dateien stehen im Release Bereich auf GitHub zur Verfügung für ESP32 und ESP8266, jeweils für 0.87" und 0.91" Displays. Diese können auch mit anderen Tools, z.B. ESP Flasher auf die Controller geladen werden. Um den 'data' Ordner auf die Controller zu übertragen wird aber trotzdem derzeit noch die Arduino IDE benötigt.

  • Installiere die Arduino Entwicklungsumgebung (IDE) in der Version 1.8.19 von https://www.arduino.cc/en/software.
    Wird benötigt um die Roc-MQTT-Display Software zu kompilieren und auf den Controller zu übertragen.
    Version 2.x wurde bisher nicht getestet.

In der Arduino IDE

LittleFS Daten Upload PlugIn
Um Dateien aus dem 'data' Ordner in das Dateisystem des Controllers zu übertragen müssen zusätzliche Tools installiert werden:

ESP8266
https://github.com/earlephilhower/arduino-esp8266littlefs-plugin
Derzeit aktuelle Version:
https://github.com/earlephilhower/arduino-esp8266littlefs-plugin/releases/download/2.6.0/ESP8266LittleFS-2.6.0.zip

Auf dem PC im Ordner Arduino\sketchbook einen Ordner "tools" anlegen und das .zip darin entpacken.
Arduino IDE beenden und neu starten.

In der Arduino IDE im Menü "Werkzeuge" ist ein neuer Eintrag "ESP8266 LittleFS Data Upload" dazugekommen.
Wird dieser Eintrag ausgewählt wird der gesamte Inhalt des Ordners Arduino\sketchbook\RocMQTTDisplay\data auf den ESP8266 Controller kopiert.

ESP32
https://github.com/lorol/arduino-esp32fs-plugin
In der Arduino IDE im Menü "Werkzeuge" ist ein neuer Eintrag "ESP32 Sketch Data Upload" dazugekommen.

NICHT den Menüpunkt "Werkzeuge / ESP8266 Sketch Data Upload" verwenden, es wird nicht funktionieren. Dieser Eintrag ist für das veraltete SPIFFS Dateisystem bei ESP8266 vorgesehen.

Roc-MQTT-Display herunterladen
https://github.com/chrisweather/RocMQTTdisplay
Code (grüner Button)
Download ZIP

Zip entpacken in den Arduino\sketchbook Ordner

Die Ordnerstruktur sieht dann idealerweise wie folgt aus, ggfs. anpassen:

Arduino\sketchbook\RocMQTTdisplay\

  • RocMQTTdisplay.ino
  • config.h
  • template.h
  • web.h

Arduino\sketchbook\RocMQTTdisplay\data\

  • 404.htm
  • config.htm
  • index.htm
  • sec.htm
  • tpl1.htm
  • tpl2head.htm
  • tpl2body.htm
  • tpl2imp.htm
  • update.htm
  • rmd.css
  • rmdcfg.txt - Konfigurationsdatei mit den Standardeinstellungen
  • rmdsec.txt - Login Daten für Wifi, OTA, MQTT
  • rmdtpl.txt
  • rmdtpl00.txt - Template T0
  • rmdtpl01.txt - Template T1
  • rmdtpl02.txt - Template T2
  • rmdtpl03.txt - Template T3
  • rmdtpl04.txt - Template T4
  • rmdtpl05.txt - Template T5
  • rmdtpl06.txt - Template T6
  • rmdtpl07.txt - Template T7
  • rmdtpl08.txt - Template T8
  • rmdtpl09.txt - Template T9

Arduino\sketchbook\RocMQTTdisplay\templates\

  • Template-Sammlung für diverse Displaygrößen
  • Templates können über die Template Import Funktion im- bzw. exportiert werden.
  • Es sind bereits einige Templates in der Grundinstallation enthalten, dieser Schritt ist nur für individuelle Anpassungen erforderlich.

WLAN Verbindung einrichten
Im Ordner Arduino\sketchbook\RocMQTTdisplay\data
die Datei rmdsec.txt mit einem Texteditor öffnen (Notepad++ wird empfohlen, https://notepad-plus-plus.org/) und den eigenen WLAN Namen (SSID) und das WLAN Passwort eintragen und speichern.

Ggfs. auch die Datei rmdcfg.txt anpassen, z.B. bereits hier die IP-Adresse des MQTT Brokers eintragen.

Arduino IDE / Datei / Öffnen...
im Arduino\sketchbook\RocMQTTdisplay Ordner die Datei RocMQTTdisplay.ino öffnen

  • Display Auflösung in der Datei RocMQTTdisplay.ino ~Zeile 82 auswählen. Default ist 128x32 pixel 0.91". Optional 128x64, 64x48 oder 96x16. Nur jeweils eine Auflösung aktivieren durch entfernen der // Zeichen vor der Zeile.

  • ESP8266 oder ESP32 controller per USB Kabel an den PC anschließen

Arduino IDE / Werkzeuge / Port
den entsprechenden Port auswählen an dem der ESP8266 oder ESP32 am PC angeschlossen ist.

Arduino IDE / Werkzeuge / Serieller Monitor
115200 Baud auswählen

Arduino IDE / Sketch / Hochladen auswählen
Roc-MQTT-Display wird jetzt kompiliert und auf den Controller geladen.

http://NewRMDcontroller oder http://ID-Adresse des Controllers im Browser aufrufen.
Der Webserver mit der Konfigurationsseite des Controllers wird aufgerufen. In Configuration / "MQTT broker IP-address" die IP Adresse Deines MQTT Brokers eintragen. Hast Du keinen geht es hier weiter: https://mosquitto.org/download/
Ich empfehle einen MQTT Broker auf einem Raspberry Pi zu installieren.

Anzahl verbundener Displays einstellen (Number of connected displays)

  • Speichern mit Save
  • Home
  • Restart

Beim Start zeigt der Serielle Monitor an was gerade geladen wird.

Jetzt noch die Quelle für die Display Inhalte einrichten, z.B. Rocrail oder Node-RED.
Siehe hierzu Wiki / 5. Rocrail Configuration.
Einen Beispiel Rocrail Workspace findest Du unter https://github.com/chrisweather/RocMQTTdisplay/tree/main/demo

Der Controller kann ab jetzt an einem USB Netzteil statt am PC betrieben werden. Die Konfiguration ist weiterhin unter http://NewRMDcontroller (oder dem neuen Namen, den Du dem Controller in der Konfiguration gegeben hast) oder http://IP-Adresse_des_Controllers erreichbar und Updates der Software oder Dateien aus dem data Ordner können per Over The Air (OTA) Updates aus der Arduino IDE übertragen werden. Arduino IDE / Werkzeuge / Port, hier kann der Controller jetzt anhand seines Namens ausgewählt werden. Sollte der Netzwerk Port nicht angezeigt werden bitte einmal die Update Seite in der Konfiguration aufrufen.

Fertig.
Viel Spaß!