In diesem Artikel möchte ich zeigen, wie man einfach eine Anwesenheitsanzeige mit einer FritzBox und ioBroker auf einem Raspberry Pi bauen kann. Wir werden ioBroker installieren und per Plugin die Anwesenheit von Geräten über die Fritzbox auslesen und anzeigen lassen. Am Ende wird das ganze noch hübsch in ein Dashboard verpackt.
Installation des Raspberry Pis
Ich gehe davon aus, dass das Installieren eines Raspberry Pis keine Hürde darstellt, beschreibe aber dennoch hier kurz die Vorbereitung an Hand eines Raspberry Pi Zeros.
Sollte bereits ein Raspberry Pi vorhanden sein, kann dieses genutzt und der Abschnitt übersprungen werden.
Flashen der SD-Karte mit Rasbian
Zunächst downloaden wir die aktuelle Version von Raspbian, dem Betriebssystem für unser Raspberry Pi. Hierzu nutzen wir bequem den offiziellen Raspberry Pi Imager:
Als Betriebssystem wählen wir Raspberry Pi OS und die entsprechende SD Karte aus.
Bevor wir das Image nun schreiben, klicken wir auf das Zahnrad, um ein paar Einstellungen vorab zu treffen, damit wir uns die Schritte gleich sparen und direkt auf das Raspberry Pi zugreifen können:
Wir geben dem Raspberry Pi einen Namen, wie er in unserem Heimnetz heißen soll und aktivieren SSH.
Anschließend vergeben wir ein Passwort für den Pi User und tragen unsere WLAN-Informationen ein.
Die SSID ist dabei der Name des WLANs und das Passwort jenes, welches zur Herstellung der WLAN-Verbindung notwendig ist.
Jetzt wählen wir noch das korrekte Wifi-Land aus, sowie Zeitzone und Tastaturlayout.
Nun können wir die Einstellungen speichern und das Image auf die SD Karte schreiben.
Den Hinweis, dass alle Daten auf der SD Karte überschrieben werden, bestätigen wir mit JA.
Sobald das Image auf die SD Karte geschrieben wurde, bekommen wir einen Hinweis und können nun das Raspberry Pi mit der SD Karte booten.
Per SSH verbinden
Um uns mit dem Raspberry Pi zu verbinden, können wir unterschiedliche Tools nutzen. Beliebt ist putty, ich nutze seit einiger Zeit das Windows Terminal (ab Windows 11 standardmäßig installiert):
Wir geben ssh gefolgt von dem Benutzer “pi” und @name_des_raspis ein, in meinem Fall also:
ssh pi@raspiobroker
Pakete aktualisieren
sudo apt-get update && sudo apt-get upgrade
Installation von ioBroker
ioBroker ist ein Programm zum Automatisieren des eigenen Zuhauses. Auf Grund der großen Anzahl an Plugins für verschiedenste Geräte, ist es besonders mächtig und flexibel. So lässt sich z.B. Alexa per Script automatisch steuern, in dem z.B. morgens und abends die Lautstärke eingestellt wird oder eine Lampe blinkt, wenn die Waschmaschine fertig ist. Wir nutzen ioBroker hier mit einem Plugin für die Fritzbox, um zu prüfen, welche Geräte im Netzwerk erreichbar sind, um so anzeigen zu lassen, welche Personen zu Hause sind. Wir installieren ioBroker mit folgenden Befehlen:
Raspberry Pi 3/4
curl -sLf https://deb.nodesource.com/setup_14.x | sudo -E bash - sudo apt-get install -y nodejs
Raspberry Pi Zero W
sudo wget -O - https://raw.githubusercontent.com/sdesalas/node-pi-zero/master/install-node-v14.17.1.sh | bash
ioBroker installieren
curl -sLf https://iobroker.net/install.sh | bash -
Es startet nun das Installationsscript für ioBroker.
Im ersten Schritt wird geprüft, ob alle Voraussetzungen für die Installation erfüllt sind und Pakete, sofern notwendig, werden nachinstalliert.
Auch hier ist wieder Geduld gefragt.
Im folgenden Schritt (2/4) wird ein Benutzer angelegt und Berechtigungen werden gesetzt.
Der dritte Schritt installiert ioBroker.
Im abschließenden Schritt (4/4) werden noch ein paar Kleinigkeiten erledigt, wie erneut Berechtigungen gesetzt.
Erst-Konfiguration von ioBroker
Wir öffnen nun einen Browser und geben die im letzten Schritt der Installation angezeigte IP-Adresse inkl. dem Port ein.
In meinem Beispiel also:
http://192.168.9.159:8081
ioBroker begrüßt uns mit einem Einrichtungsassistenten, welchen wir starten.
Wir stimmen den Lizenzbedingungen zu und definieren ein Admin-Passwort.
Im nächsten Schritt können wir einstellen, ob wir uns bei jedem Aufruf von ioBroker authentifizieren wollen.
In diesem Beispiel lasse ich diese Option deaktiviert. Ich empfehle aber, die Funtkion zu aktivieren, wenn mehrere Personen Zugriff auf das Netzwerk und die ioBroker-Installation haben.
Wir führen den Assistenten ohne SSL-Zertifikat fort und bestätigen den darauf folgenden Hinweis.
Nun können wir einige regionale Einstellungen treffen:
Damit haben wir den Assistenten erfolgreich hinter uns gelassen und werden darauffolgend gefragt, wie Geräte in unserem Netzwerk gefunden werden sollen.
Ihr könnt jetzt auf Entdecken klicken, wenn ihr vorhabt, eure Geräte wie Smart-Steckdosen, etc. einzubinden. Dies ist aber auch später noch möglich und ich überspringe diesen Schritt.
Installieren des Fritzbox-Adapters
Damit wir Daten der Fritzbox in unsere frische ioBroker-Installation bekommen und dort weiter verarbeiten können, benötigen wir einen Adapter.
Adapter stellen einfach ausgedrückt die Schnittstelle zwischen ioBroker und den jeweiligen Geräten dar.
Wir brauchen nun den Adapter TR-064 und installieren diesen mit einem Klick auf die 3 Punkte und anschließend auf das +
Es erscheint ein Fenster, welches uns die Installation zeigt.
Sobald diese abgeschlossen ist, können wir das Fenster Schließen.
FritzBox Benutzer anlegen
Damit ioBroker die Daten der Fritzbox auslesen kann, legen wir einen Benutzer zur Authentifizierung an.
Gebt dazu in eueren Browser fritz.box ein und loggt euch ein.
Klickt anschließend links in der Menüleiste auf System und FRITZ!Box-Benutzer.
Nun legen wir einen neuen Benutzer an. Ich nenne diesen iobroker und aktiviere die ersten drei Optionen:
Adapter konfigurieren
Ist der Benutzer auf der FritzBox angelegt, kehren wir zurück zu ioBroker und geben die eben erstellten Benutzerdaten ein.
Wir lassen die aktivierten Optionen, wie sie standardmäßig eingestellt sind und klicken auf speichern und schließen.
Nun sollten wir neben den Standard-Adaptern auch unseren TR-064 Adapter sehen. Ist dieser grün, hat bis hierhin alles funtkioniert.
Wir klicken nun auf den Schraubschlüssel des tr-064 Adapters und gehen auf Geräte.
Ein Klick auf den Button Geräte suchen zeigt uns nach einem Augenblick alle mit der FritzBox verbundenen Geräte an und wir können uns die gewünschten zur Anwesenheitsüberwachung auswählen. Natürlich machen hier die Smartphones der Personen im Haushalt Sinn.
Nun verlassen wir die Einstellungen wieder per Speichern & Schließen.
Visualisierung
Nun haben wir die gewünschten Informationen in ioBroker und können uns diese unter Objekte ansehen.
Doch diese Ansicht ist sehr technisch und natürlich möchten wir das ganze hübsch aufbereitet bekommen.
Dazu installieren wir nun den Adapter “HABpanel”. Dazu gehen wir wieder links im Menü auf Adapter und installieren diese auf die gleiche Art und Weise wie den TR-064 Adapter.
Ist der Adapter installiert, können wir die Oberfläche öffnen, indem wir links im Menü auf Übersicht gehen und HABPANEL auswählen.
Es öffnet sich ein neuer Browsertab, in welchem wir oben rechts auf das Zahnrad klicken und ein neues Dashboard hinzufügen:
Wir geben dem Dashboard einen Namen, z.B. “Zuhause“.
Jetzt können wir auf die neue Kachel “Zuhause” klicken und oben rechts ein neues Widget hinzufügen.
Für die Anwesenheit fügen wir einen “Schalter” (switch) hinzu:
Mit den drei Punkten oben rechts unserer neuen Schaltfläche können wir diese bearbeiten.
Als Item wählen wir das Gerät, welches wir überwachen möchten.
Dazu öffnen wir das Verzeichnis unseres tr-064 Adapters und suchen uns unter devices unser Gerät raus.
Von unserem Gerät nehmen wir das Attribut “active“.
Nun wählen wir noch ein schönes Symbol, vergeben einen sinnvollen Namen und schalten die on/off Beschriftung aus:
Abschließend klicken wir auf Speichern und dann auf Ausführen
Befindet sich das ausgewählte Gerät im Netzwerk, ist das Icon aktiv…
… und wenn nicht, erscheint es inaktiv:
Ihr könnt auf diese Weise selbstverständlich noch mehr Geräte hinzufügen.
Abschließend möchte ich noch auf die Handy-App ioBroker hinweisen, welche das Dashbaord anzeigen kann und man so schnell und einfach Zugriff auf die eingerichteten Informationen und Funktionen hat.
Ich hoffe, euch einen guten Einblick in das Thema Anwesenheit mit FritzBox und ioBroker auf Rasperry Pi gegeben zu haben.
Spielt mit ioBroker rum, denn wie eingangs erwähnt, lassen sich so viele tolle Dinge damit umsetzen.
Wenn euch dieser Beitrag gefallen hat, freue ich mich immer über eine kleine Unterstützung, um den Blog am Leben zu halten 🙂
Wow, muss echt sagen, hat auf anhieb funktioniert. Danke nochmal.
Kann man die Farbe aber ändern? wenn man z.B. nicht im Haus ist, dass es anstatt “grau” in “rot” ist und wenn man zuhause ist (sprich Schalter an) die Farbe “Grün” ist?
Hallo Dominic,
vielen Dank für die Anleitung, soweit hat alles funktioniert und das Dashboard zeigt nun an ob mein Handy verbunden ist oder nicht. jetzt bin ich nur auf der Suche, ob ich die Farben für “On” und “Off” ändern kann, zu Grün, wenn man “On” ist, damit es auffälliger ist.
Und was mir auch auffällt, ist in “Protokolle”, dass ich alle 5s (vermute die Abfragewiederholung) diese Fehlermeldung kommt und die “Log-Größe” wird natürlich daraufhin auch immer größer 😉
2022-09-17 13:18:32.362 error Cannot start callmonitor: Error: connect ECONNREFUSED 192.168….
Gruß Alex
Hallo Alexander,
freut mich, dass erstmal alles funktioniert.
Du kannst im Dashboard an Stelle eines Schalters auch eine Schaltfläche als Widget nehmen. Dann kannst du sowohl Hintergrundfarbe als auch Beschriftungsfarbe für active und inactive anpassen.
Zu deinem Log-Problem:
Wenn du in ioBroker links auf Instanzen und dann in die Einstellugnen des TR-064 Adapters gehst, kannst du das Häkchen bei “Anrufmonitor” entfernen und speichern.
Dann sollten die Logeinträge nicht mehr werden.
Bei mir gibt es ein kleines Problem: Wenn ich den IoBroker zur Erstkonfiguration im Browser über die IP des Raspis aufrufen will, erscheint die Meldung, dass er nicht erreichbar ist. Was hab ich falsch gemacht?
Hallo Axel,
hast du die IP-Adresse inkl. Port in deinen Browser eingebgen, so wie es am Ende der Installation von ioBroker angezeigt wird?
Wenn ja, versuche einfach die Installation erneut.
Das Problem ist, dass ioBroker bei dir nicht erreichbar ist. Entweder, weil die IP und Port falsch sind, oder weil ioBroker nicht startet.
Hast dein RasPi eine statische IP-Adresse oder vielleicht von deinem Router eine andere bekommen?