Amazon Dash Button sicher in HomeWatch verwenden

Kurzanleitung um Amazon Dash Buttons sicher in HomeWatch einzubinden

Zur Erkennung eines Schaltbefehls über Amazon Dash Buttons bietet das FHEM Modul 73_PRESENCE.pm verschiedene Möglichkeiten. Hier ist eine zusätzliche, elegante und stets sichere Methode:

Beispiel:

define DB_Nerf PRESENCE function {return qx(sudo arp-scan -l) =~ /44:65:0d:30:ab:ee/?1:0} 3
attr DB_Nerf event-on-change-reading state,presence
define N_DB_Nerf_pressed notify DB_Nerf:present set IT_PLUG_02 toggle

Erklärung:

  • Der Dashbutton der Marke „Nerf“ besitzt die MAC Adresse 44:65:0d:30:ab:ee, dies wurde etwa mit LanScan ermittelt. Dashbuttons werden in HomeWatch stets mit DB_ einleitend definiert.
  • Arp-scan ermittelt alle im LAN aktiven MAC Adressen und Perl wenden die MAC des Dashbuttons als RegEx an. Als Ergebnis wird an 73_PRESENCE.pm eine 1 gemeldet wenn die MAC Adresse im Output von arp-scan enthalten war (also der Dashbutton present war).
  • Der Parameter 3 bestimmt, dass FHEM alle 3 Sekunden die MAC prüft. Meinen Tests nach ist damit der Schaltbefehl immer sicher erkennbar.
  • Erkennt FHEM eine Änderung des state oder presence Attributs wird der Notify N_DB_Nerf_pressed ausgelöst, welcher hier den Schalter IT_PLUG_02 umschaltet.
  • Dashbuttons sind HWUIAC-Pushbuttons, keine Switches: Sie kehren nach einem Schaltbefehl immer zum Status absent zurück, und es ist nicht möglich einen Zustand abzufragen.

Vorteile:

  • Vorteil gegenüber dash_dhcp: Befindet sich der Dashbutton, der DHCP Server und die HomeWatch FHEM Instanz nicht im selben LAN Segment kann das Presence Modul bei Verwendung von Switches den DHCP ARP Request nicht erkennen. Diese Methode funktioniert über Switches, LAN Segmente und WiFi/Ethernet Grenzen hinweg.
  • Vorteil gegenüber lan-ping: Diese Methode benötigt keine fixed leases auf dem DHCP Server, da der Check auf Ebene 2 OSI/ISO stattfindet. Sie ist auch einsetzbar wenn der Kundenrouter fixed leases nicht unterstützt.

Erweiterungen:

Mehrere Dashbuttons, die denselben Schaltbefehl auslösen können im Pattern mit angegeben werden, was die Systemlast weiter reduzieren hilft:

define DB_ZweiButtons PRESENCE function {return qx(sudo nice arp-scan -l) =~ /44:65:0d:30:ab:ee|af:e5:fd:30:ab:ff/?1:0} 3

Mögliche Fehlerquellen:

Sofern der Schaltvorgang nicht zuverlässig funktioniert, sollte das WLAN-Funknetz geprüft werden.

Wenn die Funknetzauslastung sehr hoch ist, führt dies dazu das der DashButton sich nicht zum WLAN verbinden kann und damit auch keine Erkennung der MAC Adresse stattfinden.

Ähnliche Artikel

Sie wünschen Beratung?
Die CamData Hotline:

Telefon:
+49 (0) 2161 18 58 580

Oder per E-Mail:
info@camdata.de

Unsere Standorte

  • Mönchengladbach
  • Dresden
  • Hamburg
  • München

Shop