Smart Home Display zur Anzeige von Daten aus Home Assistant.

Über das Projekt

Smart Home Systeme wie der Home Assistant bieten sehr komfortable Möglichkeiten, Sensor-Messwerte im Browser oder über die Smartphone-App anzuzeigen. Es gibt jedoch Situationen, da möchte man ohne viel Klicken einen Sensorwert laufend im Blick behalten. Beispielweise die Temperatur des Schlafzimmers, damit das Baby immer in einem angenehm wohltemperierten Raum schläft. Hierfür bietet sich unser Smart Home Display auf LCD-Basis an, welches beliebige Daten aus Home Assistant anzeigen kann.

In diesem Tutorial zeigen wir beispielhaft Temperatur und Luftfeuchtigkeit aus dem Tutorial "Thermometer und Hygrometer mit Smart Home Anbindung" an.

Bauteile

Zum Aufbau werden folgende Bauteile benötigt:

Home Assistant

Darüber hinaus wird ein lauffähiges Home Assistant System mit installiertem ESPHome benötigt. Siehe Details weiter unten im Verlauf des Tutorials. 

D1 Mini NodeMCU löten

Damit der „D1 Mini NodeMCU“ in das Breadboard gesteckt werden kann, muss er zuerst mit den Pin-Leisten verlötet werden.

Dabei bitte darauf achten, dass die Pin-Leisten rechtwinklig angelötet werden, damit sie später auch zum Breadboard passen. Dazu kann man auch erstmal pro Pin-Leiste einen Pin anlöten und nach Abkühlen alles auf das Breadboard setzen (noch nicht einstecken), um zu prüfen, ob es passt. Falls OK, können dann einfach die weiteren Pins gelötet werden. Falls noch nicht OK (falscher Winkel), kann durch Erwärmen des bereits gelöteten Pins der Winkel der Pin-Leiste noch einfach korrigiert werden.

LCD1604 löten

Nun wird der IIC/I2C Interface-Adapter an die Unterseite des LCD-Displays gelötet. Siehe folgende Abbildung.

   

Stecken

Im nächsten Schritt werden alle Bauteile auf das Breadboard gesteckt. Das LCD-Display wird über Female-Male Jumperkabel mit dem Breadboard verbunden. Das folgende Fritzing-Schaubild gibt einen guten Überblick.

SMART HOME SYSTEM VORBEREITEN

Home Assistant

Zur Grundeinrichtung von Home Assistant siehe: https://www.home-assistant.io/getting-started/.

ESPHome

Zur Grundeinrichtung von ESPHome siehe: https://esphome.io/guides/getting_started_hassio.html

ANBINDUNG AN HOME ASSISTANT VIA ESPHOME

Node in ESPHome anlegen

In Home Assistant navigieren wir wie folgt: Supervisor -> ESPHome -> Benutzeroberfläche öffnen.

Über das „+ Symbol“ erstellen wir einen neuen Node.

Als Node Name hinterlegen wir „smart_home_lcd_display“.

Als Device Type wählen wir „Wemos D1 and Wemos D1 mini“ aus.

Als nächstes geben wir „WiFi SSID“, „WiFi Password“ und „OTA Access Password“ an. Das „OTA Access Password“ ist optional und dient zusätzlicher Sicherheit, wenn wir zukünftig Aktualisierungen per WLAN direkt an den D1 Mini übertragen.

Abschließend klicken wir unter „Finish“ noch auf „Submit“.

Als nächstes ergänzen wir die für das Display erforderliche YAML-Konfiguration. Dazu klicken wir auf „Edit“:

Die für die im Folgenden beschriebene YAML-Konfiguration erforderlichen Entitäten können wir in den folgenden beiden Abbildungen dargestellt in Home Assistant ermitteln.

Ermittlung Entitäts-ID für "Temperatur Schlafzimmer":

Ermittlung Entitäts-ID für "Luftfeuchtigkeit Schlafzimmer":

Anschließend ergänzen wir am Ende der YAML-Konfiguration folgende Zeilen:

# Display configuration entry

i2c:
sda: D2
scl: D1

sensor:
- platform: homeassistant
name: "Temperatur"
entity_id: sensor.temperatur_schlafzimmer
id: temperatur
- platform: homeassistant
name: "luftfeuchtigkeit"
entity_id: sensor.luftfeuchtigkeit_schlafzimmer
id: luftfeuchtigkeit

display:
- platform: lcd_pcf8574
dimensions: 16x4
address: 0x27
lambda: |-
it.printf(0, 0, "Temp. %.1f", id(temperatur).state);
it.print(12, 0, "C");
it.printf(0, 1, "Luftf. %.1f", id(luftfeuchtigkeit).state);

it.print(12, 1, "%");

Upload der ESPHome Konfiguration

Als nächstes verbinden wir den D1 Mini via USB Kabel mit dem Computer, auf dem Home Assistant läuft, um die Konfiguration hochladen zu können. In unserem Fall ein Raspberry Pi.

Nun erhalten wir von ESP Home die Benachrichtigun „Discoved new serial port”. Wir können den Port in ESPHome auswählen. In unserem Fall /dev/ttyUSB0 (USB2.0-Serial).

Nun wählen wir rechts oben den USB-Port in ESPHome aus. In unserem Fall /dev/ttyUSB0 (USB2.0-Serial).

Und klicken auf „upload“, um die für ESPHome erforderlichen Dateien auf unseren D1 Mini hochzuladen.

Nun können wir erstmal eine Kaffeepause einlegen, denn der erste Upload benötigt ein paar Minuten.

Am Ende des Uploads verbindet sich unser Display via WLAN mit dem Home Assistant. Wir können das USB-Kabel des D1 Mini nun vom Raspberry Pi trennen und in ein normales USB-Netzteil oder eine Powerbank stecken.

ESPHome-Knoten zu Home Assistant hinzufügen

Da Home Assistant unser Display nicht automatisch erkennt, gehen wir wie in diesem Abschnitt beschrieben vor.

Zunächst klicken wir in Home Assistant auf "Einstellungen".

Dort klicken wir auf "Integrationen".

Anschließend klicken wir auf "Integration hinzufügen".

Wir wählen "ESPHome" aus.

Als Host geben wir den Namen unseres zuvor eingerichteten ESPHome-Nodes ein, ergänzt durch ".local".

Nun weisen wir die Integration noch dem gewünschten Raum zu.

Ergebnis

Nun hat unser Display Zugriff auf die Sensordaten und sollte, haben wir alles richtig konfiguriert, unmittelbar die Sensorwerte anzeigen.

 

 

Disclaimer - alle Angaben ohne Gewähr:

Die in diesem Tutorial (Beitrag) enthaltenen Informationen wurden nach bestem Wissen und Gewissen recherchiert und zusammengetragen. Jedoch können auch uns Fehler passieren. Und genauso kann bei der Umsetzung des Tutorials etwas schief gehen oder können Inhalte missverstanden werden. Für eventuelle Schäden durch das Befolgen dieses Tutorials können wir daher keine Haftung übernehmen. Wir entwickeln unsere Tutorials laufen weiter. Sollte etwas unstimmig oder unklar sein, bitte Bescheid geben, damit wir den betroffenen Punkt korrigieren oder ergänzen können. Vielen Dank.

Hinterlassen Sie einen Kommentar

Bitte beachten Sie, dass Kommentare vor der Veröffentlichung freigegeben werden müssen