Elektronik

MyPowerrouter.com wird abgestellt - Raspberry PI als Ersatz

Tage im Haus: 1811

Achtung!

Mein Powerrouter hat leider seinen Geist aufgegeben und wurde von Viebrock zurückgenommen. Er ist auch schon abgebaut! Ich versuche, so weit es mir möglich ist, dass Projekt am laufen zu halten und werde auch in Zukunft das Abbild für den PI auf meinem Server lassen. Jeder kann es sich weiterhin kostenlos herunterladen.

Gerade geht es heiß her im Internet wenn es um das Thema Powerrouter geht. Nedap stellt den Online-Monitoring-Service zum 01. Mai ein. So wie ich das in den Foren gesehen habe poppen jetzt aus allen Richtungen sehr kreative Ideen aus dem Boden.

Da ich ebenfalls für meinen Nedap Powerrouter eine Lösung brauche und mir viele andere Ideen etwas zu invasiv für mein restliches Netzwerk sind, habe auch ich mich an die Arbeit gemacht und etwas zurecht getüftelt. Es musste etwas sein das keinen Einfluss auf den rest meines Netzwerkes hat. Etwas, das man einfach irgendwo dazwischen stecken kann und ohne Zutun funktioniert.

Mein Setup

Also habe ich mit einen Raspberry Pi B+ von 2015 und einen USB-Netzwerkadapter geschnappt, ein aktuelles Raspberry Pi OS installiert und mal geschaut was man alles braucht und direkt los gelegt. So soll es dann hinterher angeschlossen werden:

Das ganze System ein Mal komplett installiert, angeschlossen und siehe da... nach zwei Tagen sind schon sehr informative Daten da.

Was dazu gebraucht wird

  • Raspberry PI (Version ist eigentlich egal. Selbst bei meinem B+ läuft es gut. Er sollte aber einer sein mit Netzwerkanschluss B+, 2, 3, 3+ und 4 gehen ohne Probleme). Natürlich sind die ab dem Pi 2 eine ganze Ecke schneller und eher geeignet, gerade wenn man nach einigen Monaten viele Daten hat.
    Am besten nehmt ihr ein Kit, weil da schon fast alles dabei ist, was man so braucht, wie bspw. hier:
    • Pi 3+ (aktuell kein Kit verfügbar, sobald ich wieder eins finde, werd ich den link wieder hinterlegen)
    • Pi 4 (*) (Der Pi 4 ist zwar viel leistungsstärker, verbraucht aber auch etwas mehr Strom und entwickelt u.U. etwas mehr Hitze)
  • MicroSD-Karte mindestens 8GB bspw. die SanDisk Ultra 32 GB (*)
  • Raspberry Pi Netzteil bspw. offizielles Pi 3 Netzteil (*) oder offizielles Pi 4 Netzteil (*)
  • Optional (falls kein Kit gekauft wurde, so eins bei ist) kann man dem Pi auch ein Gehäuse gönnen bspw. Pi 4 (*) oder für Pi B+, 2, 3 und 3+ (*) beim Pi 4 lohnt sich ggf. auch ein Gehäuse, dass den Pi gut kühlt, wie bspw. ein Passiv Pi 4 Gehäuse (*).
    Wer den Pi vielleicht an der Wand montieren möchte, kann auch solche Gehäuse nehmen. Sowohl für den Pi B+, 2, 3 und 3+ (*) als auch für den Pi 4 (*) - da kann man dann auch den Lüfter mit im Gehäuse montieren, was wahrscheinlich der Langlebigkeit des Raspberry Pi's gut tut.
  • Einen USB-Netzwerkadapter. Man kann fast jeden nehmen. Ich habe einen alten von Apple mit USB 2.0, aber selbst die 2€ teile aus Fernost funktionieren fast alle ohne irgend ein zutun. Man braucht auch kein USB 3.0 oder 1Gbit, da der Netzwerkanschluss des Powerrouters nur 10Mbit hat.

Abbilder für den Raspberry Pi

VersionDownload LinkAlternativer download LinkGrößeBemerkung
v0.1.10LinkLink3,2 GB
v0.2.3LinkLink3,2 GB- Statusmeldungen vom Powerrouter
- Pushbenachrichtigungen auf Mobiltelefon via Pushover möglich
v0.2.4 (aktuell)LinkLink3,2 GBMehrere Powerrouter können in Grafana differenziert werden

Installation

  • Ladet euch mein Abbild (ich empfehle die aktuelle Version) des Raspberry Pi Betriebsystems herunter und legt es euch irgendwo ab, wo ihr ein wenig Platz habt.
  • Ladet euch den Raspberry Pi Imager hier herunter und installiert ihn euch
  • Steckt die MicroSD-Karte mit einem SD-Kartenlesegerät in euren Computer oder falls ihr einen im Rechner/Notebook habt, tut der es natürlich auch
  • Öffnet den Raspberry Pi Imager
    • Klickt auf OS WÄHLEN
    • Klickt ganz unten auf Eigenes Image
    • Öffnet eure heruntergeladene Zip Datei (muss nicht unbedingt entpackt werden)
    • Klickt jetzt auf SD-KARTE
    • Wählt hier bitte mit äußerster Sorgfalt euren SD-Kartenleser aus, wo die MicroSD-Karte drin steckt
      (ACHTUNG: Auf dem ausgewähltem Gerät wird ALLES gelöscht und das Raspberry Pi Betriebsystem installiert)
    • Vergewissert euch bitte nochmal, dass ihr wirklich den SD-Kartenleser mit der zu beschreibenden MicroSD-Karte ausgewählt habt
    • Klickt auf SCHREIBEN
  • Wenn der Pi Imager fertig ist, steckt die frisch beschriebene SD-Karte in den Raspberry Pi
  • Verbindet den Raspberry Pi mittels Netzwerkkabel mit eurem Internet-Router
  • Verbindet den Powerrouter mit dem USB-Netzwerkadapter
  • Steckt den USB-Netzwerkadapter in einen USB Port des Raspberry Pi
  • Verbindet den Pi mit dem Netzteil (und schaltet ihn ein, wenn das Netzteil einen Schalter hat)

Abrufen der Daten

Zuallererst müsst ihr die IP Adresse des Raspberry Pi herausfinden. Ggf. reicht es den Pi über powerinterface.local oder powerinterface.fritz.box aufzurufen. Wenn alles funktioniert hat (bitte habt hier ein paar Minuten Geduld mit dem Pi, er muss alle Dienste hoch fahren, und das kann u.U. vier-fünf Minuten dauern) und der Pi schon die erste Anfrage des Powerrouters erhalten hat, solltet ihr eine ähnliche Seite angezeigt bekommen, wie die mypowerrouter.com Seite als "Aktuelle Werte" darstellt, nur eben in statischer Form (Bild kann ggf. durch das Softwareupdate abweichen).

Grafana: http://[RASPBERRY_PI_IP]:3000 bzw. powerinterface.local:3000 bzw. powerinterface.fritz.box:3000
AdGuard: http://[RASPBERRY_PI_IP]:5000 bzw. powerinterface.local:5000 bzw. powerinterface.fritz.box:5000
Werte für externe Systeme, wie Loxone: http://[RASPBERRY_PI_IP]/values.json bzw. powerinterface.local/values.json bzw powerinterface.fritz.box/values.json

Aber wir wollen uns ja schöne Grafen anzeigen lassen, also müssen wir die IP Adresse mit dem zusatz :3000 in die Browser-Adresszeile eintragen. Wir werden von einer Anmelde-Maske begrüßt in der wir die Zugangsdaten (s.u.) eintragen. Achtung: wir bekommen jetzt eine fast identische Maske erneut angezeigt, allerdings will Grafana hier, dass wir ein neues Passwort vergeben, weil wir das Standardpasswort benutzt haben.

In Grafana kann man nun oben auf das Home klicken, dann kann man das Dashboard Aktuelle Werte auswählen und erhält die statistischen Informationen die der Powerrouter weitergeleitet hat.

Ich habe noch ein weiteres Dashboard angelegt mit dem Titel Powerrouterdaten. Das sind noch Informationen die ich in der Datenbank gefunden habe. Das sind überwiegend die Werte die man direkt am Powerrouter selbst ablesen kann. Die beiden Werte energyPlatformProduced und energyPlatformConsumed konnte ich keiner klaren Information zuordnen und habe daher die Umbenennung weg gelassen.

Benutzerdaten

  • Grafana
    • Benutzername: admin
    • Passwort: admin
  • AdGuard
    • Benutzername: root
    • Passwort: toor
  • SSH
    • Benutzername: pi
    • Passwort: raspberry
  • InfluxDb
    • Benutzername: grafana
    • Passwort: grafana

Für die "Will ich selber machen"

Ich habe folgendes gemacht... Vielleicht hilft es dem ein- oder anderen

  • Internen (onboard) Netzwerkport (eth0) kriegt vom Router eine IP Adresse via DHCP
  • Zusätzlicher USB-Netzwerkport (eth1) hat eine feste IP Adresse (192.168.0.1) und sich selbst als Gateway
  • DHCP Server installiert und für das zusätzliche Netzwerkinterface (eth1) ausschließlich konfiguriert
  • Mittels firewalld habe ich dem System mitgeteilt, dass es als "Router" fungieren soll. Jegliche Kommunikation vom USB-Netzwerkanschluss wird an den internen Netzwerkanschluss einfach weitergeleitet.
  • AdGuard installiert und auf Port 5000 konfiguriert
  • In AdGuard die Adresse logging1.powerrouter.com per DNS-Rewrite auf die 192.168.0.1 weitergeleitet
  • Einen InfluxDb Datenbankserver installiert
  • In der InfluxDb eine Datenbank home angelegt
  • In der InfluxDb einen Benutzer grafana mit dem Passwort grafana angelegt
  • Aktuelles NodeJS installiert
  • Das Powerinterface von ngrie kopiert
    • Die vorherige Version v0.1.10 wiederhergestellt (die leitet die Anfragen an logging1.powerrouter.com weiter, damit das mypowerrouter.com Portal weiterhin funktioniert)
    • Die falsche IP Adresse die im Code steht durch die Adresse logging1.powerrouter.com ersetzt (der PI selbst nutzt ja den DNS vom Router)
    • Die InfluxDb konfiguriert und den Eintrag für die Weiterleitung in der config.yml hinterlegt
  • Grafana auf dem Port 3000 Installiert
    • In Grafana die Influx Datenbank als Data-Source konfiguriert
    • Zwei Dashboards gebastelt, was etwas Info darüber ausgibt was dem nahe kommt, was man aktuell auf mypowerrouter.com sehen könnt.
  • Über firewalld die Ports 22, 80, 3000, 5000 und 8086 für beide Interfaces freigegeben

Grafana Dashboards

Für diejenigen die das Powerinterface bereits im Einsatz haben oder es anders nutzen wollen, hier sind die beiden Dashboards:

Danke

Hier möchte ich mich bei allen bedanken.
Danke an Niklas Grießer, der das Powerinterface entwickelt hat, worauf das hier basiert.
Danke an Tino und Frank für die Grafana Dashboard Vorlagen
Vielen lieben Dank an alle die mir bis hier her einen oder mehrere Kaffee spendiert haben, finde ich wirklich grandios von euch!!!

Affiliate

Die mit Sternchen (*) gekennzeichneten Links sind sogenannte Affiliate-Links. Wenn du auf so einen Affiliate-Link klickst und über diesen Link einkaufst, bekomme ich von dem betreffenden Online-Shop oder Anbieter eine Provision. Für dich verändert sich der Preis nicht.

Klingel, aber ohne brummen

Tage im Haus: 1111

Als wir eingezogen sind, hat uns Viebrockhaus die Klingel im klassischem Sinne gebaut. Der Schalter der Klingel schließt den Stromkreis und der Gong ertönt (Ding Dong). Simpel, und funktional.

Zu simpel

Das war mir etwas zu simpel und unflexibel, also habe ich kurzerhand die Kabel der Klingel an einen Analogen Eingang (Digitale sind derzeit alle belegt) einer Loxone Extension gehangen. Der Stromkreislauf des Gongs wird jetzt durch ein Relais der Loxone Extension geschlossen. Jetzt geht es an die Programmierung.

Klingel Programmierung

Erläuterung

Links finden wir also den Klingeltaster, dieser ist verbunden mit einem Tastschalter. Sobald der Tastschalter einen Tastendruck über Tr mitbekommt, gibt Qon einen Kurzen Impuls weiter.

Dies habe ich so gemacht, damit die Klingel auch gedrückt gehalten werden kann und es ertönt nicht dieses nervige Brummen (Ding brrrrrrrrrrr Dong). Der Tastschalter hat Standardmäßig eine Dauer des Ausgansimpuls von 0,1 Sekunden, was bei einem Ding Dong vollkommen ausreichend ist. Wenn man jetzt einen Gong mit einem Dauerton hat, dann kann man diese Impulsdauer auch auf eine Sekunde oder mehr stellen, dann würde der Ton für diesen Zeitraum zu hören sein.

Dieser Impuls geht nicht direkt weiter zu meinem Gong, denn ich möchte zum einen den hörbaren Gong über die Visualisierung ein/ausschaltbar machen und ich möchte eine Push-Benachrichtigung auf mein Handy haben. Wenn also Klingel Gong erlaubt eingeschaltet ist und die Taste an der Tür gedrückt wurde, dann erhalte ich einen hörbaren Ton. Die Push Benachrichtigung erhalte ich in jedem Falle.

Anmerkungen

Der Gong, also das Gerät im Haus, dass den Ton von sich gibt, darf nicht direkt an einen Analogen Ausgang geklemmt werden. Der Analoge Ausgang darf nur mit maximal 20 Milliampere (mA) belastet werden sonst droht ein Defekt des Miniservers/der Extension. Der Gong selbst wird sehr wahrscheinlich viel mehr als diese 20mA ziehen.

Endlich Internet und das zuordnen in der Programmierung

Tage im Haus: 12

Seit gestern haben wir endlich Internet. Bis gestern haben wir uns kaum getraut das Internet über den UMTS Stick zu benutzen, da sonst das Volumen zu schnell leer ist und wir dann gar nicht mehr hätten surfen können. Also konnte ich auch keine Bilder hochladen oder sowas...

Jetzt haben wir also Internet und ich kann auch mal zeigen wie ich mit der Programmierung befreundet habe!

Am Tag der Hausübergabe waren die Elektriker noch zugange und waren fleißig am Schrauben und Klemmen. Aber die ganzen Schalter waren zumindest schon fertig und damit ich die nicht dauernd fragen muss: "Wo ist denn Schalter xyz?", bin ich mit folgendem Setup gestartet.

der Anfang

Das sind alle digitalen und analogen Eingänge die meine Komponenten so hergeben. Nachdem ich diese schön auf einer Seite Positioniert habe, konnte ich die Liveview aktivieren und mit dem Notebook auf der Hand durch das Haus gehen und Taster für Taster drücken, immer wenn ein Eingang Grün aufleuchtet

schalter aktiv

habe ich diesen gleich entsprechend benannt. Diese Benennung kann auch mit Abkürzungen versehen sein. Diese Namen dienen erst mal nur der Programmierung.

Nach ein paar stunden sah das bei mir dann so aus

Alle Schalter fertig

das sieht Toll aus! 😬

So, wie teste ich jetzt die Ausgänge und wie kann ich herausfinden wo was dran ist, wenn man das nicht bei den Elektrikern nachfragen kann (/sollte, denn sonst werden sie nie fertig). Ich habe einen Miniserver mit acht Schaltausgänge, drei Relay Extensions die jeweils 14 Schaltausgänge und dann nochmal drei normale Extensions die nochmal jeweils acht Schaltausgänge haben. Jeder Schaltausgang kann eine Steckdose, Lampe, ein Stellventil oder einen Rolladen ein bzw. ausschalten. Mit insgesamt 74 Schaltmöglichkeiten steht mir noch vieeeeeeeel Arbeit bevor.

Erst hatte ich angefangen und mit einzelnen Schaltern versucht mir zu behelfen, was aber zu Zeitaufwändig war. Nach einer Stunde zeit verballern hab ich mir dann was vorbereitet.

Man nehme die "2 Auswahltasten" und eine "Sequenzer" Komponente und blättere durch die Schaltkreise. Die "2 Auswahltasten" Komponente gibt einem die Möglichkeit im Browser oder auf dem Handy mit einem Minusbutton und einem Plusbutton eine Zahl durchzublättern. Drückt man auf das Plus springt man von der Null auf die Eins, nochmal und man springt von der Eins auf die Zwei, usw.. Der "Sequenzer" kann bis zu acht Ausgänge schalten und er hat einen Eingang in dem man ihm sagen kann, welchen er schalten soll. Kriegt er die Position Eins, schaltet er den Ausgang mit der Nummer eins auch ein, bei der Zwei schaltet er den Ausgang zwei, usw.. An die Ausgänge der zehn Sequenzer, die ich brauchte um alle schaltbaren Möglichkeiten abzudecken, habe ich dann alle möglichen Ausgänge angeschlossen. Hier ein Beispiel:

2 Auswahltasten und Sequenzer

Die "2 Auswahltasten" Komponente musste noch etwas konfiguriert werden. Als Minimum Wert braucht sie die Null (um auch alle wieder ausschalten zu können) und als Maximum Wert die acht, weil es nur 8 Schaltmöglichkeiten gibt. Und es muss in der Visualisierung sichtbar sein. Visualisierung ist bei Loxone dann für die App oder den Browser.

IMG_0329

Also mit dem Handy in der Hand durchs Haus watscheln und Plus und Minus drücken um zu schauen was passiert. Hin und wieder kriege ich dann von Kaja zugerufen: "Hier ging grad das Licht an!" 😂

So ging es auf jeden Fall schneller als mit realen, physikalischen Tastern die man ständig umlegen muss um den raum zu wechseln.

Nach zwei Tagen waren dann alle diese Anschlüsse zugeordnet

IMG_0313

Elektriker fertig und die geilste Klingel

Tage im Haus: 3

Die Elektriker Willi und Eduard sind meine absoluten Helden. Eigentlich waren diverse Schalter aneinandergekoppelt. Bspw. will man (normalerweise) das im Erdgeschoss der Schalter für das Obergeschoss Licht die gleiche Funktion hat wie der Schalter im Obergeschoss für das dortige Licht. Deswegen wurden diese Schalter direkt in der Verkabelung auch entsprechend zusammengebunden. Eduard hat sich heute eine Stunde Zeit genommen, dass alles auseinander zu friemeln und legt mir jeden Schalter auf einen eigenen Eingang, somit kann ich dann alle Schalter individuell Programmieren. Die Elektriker sind fertig und haben und unsere Klingel montiert 😬

IMG_0265

Die Elektriker haben auch die Installation unserer Loxone Hausautomationskomponenten heute Abgeschlossen. Alles ist drin und verkabelt, jetzt muss ich es nur noch alles in der Loxone Programmierung zuordnen können. Leider ist das sehr Zeitaufwändig, weil ich mit einer Glühbirne, montiert an einen Stecker durch die Räume muss, jeweils einen Schalter betätigen und checken ob eine Steckdose anging... 😫 Aber was tut man nicht für das eigene Haus 😬

IMG_0268

Endabnahme unseres Maxime 1000D

Tage im Haus: 1

Phu, nach einer recht unruhigen Nacht für mich ist es endlich soweit, die Endabnahme unseres Maxime 1000D. Mit einer Urkunde über 150 mgeretteten Regenwald und einem mega dicken Ordner mit allem möglichem Infos über unser neues Haus, haben wir es dann auch geschafft. Wir haben zwar noch einige Mängel, aber alles nur Kleinigkeiten.

Die Elektriker haben von mir etwas Aufschub bekommen, da ich noch einige Extra wünsche auf den letzten Metern hatte und denen in den letzten Tagen dauernd auf den Keks gegangen bin mit... Aaaaaaber, hier, und dort, und sowieso und hierunda... Naja, sind schon duffte Jungs.

Jetzt kam heute auf den letzten Drücker noch raus, dass ich durch meine "Ach hier will ich noch was" und "Dort hätte ich auch gern noch was" dann irgendwann zu wenig Anschlüsse in der Loxone Hausautomation vorhanden sind. Da war ich wohl etwas zu gierig 😂.

Heute hatten wir dann auch Strom und ich hatte Zeit, den gaaaaaaanzen Tag und durfte endlich die ersten Erfahrungen sammeln in der Loxone Programmierung. Was soll ich sagen, einmal herausgefunden was wo dran angeschlossen ist, ist das so einfach, dass es mich schon etwas verwundert.

Alle Rollläden waren fertig konfiguriert in ca 20 - 30 Minuten.

Zwei knöppe, eine Automatikjallousie und zwei Motoren Anschlüsse in der Software auf ein Blatt gezogen, verbunden, speichern, fertig. Das Testen (warten bis die Rollläden fertig sind) und das messen, wie lange ein Rolladen ca. an Zeit braucht um eine Strecke abzuschließen hat am längsten gedauert.

Ich freue mich auf die kommenden Tage, wenn ich weitere Features in mein Haus bauen kann... 😬