temporärhaus wiki

decommissioned, 2020

Um schnellstmöglich eine Weltraum-stimmung in den salon zu bringen, haben wir den instant space button und andere buttons.

Die Buttons bestehen aus normalen Amazon Dash Buttons (nicht die explizite IoT-Variante) für 4,99€ (Stand 2018-02), die zwar das Wlan eingerichtet bekamen, dann aber kein Produkt ausgewählt wurde. Damit bestellen sie nicht bei jedem Druck Dinge auf Amazon.

Zusätzlich läuft in unserer Homeassistant-Installation das Dasshio-Plugin. Dieses hört passiv im Netzwerk mit und reagiert auf Verbindungsversuche der Dash-Buttons.

In Homeassistant wird dann ein Script hinterlegt, das beim Druck auf einen Dash-Button ausgelöst wird und dann z.B. den Chromecast am Beamer mit einer YouTube-URL bewirft.

Dash-Button einrichten

  1. Dash-Button bei Amazon bestellen
  2. In der Amazon-App auf dem Smartphone das Menü öffnen, Mein Konto auswählen und den Punkt Dash-Geräte → Ein neues Gerät einrichten wählen
  3. Wie von der App vorgegeben den Dash-Button in den Einrichtungsmodus versetzen
  4. Mit der App den Dash-Button ins Wifi lassen
  5. Sobald die Produktauswahl erscheint, den Prozess mit X abbrechen. Der Button ist dann mit keinem Produkt verknüpft.

Dash-Button mit Homeassistant verdrahten

  1. Im Router die MAC-Adresse des Dash-Buttons herausfinden. Dazu: Button drücken, im Edgerouter unter Services → DHCP → Actions → View Leases, der neueste Eintrag ohne Namen
  2. Homeassistant-Oberfläche aufrufen → Hass.io → Dasshio
  3. Die Config um einen weiteren Button in diesem Format ergänzen:
    {
      "name": "nivea",
      "address": "ff:00:ff:ff:00:ff",
      "domain": "script",
      "service": "space",
      "service_data": "{}"
    }
  4. Config speichern und Dasshio neustarten

Aktion in Homeassistant einrichten

In der Config ist mittels “domain”: “script”, “service”: “space” das Homeassistant-Script mit dem Namen space verknüpft. Ein Script lässt sich entweder über die /config/scripts.yaml einrichten, oder über die Oberfläche unter Einstellungen → Script.

Ein Beispielscript um auf dem Chromecast ein YouTube-Video abzuspielen, sieht so aus:

bohnen:
  alias: Bohnen
  sequence:
    - service: media_extractor.play_media
      data:
        entity_id: media_player.kreiselcast
        media_content_id: https://www.youtube.com/watch?v=QvpBBLn1Hn4
        media_content_type: video/youtube

Troubleshooting

Manchmal kann es passieren, dass beim Druck auf einen Dash-Button einfach nichts passiert. Dann gilt es, folgende Dinge zu checken:

  • Ist der Beamer eingeschalten? – Aktuell kann der Chromecast diesen nicht automatisch einschalten
  • Läuft der Dasshio-Service ohne Probleme? – Manchmal verschluckt sich Dasshio, es taucht ein Python-Stacktrace unter Homeassistant → Hass.io → Dasshio → Logs (ganz unten) auf. Dann einfach mittels Restart neustarten.
  • Klappt die Verbindung zwischen Homeassistant und Chromecast? – Manchmal ist mit Dasshio alles in Ordnung, nur der Chromecast reagiert einfach nicht. Mittels chrome://cast (in einem Chrome im selben Wlan) lässt sich der Chromecast neustarten.