Powerinterface Raspberry Pi Update

Tage im Haus: 1881

Nun, das Powerinterface-Abbild läuft jetzt schon bei einigen auf ihren Raspberry Pi's problemlos und ist auch stabil. Für diejenigen unter euch die das dringende Bedürfnis verspüren ein Update einzuspielen, hab ich ein kleines Skript aufgesetzt. Die Vorgehensweise wird sein, dass wir erst mal von unserem Raspberry Pi ein Backup erstellen, dann das Update durchführen und im Worst-Case das Backup wieder zurück spielen.

Backup erstellen

  1. Raspberry Pi herunterfahren dazu unter Windows wie folgt vorgehen (einfach das MikroUSB Kabel aus dem PI zu ziehen kann die Daten auf der SD-Karte zerstören):
    1. Windows-Taste und "R" gleichzeitig drücken
    2. In das "Ausführen" Fenster powershell Eintippen und Enter drücken
    3. Mit dem Befehl (IP des Raspberry bitte eintragen): ssh pi@IP_DES_RASPBERRY sich zu dem Raspberry PI Verbinden
      (beim ersten mal werdet ihr gefragt Are you sure you want to continue connecting (yes/no)?, einfach yes eintippen und Enter drücken)
    4. Password raspberry eintippen und Enter drücken
    5. Jetzt den Raspberry Pi herunterfahren mit dem Befehl: sudo shutdown -h now eintippen und Enter drücken
    6. Wenn der PI um die zehn Mal mit der grünen Leuchte geblinkt hat, dann ist er heruntergefahren und kann von dem Mikro-USB Kabel getrennt werden.
  2. Das Programm Win32 Disk Imager herunterladen und installieren
  3. Win32 Disk Imager starten
  4. Mit einem klick auf das Ordnersymbol öffnet sich die Dateiauswahl. Navigiert an den Ort wo Ihr mindestens so viel Platz habt, wie die SD-Karte groß ist und vergebt einen Dateinamen bspw: Powerinterface_2021_05_02.img und klickt anschließend auf Öffnen (vergesst bitte nicht die Endung .img sonst kriegt ihr sie im Raspberry Pi Imager nicht angezeigt).
  5. SD-Karte aus dem Raspberry Pi entnehmen und in den Kartenleser einstecken und im Falle eines USB-Kartenlesers den in den USB-Port des PC's stecken
  6. Wählt in der Auswahlbox rechts neben dem Ordnersymbol nun das neu hinzugekommene Laufwerk aus (Im Windows-Explorer könnt ihr den Laufwerksbuchstaben dadurch identifizieren, dass es jetzt ein boot Laufwerk gibt)
  7. Jetzt nur noch auf Lesen klicken und der PC erstellt von eurer SD-Karte eine Kopie.
  8. Wenn ihr fertig seid, die SD-Karte wieder zurück in den Raspberry PI Stecken und den Mini-Computer mit Strom verbinden. Der Pi fährt dann wieder hoch und ist nach ca. drei bis fünf Minuten wieder fleißig am Arbeiten 🙂

Was passiert beim Update?

  • Das Update führt ein System-Update durch, sodass das Linux auf einem aktuellen Stand ist.
  • Das Powerinterface Projekt wird auf die Aktuelle version aktualisiert und der Installationsprozess neu angeschmissen.
  • Grafana wird in der Version 7.5.5 heruntergeladen und installiert.
  • Anschließend lädt der Raspberry Pi automatisch ein Skript herunter was ihn beim nächsten Neustart anweist seine SD-Karte voll auszuweiten. Dies ist besonders nützlich wenn man das Backup auf eine größere SD-Karte spielt und schadet in keinem Falle.
  • Wenn der Pi auch damit fertig ist, dann startet er sich ein Mal neu.

Update durchführen

Hier führen wir jetzt das Update durch.

  1. Windows-Taste und "R" gleichzeitig drücken
  2. In das "Ausführen" Fenster powershell Eintippen und Enter drücken
  3. Anschließend diesen Befehl ausführen (IP des Raspberry bitte eintragen):
    ssh pi@IP_DES_RASPBERRY "curl https://dl.heimbauprojekt.de/update_powerinterface | bash"
    (beim ersten mal werdet ihr gefragt Are you sure you want to continue connecting (yes/no)?, einfach yes eintippen und Enter drücken)
  4. Tippt das Passwort: raspberry ein und bestätigt mit Enter

Der Raspberry Pi ist jetzt je nach Modell und Anzahl an Updates 5-15 Minuten am Aktualisieren. Wenn er fertig ist startet er neu und ihr solltet die aktuellste Version haben (Bitte habt Geduld, der Pi braucht beim Starten immer etwas).

Backup zurückspielen

Hier geht es darum, dass erstellte Image wieder zurück zu spielen. Dieser Prozess ist identisch zu dem wie ihr eine IMG Datei auf die SD-Karte schreibt. Diesen Prozess habe ich bereits in meinem Beitrag MyPowerrouter.com wird abgestellt - Raspberry PI als Ersatz unter Installation beschrieben.

  1. Führt die Schritte 1.1 - 1.6 aus dem Backup erstellen Abschnitt aus um den Raspberry PI herunter zu fahren (falls ihr diese Karte verwenden wollt)
  2. Startet den Raspberry Pi Imager
  3. Klickt auf OS WÄHLEN
  4. Klickt in der Liste, ganz unten auf Eigenes Image
  5. Öffnet eure IMG Datei
  6. Klickt jetzt auf SD-KARTE
  7. 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)
  8. Vergewissert euch bitte nochmal, dass ihr wirklich den SD-Kartenleser mit der zu beschreibenden MicroSD-Karte ausgewählt habt
  9. Klickt auf SCHREIBEN

Anschließend kann die SD-Karte in den Raspberry Pi gesteckt werden und ihr habt den Stand aus der IMG Datei hergestellt. Strom rein und ab dafür!

Sollte es zu Problemen kommen, bitte zögert nicht mit mir in Kontakt zu treten. Einfach über das Kontakt Formular oder über die Kommentar Funktion.

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+ (*)
    • 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.

Loxone 1x1 - Schaltbare Steckdosen

Tage im Haus: 864

Da von einem Leser die Frage aufkam (danke Schille für deinen Beitrag), wie er eine Steckdose in Loxone integriert, zeige ich euch hier wie man das in Loxone realisieren kann. Für die Visualisierung verwenden wir den [startCode]Schalter[endCode] Baustein.

Lampe an der Steckdose

In der Loxone Welt sind Steckdosen und Lampen an einer Loxone Extension oder einer Loxone Relay Extension identisch zu handhaben. Will man also eine Lampe an eine Steckdose anschließen und sie bspw. über den Lichtschalter schalten, dann kann man den Digitalen Ausgang an der Loxone Extension bzw. Loxone Relay Extension genau so wie in Loxone 1x1 - Aller Anfang ist schwer - wir machen Licht einbauen.

Steckdose in der Visualisierung

Wenn die Steckdose für was anderes geplant ist als eine Lampe, wie die Kaffeemaschine, das Bügeleisen, den Fernseher oder für das Baby die Nachtmusik, kann man in Loxone den Baustein [startCode]Schalter[endCode] benutzen.

Dazu öffnen wir wieder die Bibliothek über den [startCode]Baustein einfügen[endCode] Menüpunkt

oder verwenden die Suche mittels [startCode]F5[endCode] und suchen nach [startCode]schalter[endCode]

und fügen den Baustein in unsere Seite ein.

Jetzt ziehen wir, von unserem Peripherie Baum, den digitalen Ausgang  in unsere Seite und verbinden diesen digitalen Ausgang mit dem [startCode]Q[endCode] Ausgang unseres [startCode]Schalter[endCode] Bausteins.

(GIF)

Nun sollten wir dem ganzen noch einen passenden Namen geben und es sowohl der Kategorie als auch dem Raum zuordnen.

Bezeichnung wäre bspw. [startCode]Kaffeemaschine[endCode], als Kategorie könnte man [startCode]Verbraucher[endCode] wählen und als Raum, in diesem Falle, die [startCode]Küche[endCode].

Als letztes noch den Haken bei der Visualisierung aktivieren.

Auf Berechtigungen und andere Eigenschaften gehe ich hier nicht weiter ein. Könnt ihr natürlich wählen je nach bedarf und gusto.
Denkt auch an den Remanenzeingang, durch den sich Loxone merkt wie der Status ist und ihn nach einem Miniserver-Neustart auch beibehält.

Und schon kann man die Steckdose in der Visualisierung schalten.

Zusatz - Steckdose über Taster einschalten, der schon belegt ist

Will man einen bereits belegten Schalter verwenden um zusätzlich die Steckdose zu schalten, bieten sich der [startCode]Mehrfachklick[endCode] oder der [startCode]Langzeitklick[endCode] an.

Hält man jetzt die Taste für 1,4 Sekunden gedrückt schaltet man die Steckdose ein. Nach erneutem 1,4 Sekunden langem drücken, schaltet man die Steckdose wieder aus.

Standardeinstellung sind 0,35 Sekunden als Zeitspanne bis zum nächsten Ausgang des [startCode]Langzeitklick[endCode] Bausteins (Q1, Q2, Q3, Q4).

Loxone 1x1 - Aller Anfang ist schwer - wir machen Licht

Tage im Haus: 449

Viele Leute haben mich bereits gefragt: "Wie programmiert man denn das, was du da alles in deinem Haus verbaut hast?"
Da dies nicht immer ganz so selbsterklärend ist die Headline "Aller Anfang ist schwer".

Dies soll einen Anfang darstellen für die, die sich vielleicht im Vorfeld informieren oder es mal probieren wollen.

Nun, wenn ich es erklären müsste ohne Bilder, dann würde es noch verwirrender klingen als es eigentlich ist. Um es besser zu erklären muss ich aber ein wenig ausholen. Als erstes muss man wissen wie die Komponenten aufgebaut sind.

Komponenten

Nehmen wir als Beispiel den Loxone Miniserver

(Quelle shop.loxone.com)

An der oberen Seite sieht man die "Digital Inputs" dort werden Taster angeschlossen, diese erkennen eins und null (gedrückt und nicht gedrückt).
Die "Analog Inputs" können einen Wertebereich von 0-10 Volt erkennen, bspw. Sensoren für Helligkeit, Wärme, Wasserstand, o. Ä.)
Die "Analog Outputs" können einen Wertebereich von 0-10 Volt ausgeben um bspw. einen Dimmer zu steuern (nicht zu verwechseln mit dem Dimmen einer normalen Lampe)
Die "Relay" Ausgänge sind zum Schalten von Lampen, Stellventile der Heizung, Rolladen, Steckdosen, etc..
Lan ist Netzwerk, Power die 24 Volt des Miniservers, Link ist die Verbindung zu anderen Loxone Komponenten und KNX/EIB ist die Möglichkeit auch KNX Komponenten anzuschließen. KNX ist aber für diese Erläuterung erst mal unwichtig.

Verkabellung

Wenn man nicht auf das neue Tree setzt (haben wir nicht, kam nachdem wir mit dem Haus angefangen haben und wäre uns auch zu teuer gewesen), werden die Schalter-, Lampen-, Stellventile-, Steckdosen-, Rolladenkabel und was sonst noch so Schaltbar sein, Schalten oder Messen soll, als Kabel direkt bis an die Loxone Komponente (in unserem Beispiel der Miniserver von Loxone) in den Hauswirtschaftsraum bzw. Keller gelegt. Dies nennt man auch Sternverkabellung.

Dadurch ergeben sich dann solche Kabel mengen wie ich in den Umbaumaßnahmen gezeigt habe. Ja sieht furchtbar aus, ist es aber eigentlich gar nicht. Gute Elektriker blicken da ohne weiteres durch.

Wenn die Loxone Komponenten verbaut wurden, kriegt man von Loxone zertifizierten Elektrikern einen ausführlichen Plan, an welchem Ein-Ausgang was genau dran hängt. Von anderen Elektrikern kriegt man dies nur bedingt oder gar nicht, dann heißt es suchen 😂, so wie ich das machen musste. Wie ich das gemacht habe, gibt es in einem anderen Post 😉

Programm zum Programmieren

Für die Programmierung verwendet man bei Loxone die Software "Loxone Config". Diese Software ist komplett Kostenlos und deckt auch alle Loxone und einigen anderen Komponenten ab. Man kann sich auch mit der Loxone Programmierung auseinandersetzen ohne das man einen Miniserver hat. Einfach drauf los Programmieren und schauen was passiert. In der Loxone Config gibt es eine Simulation, in der man die meisten Features ausprobieren kann.

Wenn Ihr die Loxone Config das erste Mal startet wird es so in etwa aussehen:

 


Auch wenn es mehr so ein Punkt mitten drin ist, fangen wir mit dem Peripherie-Baum an. Dieser wiederspiegelt alle Komponenten die uns zur Verfügung stehen. Miniserver, Benutzer, Benutzergruppen, Kategorien, Räume, Eingänge, Ausgänge, Virtuelle Komponenten, KNX, Mitteilungen... etc. pp.
Was auch immer Ihr in eurem Programm benötigt, beschafft Ihr euch da her.

Die Menüleiste oben passt sich dem an, was Ihr gerade im Peripherie-Baum ausgewählt habt. Selektiert ihr, wie ich in dem Bild, den Miniserver, dann habt ihr oben an dem Menü noch den Punkt Miniserver. In dem dazugehörigen Untermenü erscheinen dann Features, die man für den ausgewählten Punkt hat (siehe Bild -> "Miniserver" neben "Diagnose").

Das Eigenschaften Fenster ermöglicht euch das detaillierte Konfigurieren, der Komponente die Ihr gerade ausgewählt habt. Darin könnt Ihr bspw. festlegen wie das Teil heißt, ob es in der Visualisierung (Handy-App, Internet-Browser, etc.) angezeigt werden soll, wer es in der Visualisierung sehen darf und alles was eine Komponente sonst noch für Eigenschaften haben kann.

So genug gefaselt, wie geht das jetzt? Moment, erst mal kommt noch schnell die Visualisierung.

Visualisierung

Die Visualisierung ist das, was wir von unserer Programmierung in unserem Smartphone/Tablet App bzw. unserem Browser Fenster sehen.

Hier greifen auch viele die KNX benutzen auf Loxone zurück und verwenden die Visualisierung daraus, da diese nun mal wirklich sehr schön ist.

Um ein Baustein in der Visualisierung anzuzeigen muss man lediglich im Fenster Eigenschaften einen Haken setzen.

Visualisierung Loxone

Bei einigen Bausteinen ist dieser Haken schon vorausgewählt, da man davon ausgeht, dass diese angezeigt werden sollen. Bei einer Licht-, Rolladen oder Heizungssteuerung ist das durchaus sinnvoll.

Das [startCode]Visualisierungskennwort[endCode] ist ein zusätzliches Passwort das man wählen kann, wenn man diese Komponente verändern möchte.

Bei [startCode]Erlaubte Benutzer lokal[endCode] ist die Benutzergruppe gemeint, die sich im häuslichen Wlan befindet. [startCode]Erlaubte Benutzer Internet[endCode] sind die gemeint, die sich über das Internet mit dem Loxone Miniserver verbinden.

Um sich aus dem Internet mit dem Miniserver zu verbinden ist eine Portfreigabe im Router notwendig. An dieser Stelle möchte ich darauf hinweisen, dass wenn es jemand schafft euer Passwort herauszufinden, könnte er alles in eurem Haus steuern, auch das öffnen der Tür ist möglich, wenn man dies Technisch vorgesehen und aus dem Internet erlaubt.

Auf das Anlegen und Verwalten von Benutzergruppen, gehe ich später näher drauf ein.

In der Visualisierung kann man zwischen zwei Reitern wählen: [startCode]Räume[endCode] und [startCode]Kategorie[endCode]. In den meisten Fällen findet man viele Komponenten in beiden Reitern. Das Deckenlicht im Schlafzimmer ist sowohl in dem Raum [startCode]Schlafzimmer[endCode] als auch in der Kategorie [startCode]Beleuchtung zu finden[endCode].

In der Loxone Visualisierung gibt es noch einen Favoriten Punkt, dem man Einstellen kann, das dieser als Startbildschirm erscheint, was ich als sehr sinnvoll erachte. Öffnet man die App, verwendet man bestimmte Komponenten häufiger als andere. Dies kann man mit "Als Favorit anzeigen" erreichen. Die Bewertung darüber ist dafür da um die Sortierung umstellen zu können, ob die Komponenten nach ihrer Benennung sortiert werden oder ob diese Bewertung dafür verwendet werden kann.

Das Programmieren

Wie ihr oben in dem Bild sehen könnt, gibt es Digitale Ein- und Ausgänge. An den Digitalen Eingängen hat man in der Regel die Taster des Hauses und an den Digitalen Ausgängen die Geräte die geschaltet werden sollen (bspw. Lampen, Stellventile, Rolladen, Steckdosen)

Seite einrichten

Jetzt klicken wir am unteren Rand des rechten Fensters auf [startCode]Seite[endCode] und sehen: Die Seite ist leer 😝

Ein- Ausgänge

Als nächstes ziehen wir von Links aus dem Peripherie-Baum sowohl den [startCode]Eingang 1[endCode] als auch den [startCode]Aktor (Relais) 1[endCode] in diese Seite in dem wir sie nacheinander anklicken und in unserer neuen Seite los lassen.

Um das ganze besser zu verstehen, gebt Ihr den beiden Komponenten erst mal vernünftige Namen. Dazu wählt Ihr die jeweilige Komponente aus und tragt in das Feld [startCode]Bezeichnung[endCode] im Eigenschaften-Fenster etwas ein, mit dem Ihr die Komponente auch im späteren Verlauf wiedererkennt.

Kurze Anmerkung an dieser Stelle, solltet Ihr die Programmierung anderer sehen, werdet Ihr u.U. feststellen, dass andere hier sehr kryptische Bezeichnungen hinterlegen sowas wie: [startCode]T EG Kü OL[endCode] für : [startCode]Taster Erdgeschoss Küche Oben Links[endCode]. Das hat den Vorteil, dass man besser in dem [startCode]Suchen[endCode] Feld danach suchen kann. Kann man machen und ist empfehlenswert, muss man aber nicht. Dadurch wird die Programmierung etwas kryptisch und für jemanden der das nicht gewohnt ist schnell unübersichtlich. Solltet Ihr das tun, könnt ihr das Feld [startCode]Beschreibung[endCode] dafür verwenden um den Text zu bestimmen, der in Apps und im Browser (Visualisierung) angezeigt werden soll.

Jetzt kann man sich schon ausmalen. Drückt man die Taste der Küche, erkennt unser Programm das und der grüne Punkt des Tasters kriegt einen anderen "Zustand". Wir haben durch das Drücken nämlich den Schaltkreis geschlossen und darauf möchten wir im weiteren Verlauf reagieren. Der grüne Punkt ist dann sozusagen "an" für die Zeit wo die Taste gedrückt wird.

Der orange Punkt an der Lampen-Komponenten ist für unser Programm die Stelle die entgegen nimmt was der Aktor für einen "Zustand" kriegen soll. Ist dort etwas verbunden, dass "an" ist, dann geht in unserem Falle die Lampe an, geht das verbundene "aus", geht auch die Lampe aus.

Die Verbindung

Wie [startCode]An[endCode], wie [startCode]Aus[endCode] fragt Ihr euch vielleicht?

Kurzes Beispiel: Klickt auf den grünen Punkt des Tasters und zieht ihn rüber zu der Lampen-Komponente. Das Ergebnis müsste dann so aussehen:


Ich möchte kurz anmerken, dass dies eigentlich keinen Sinn macht, sondern nur der Demonstration dient!

Jetzt habt ihr den Taster direkt mit eurer Lampe "verknüpft". Würdet ihr das jetzt in euren Miniserver laden, würde die Lampe immer dann angehen, wenn die Taste gedrückt wird und wieder aus gehen, sobald Ihr die Taste wieder los lasst.

Dies kann man auch einfach mal Testen, auch ohne es auf den Miniserver zu übertragen oder wenn Ihr noch keinen Miniserver habt. Dazu einfach mal oben auf [startCode]Test[endCode] und dann auf [startCode]Simulation Starten[endCode] klicken. Jetzt hat sich der Taster etwas verändert und sieht so aus:

Dieser neu erschienene graue Punkt kann jetzt angeklickt werden und wenn dieser angeklickt wird, sehen wir, dass sich der "Zustand" ändert und dieser die Lampen-Komponente beeinflusst.

Damit habt Ihr jetzt simuliert, dass jemand den Taster gedrückt hat. Es ist nicht wirklich passiert, somit geht auch keine Lampe an, aber in eurem Programm könnt ihr so nach verfolgen, was passiert oder passieren würde.

Das was wir da Programmiert haben, wird keinem in irgend einer Form nutzen, da ständig jemand am Taster stehen bleiben müsste um die Lampe an zu behalten 😂.

 Licht machen

So jetzt Butter bei die Fische...

Nun fügen wir in unsere Seite mal unseren ersten Baustein ein.

Dazu drücken wir die Taste [startCode]F5[endCode]. Jetzt müsste sich folgendes Suchfeld geöffnet haben:

 

In diesem Suchfeld findet man so ziemlich alles was wir neu in unser Programm einfügen können. Komponenten, Bausteine, Bedingungen und auch Mathematische Komponenten zum rechnen befinden sich darin.

Wenn wir jetzt einfach etwas in dieses Feld eintippen filtern wir nach der Komponente die wir haben wollen. In unserem Falle suchen wir jetzt nach der [startCode]Lichtsteuerung[endCode].

Alternativ kann man auch das Menü verwenden um eine Lichtsteuerung (oder andere Komponenten) einzufügen: (am oberen Bildschirmrand) [startCode]Mein Projekt -> Baustein einfügen -> Tasten und Schalten -> Lichtsteuerung[endCode]


Durch einen Klick auf der Rechten hälfte bzw. auf die Komponente Lichtsteuerung können wir sie auf unserer Seite positionieren. Legt die Komponente einfach mal auf der Seite ab.
Bei mir sieht das jetzt so aus:

Wenn ihr weitere Infos zu den Loxone Komponenten haben wollt, könnt Ihr euch diese durch einen Klick auf das [startCode]i[endCode] in der Komponente aufrufen.

Jetzt klicken wir einmal auf den grünen Punkt am Taster oder auf den orangen Punkt an der Lampe um die Verbindung zwischen den beiden zu trennen.

Jetzt klicken wir in der Lichtsteuerung auf das grau hinterlegte Plus (+) Symbol unten auf der linken Seite und öffnen die Palette an Eingängen die diese Komponente hat und setzen einen Haken bei [startCode]I1[endCode] und schließen diese Palette wieder.

Jetzt müsste unsere Seite in etwa so aussehen:

Anschließend verbinden wir alles miteinander. Der grüne Punkt vom Taster wird jetzt angeklickt und zu dem Orangen Punkt [startCode]I1[endCode] an der Lichtsteuerung gezogen und der grüne Punkt [startCode]AQ1[endCode] wird mit der Lampe verbunden. Das Ergebnis sollte jetzt so aussehen:

Es ist egal von wo nach wo man zieht. Man kann sowohl den orangen Punkt zum grünen als auch umgekehrt ziehen. Man kann nur keine gleichen Farben miteinander verbinden, weil sie die gleiche Funktion (Eingang oder Ausgang) erfüllen.

Die Simulation (Test -> Simulation starten) lässt uns jetzt wieder ausprobieren ob es tatsächlich funktioniert.

Mehrfachbelegung der Lichtsteuerung

Die Lichtsteuerung erfüllt noch einige weitere Funktionen. Bspw. kann man mehrere Taster und Lampen damit verbinden. Bei uns im Maxime 1000D haben wir eine offene Küche mit Wohn- und Esszimmer, somit hatte ich meine Anfangskonfiguration so:

Dies ist eine Direktschaltung. Wird [startCode]Taster Küche[endCode] gedrückt, schaltet dieser die [startCode]Lampe Küche[endCode] ein. Gleiches passiert für das Esszimmer und das Wohnzimmer.

Durch einen Doppelklick auf einen der drei Taster können alle lampen ausgeschaltet werden.

 Benutzer und Benutzergruppen

Wenn man im Peripheriebaum den Punkt [startCode]Benutzer[endCode] anwählt, dann erscheinen Oben in der Menüleiste die beiden Punkte. Mit diesen Buttons in der Menüleiste kann man neue Benutzer und Benutzergruppen anlegen.

Legt euch vernünftig klingende Benutzergruppen an. Überall [startCode]Alle[endCode] drin stehen zu haben macht zwar anfangs keine großen Probleme, aber sollte bedacht werden. Wenn ein Kind das Smartphone verliert und jemand damit dann die Tür öffnen kann, weil der finder vor eurem Haus steht, ist ebenfalls gefährlich.

Bei den Benutzergruppen empfiehlt es sich, von sehr großen Gruppen (bspw. [startCode]Alle[endCode]) immer kleiner werdende Gruppen zu erstellen.

  1. [startCode]Alle[endCode] -> Enthält auch einen Gastzugang
  2. [startCode]Familie und Tablets[endCode] -> Keine Gäste
  3. [startCode]Familie[endCode] -> Keine Gäste und keine Tablets (die ggf. im Flur hängen)
  4. [startCode]Eltern[endCode] -> Keine Gäste, Tablets und Kinder
  5. [startCode]Tablets[endCode] -> Nur Tablets
  6. [startCode]Administrator[endCode] -> Nur die/der Chefin/Chef des Hauses 😉
  7. [startCode]Niemand[endCode] -> Wenn man es aus dem Internet nicht erlauben möchte ist diese Gruppe wichtig.

Dies sind nur Vorschläge und sollen keine vollständige Liste darstellen. Vielleicht möchte man noch zusätzliche Gruppen für Kinder, Nachbarn oder Großeltern.

Bezeichnung und Passwort sind Primär wichtig bei der Anlage eines neuen Benutzers. Möchte man ihm direkt die Sortierung nach Favoriten einstellen, kann man das bei [startCode]Sortierung für Favoriten[endCode] schon mal vorauswählen.

Bei [startCode]Authentifizierung bearbeiten [endCode] kann man einen iButton hinterlegen, mit dem man bspw. die Tür öffnen kann.

Bei der [startCode]Gruppenzugehörigkeit[endCode] kann man dann noch wählen in welcher Gruppe dieser Benutzer sich befinden soll.

Wählt man die Benutzergruppe aus, so kann man dort konfigurieren ob dieser auf die [startCode]Webseiten/Apps[endCode] (Visualisierung), [startCode]Loxone Config[endCode] (Programmiersoftware), FTP oder Telnet zugreifen darf. In den Schaltzeiten kann man hinterlegen zu welchen Zeiten dieser Benutzer Berechtigungen erhält.

Mit dem Baustein [startCode]Berechtigung[endCode] kann man überprüfen ob ein Benutzer eine bestimmte Aktion gerade durchführen kann.