Einleitung:

Das HomeMatic System ist schon etwas tolles. Du kannst vieles einstellen, automatisieren und Werte erfassen. Aber was irgendwie ein klein bisschen fehlt ist ein relativ einfaches kleines Display, mit dem Du in der Lage bist kurze Infos anzeigen zu lassen. Hin und wieder ist z.B. ein Tablet über ioBroker einfach zu viel.

 

Flashen des Wemos:

So möchte ich Dir nun dieses kleine Projekt vorstellen. Alles was Du hierfür benötigst ist zunächst einmal ein kleines Display sowie einen Wemos D1 Mini. Auf den Wemos installieren wir das Betriebssystem (siehe Links unten). Um das Betriebssystem zu installieren nutze ich auf meinem Mac esptool. Hierfür den Wemos via USB verbinden und mit dem folgenden Befehl konnte ich dann die heruntergeladene Firmware bzw. das Betriebssystem auf den Wemos flashen:

 

sudo esptool.py –port /dev/tty.usbserial-1412220 write_flash 0x00000 /Users/stefankleen/Desktop/esp.bin

 

Natürlich musst Du hierbei darauf achten, dass die Pfade richtig angepasst werden. Unter Windows gibt es ebenfalls noch weitere Tools um die Firmware zu flashen.

Ebenfalls wichtig ist, dass die richtige Firmware hier genommen wird. Das heruntergeladene Paket besteht auf einer vielzahl verschiedener Firmware Dateien. Dies hat den Hintergrund, dass diese Software für verschiedenste Hardware genutzt werden kann. Die richtige Datei hist in meinem Fall die:

ESP_Easy_mega-20181220_normal_ESP8266_4096.bin

 

Konfiguration Wemos:

Ist die Firmware geflasht so können wir damit beginnen den Wemos zu konfigurieren. Nach dem Start baut der kleine Wemos ein eigenes WLAN auf mit dem wir uns dann verbinden können. Das Passwort für das WLAN hierbei ist configesp. Ist die Verbindung hier hergestellt öffnet sich automatisch eine Konfigurationsseite mit der wir die eigentlichen WLAN Einstellungen vornehmen können. So ist danach der Wemos auch mit Deinem Netzwerk zuhause verbunden.

 

Display anschliessen:

Nach diesem Schritt können wir endlich das Display anschliessen. Dies ist recht einfach zu erledigen. Als erstes trennen wir den Wemos vom Strom (also USB). Wir verbinden VCC vom Display mit 5V vom Wemos sowie GND (Ground). Die Stromzufuhr ist somit schon erledigt.

Danach verbinden wir den SDA vom Display mit dem D2 vom Wemos sowie den SDL vom Display mit D1 vom Wemos.

 

 

Display einbinden:

Ist das Display nun verbunden können kann die USB Verbindung wieder hergestellt werden. Der Wemos startet nun automatisch das espeasy und wir können uns mittels Browser wieder verbinden.
Auf der Weboberfläche öffnen wir den I2C Scan, den Du unter dem Karteireiter „Tools“ finden kannst. Hier sollte das Display korrekt gefunden werden. Wichtig an der Stelle ist die Adresse des Displays – am besten gleich notieren!

Um nun das Display fest im Wemos einzubinden öffnen wir nun noch die Konfiguration, die Du in der Registerkarte „Devices“ findest. Hier das Display mit korrekter Adresse des Busses anmelden. Ein kurzer Test, ob dieses nun funktioniert, sollte hier nun auch noch gemacht werden.

 

HomeMatic Skript:

Da das Display nun funktioniert kümmern wir uns um die HomeMatic. Zunächst muss darauf geachtet werden, dass sowohl die CuXD Erweiterung als auch das XML-API installiert ist.

Wie im Video beschrieben suchst Du Dir am besten erst einmal ein Gerät aus, dessen Status oder Temperatur Du gerne darstellen möchtest. In meinem Fall war es der Temperatursensor, der bei mir am Carport hängt. Den Datenpunktnamen kopierst Du Dir am besten ebenfalls in die Zwischenablage.

Danach können wir auch schon mit dem Programm starten. Als Trigger habe ich hierbei eine Aktualisierung des Temperatursensors gewählt. Somit sind die Daten auf dem Display immer auf dem neusten Stand. 

Das Skript, welches ich genutzt habe sieht wie folgt aus:

string url = „http://192.168.178.238/control?cmd=LCDCMD,clear“;
dom.GetObject(„CUxD.CUX2801001:1.CMD_EXEC“).State(„wget -q -O /dev/null ‚“#url#“‚“);

string url = „http://192.168.178.238/control?cmd=LCD,1,1,Temperatur Carport:“;
dom.GetObject(„CUxD.CUX2801001:1.CMD_EXEC“).State(„wget -q -O /dev/null ‚“#url#“‚“);

string tempcarport = dom.GetObject(„BidCos-RF.MEQ000000:1.TEMPERATURE“).Value().ToString(2);
string url = „http://192.168.178.238/control?cmd=LCD,2,1,'“#tempcarport#“‚ %C2%B0C“;
dom.GetObject(„CUxD.CUX2801001:1.CMD_EXEC“).State(„wget -q -O /dev/null ‚“#url#“‚“);

 

Wichtig hierbei ist natürlich, dass Du die URL sowie auch den Datenpunkt vom Aktor anpasst – sonst kann dieses Skript natürlich nicht funktionieren!

Viel Spaß beim Nachbau!

 

Links:

espeasy Firmware: https://github.com/letscontrolit/ESPEasy/releases

CuXD: https://github.com/jens-maus/cuxd/releases

XML-API: https://github.com/hobbyquaker/XML-API

Display – 4x20: https://amzn.to/2AwogTz

Display – 2x16: https://amzn.to/2QrBPsq

Wemos D1mini: https://amzn.to/2SEM12E

Verbindungskabel zum Testen: https://amzn.to/2H6gXaG

 

 

HomeMatic Einsteiger Kurs

Du bist HomeMatic Einsteiger und möchtest alle Funktionen kennenlernen? Dann schau Dir diesen Kurs einmal an!

 

 

ioBroker Visualisierung Kurs

Du möchtest eine Visualisierung erstellen für Dein SmartHome? Dann ist dieser Kurs genau richtig für Dich!