ESPHome-Galerie

Teil 3 von 4

Vom leeren Board zum ersten Sensorwert

Sechs Schritte nach der offiziellen Anleitung, dazu die Fallen, die fast jeden beim ersten Mal treffen.

Die Schritte

1. Board per USB anschließen. Der allererste Flash geht nur über Kabel, jedes weitere Update dann über WLAN. Man braucht ein USB-Datenkabel (viele Kabel können nur laden), und je nach Board einen Treiber für den USB-Seriell-Chip (CH340, CP2102). Unter Linux ist der Port meist /dev/ttyUSB0 oder /dev/ttyACM0.

2. Neue Konfiguration anlegen. Im Device Builder auf „Create device“, dann „New Device Setup“. Der Assistent fragt nach Name, Chip, Board und WLAN und schreibt die Grunddatei aus Teil 2. Auf der Kommandozeile macht esphome wizard wohnzimmer.yaml dasselbe.

3. Installieren. Knopf „Install“, dann „Plug into this computer“. ESPHome prüft die Datei, kompiliert (beim ersten Mal dauert das einige Minuten, weil die Werkzeugkette geladen wird) und flasht. Bei manchen Boards muss man dabei die BOOT-Taste gedrückt halten, während man ansteckt.

4. Ins Log schauen. Knopf „Logs“. Das Gerät meldet sich, verbindet sich mit dem WLAN und zeigt seine IP-Adresse. Ab jetzt geht alles ohne Kabel.

5. Den ersten Sensor eintragen. Zum Beispiel einen Taster:

binary_sensor:
  - platform: gpio
    name: "Taster"
    pin:
      number: GPIO4
      inverted: true
      mode:
        input: true
        pullup: true

Oder einen Klimasensor DHT22 am GPIO4:

sensor:
  - platform: dht
    pin: GPIO4
    model: DHT22
    temperature:
      name: "Temperatur"
    humidity:
      name: "Luftfeuchte"
    update_interval: 60s

Speichern, wieder „Install“, diesmal „Wirelessly“. Im Log erscheint nach ein paar Sekunden der erste Messwert.

6. Mit Home Assistant verbinden. Home Assistant entdeckt das Gerät von selbst und zeigt es unter „Entdeckt“. Ein Klick auf „Konfigurieren“, den API-Schlüssel eintragen, fertig. Die Werte stehen im Dashboard. Ohne Home Assistant: web_server: in die Datei, und die IP-Adresse aus dem Log im Browser öffnen.

Die üblichen Fallen

Alle aus der offiziellen FAQ, alle schon selbst erlebt worden:

Die erste Automation, direkt auf dem Chip

Taster gedrückt, LED an. Dafür braucht es kein Home Assistant, das läuft in der Firmware:

switch:
  - platform: gpio
    id: led
    name: "LED"
    pin: GPIO5

binary_sensor:
  - platform: gpio
    name: "Taster"
    pin:
      number: GPIO4
      inverted: true
      mode:
        input: true
        pullup: true
    on_press:
      then:
        - switch.toggle: led

on_press ist ein Auslöser, switch.toggle eine Aktion. Nach diesem Muster funktionieren alle Automationen in ESPHome: Auslöser, dann eine Liste von Aktionen. Weitere Auslöser sind on_release, on_click mit Zeitfenster und on_multi_click für Doppelklick.

Quellen