Notfallknopf aus Amazon Dash Button mit Raspberry Pi betreiben

  • Hallo Foris,
    aufgrund des Interesses an meinem Projekt "Notfallknopf mit Raspberry Pi und Amazon Dash" im Bereich "was hab ich heute für meine Preparedness getan" hier der versprochene seperate Beitrag dazu mit einer detailierten Erklärung.
    Ich habe das für meine Eltern konzipiert, die in ihrem eigenen Haus in der Nähe wohnen aber langsam älter werden.
    Deshalb (und aus aktuellem Anlass) wollte ich eine Möglichkeit schaffen, wie die typischen jungen Smartphone Nutzer einfach benachrichtigt werden können falls Hilfe vor Ort nötig wird. Sprich meine Eltern können damit im Notfall einfach zu Hause auf den Knopf drücken und schon bekommen ich, meine Frau und mein Bruder sofort eine Notfallmail aufs Handy. Der Knopf ist klein und kann auch im Haus mitgenommen werden.


    Folgende Hardware habe ich verwendet:

    • Einen Amazon Dash Button - egal welcher. Einfach bestellen. Kostet in DE 4,99 EUR. Man muss nix damit bestellen. Wenn man es doch tut werden die 4,99 EUR mit der ersten Bestellung verrechnet.
    • Ein häusliches WLAN Netz - ich werde das Vorgehen anhand einer Fritzbox 7490 beschreiben, das ist aber reine bequemlichkeit, es eignet sich auch jeder andere Router.
    • Ein Raspberry PI - der muss nicht sonderlich schnell sein, ich habe einen Raspberry Pi 2 verwendet. Er muss halt (gerne auch am Kabel) im gleichen Netzwerk wie die WLAN Geräte sein und immer eingeschaltet.


    Software:

    • Eine "normale" Raspbian Linux Installation (z.B. hier: https://www.raspberrypi.org/downloads/)
    • Ein funktionierendes Python muss installiert sein (ist eine Skriptsprache) - das ist bei mir schon eine Weile her, ich weis nicht mehr ob es bereits beim Download mit drin ist. Falls Nein einfach mit "sudo apt-get install python-2.7 python-pip" nachinstallieren.


    Schritt 1: Den Dash Button im WLAN Netz einrichten - diese Einrichtung aber nur soweit beenden, dass KEIN Produkt zum Einkauf ausgewählt wird. Also derzeit den Punkt 6. NICHT mehr ausführen.
    Amazon beschreibt das hier:
    https://www.amazon.de/gp/help/…6340&tag=httpswwwaustr-21


    Das war dann gleich mal das letzte Mal, dass Amazon etwas von "seinen" Button gehört hat. Denn jetzt kommt


    Schritt 2: Die Admin-Oberfläche des Routers aufrufen, in meinem Fall über die URL http://fritz.box Dort unter "Heimnetz" nach dem Amazon Button suchen. Er ist unter "inaktive Geräte" zu finden, da er aus Stromspargründen nur einige Sekunden "online" ist, wenn gedrückt wurde. Ggf. gibt es im Netz eine Reihe von Beschreibungen, wie man den Button findet und genau identifiziert. Einfach nach "Amazon Dash Hack" suchen. Oder mich fragen :winking_face:


    In Eurem Router solltet Ihr gleich nach der Einrichtung in Schritt 1 eine Zugriffsregel für den Button einrichten, die dafür sorgt, dass der Button nicht mehr "nach draussen" kommunizieren darf. Andernfalls würde Amazon Euch mit einer Email nerven, dass die Einrichtung nicht abgeschlossen ist und ungebetene Email-Hilfe anbieten. Das endet hiermit...
    Des Weiteren sollte der Übersicht halber dem Button eine feste IP Adresse zugeordnet werden (ist aber nicht zwingend). Und in der Fritzbox wird auch die MAC Adresse des Buttons angezeigt. Diese ist wichtig - gleich notieren, die brauchen wir später noch.


    Schritt 3: Den Raspberry Pi als "Lauscher" konfigurieren. Praktisch alle "Dash-Hacks" im Netz funktionieren gleich: Man hat ein Skript das im lokalen Netzwerk auf ein "Lebenszeichen" des Buttons lauscht. Und wenn dieses Lebenzeichen erkannt wurde wird eine beliebige Aktion ausgelöst. In meinem Fall wird eben per SMTP eine Email verschickt. Das Skript das ich zusammen geschraubt habe beinhaltet aber auch bereits die Logik für IFTTT, ein Dienst, der es ermöglicht diverse Aktionen auf einen Web-Event zu definieren. Man könnte z.B. einen Twitter Eintrag generieren o.ä. In der Anlage findet Ihr mein Skript, es ist eine eigene Anpassung von diversen Fundstellen im Netz. Über IFTTT könnte ich in einem seperaten Beitrag schreiben, das würde hier erst mal zu weit führen.


    Wichtig ist die Zeile 66: Dort müsst Ihr die MAC Adresse Eures Dash Buttons eintragen anstatt meiner. Falls Ihr mehre Buttons habt können die da auch dazu. Ach ja, und natürlich Eure SMTP Email Infos müssen oben in das Skript rein - das ist ja klar. Die funktionieren so nicht. Diese bekommt Ihr von Eurem Email Betreiber oder es steht in Eurem Email Programm.


    Jetzt könnt Ihr das ganze testen, indem Ihr das Skript manuell in Euer Home Verzeichnis kopiert (bei mir in /home/pi/dash/dash.py) und dort mit "sudo python dash.py" startet. Danach den Button drücken und schon sollte das Ereignis ausgelöst werden, in diesem Fall eine Email.


    Es fehlt nun noch Schritt 4:
    Das Dash-Python-Skript beim (Neu-)start des Raspberry Pis automatisch im Hintergrund starten:
    Einfach an der Kommandozeile "sudo crontab -e" ausführen um einen neuen Eintrag im Crontab einzurichten.
    Z.B. einfach sowas hier in die erste Zeile rein:
    @reboot sh /home/pi/launcher.sh >/home/pi/logs/cronlog 2>&1
    Speichern mit Strg-X
    Noch das log-Verzeichnis anlegen (falls beim Start was schief geht):
    mkdir /home/pi/logs


    Wie Ihr seht habe ich im Crontab ein Shellskript hinterlegt - ich war nicht sicher, ob man da direkt ein Python Skript rein schreiben kann. Ausserdem kann man so den Pfad sicher festlegen. Auch das Shellskript findet Ihr in der Anlage - es befindet sich bei mir im Verzeichnis /home/pi


    Jetzt noch ein Neustart des Raspis und der Knopfdruck sollte eine Email verursachen.


    Wenn der Button sich beim "Knopfdruck" im WLAN registrieren konnte, dann leuchtet er erst kurz weiß und dann 2-3mal rot. Zumindest bei mir ist das so. Laut Amazon hält eine Batterieladung für bis zu 1000 Knopfdrücke. Falls bei mir mal die Batterie leer sein wird werde ich versuchen den Energiespeicher zu tauschen.


    Viel Spaß damit - ich hoffe ich habe mich verständlich ausgedrückt und nicht allzu viele Fehler gemacht - ist mein erstes größeres eigenes Tutorial...
    :peinlich:
    Gruß
    Bilbo3000
    previval.org/f/index.php?attachment/36944/previval.org/f/index.php?attachment/36945/


    PS: Ich habe im Netz auch noch einen Dienst gefunden, der eine virtuelle Telefonanlage beinhaltet. Diese ermöglicht es, eine Ortsfestnetznummer in DE zu wählen und mehrere Telefone oder Handy klingeln gleichzeitig. Derjenige, der als erstes abnimmt hat den Anruf. Das nutze ich schon seit Jahren für Notfälle im Rahmen des Asthmaproblems meines Sohnes. Der Button ist eine Ergänzung wenn man nicht mehr wählen/telefonieren kann. Die Telefonvariante beschreibe ich vielleicht ein anderes Mal...

  • GEILGEILGEILGEIL :smiling_face_with_hearts::partying_face:



    Ich wusste garnicht das die Knöpfe sowas können - Oh man mir fallen so viele geile sachen ein die man damit Steuern kann!



    Ich bin dann mal im Kämmerchen am Scripten =)


    Vielen Dank für den Beitrag!


    Grüße,
    B.S

    zwischen Genie und Wahnsinn passt nichmal ein Haar!

  • Mein Weg ist nur eine Variante von vielen. Wenn Ihr Euch mit dem Thema weiter beschäftigen wollt gibt es dazu viel wenn man nach "Amazon Dash Hack" sucht.
    Auch in der ct war schon mal ein Artikel. Solche 'smarten Knöpfe kann man auch direkt kaufen, dann sind sie aber meist mehr als 30 Eur teuer.
    Ein weiterer Punkt ist, dass einige Hacks darauf abzielen, z.B. eine smarte Lampe zu steuern.
    Das finde ich ein wenig kindisch, da es dafür ja Lösungen gibt, die ganz ohne Internet funktionieren. Bis auf diesen Knopf ist mein Haus nicht sonderlich 'smart'.



    Wenn Ihr Hilfe bei der Umsetzung braucht gebt Bescheid.
    Wenn man ein paar grundlegende Hürden überwunden hat ist der Rest recht einfach...


    Gruß
    Bilbo3000

  • Hallo bilbo3000,


    ich möchte dir hier nochmal herzlichst meinen Dank ausrichten!
    dein Notfall Button ist bei mir jetzt im Einsatz und unterstützt
    meine Frau bei ihrer Erkrankung und mich um für sie da zu sein
    wenn Sie mich braucht!


    Vielen vielen Dank!


    Viele Grüße,
    frogx

  • Hi frogx,
    vielen Dank für das Feedback! Es freut mich zu hören, dass meine Ausführungen tatsächlich dabei geholfen haben den ersten weiteren "NotfallButton" an den Start zu bringen.
    Das gute an dem System ist ja auch, dass Du beliebig viele Knöpfe für verschiedene Aktionen einbinden kannst. Die Dinger gibts ja dank Amazon-Subvention praktisch zum Nulltarif und auch in verschiedenen Farben :)
    Gruß
    Bilbo3000

  • Cool, hab mir auch einen Dash Button geholt (natürlich den mit Durex, was sonst :kichern:) um damit herumzuspielen. Als Notfallbutton sicher auch nicht schlecht!