OH + Lokales Smarthome auf Himbeere für Anfänger ein Reisebericht

  • Moin,


    Da es immer wieder die gleichen Fragen gibt, möchte ich gerne einen Reisebericht erstellen.

    Dabei werde ich nicht "das Rad" neu erfinden und auch nicht "DEN einzig wahren Weg" skizzieren. Ich nehme alle Interessierten mit auf meine Reise. Ich werde hier diese Reise ein zweites Mal unternehmen, da ich mir eine zweite Beere bestellt habe und diesmal mit der "Minimal-Aufwand-Laien-Brille" eine zweite Installation machen will.

    Das Reise-(Fern-)Ziel ist mir dabei bekannt, und ich habe mich auch schon für ein Transportmittel entschieden

    Fernziel:

    Weiterbetrieb von Livisi nach dem 01.03.2024 mit Alexa und Zugriff von Unterwegs, sowie Push-Nachrichten bei definierten Ereignissen.

    [Wer sein Lokales SmartHome ohne Alexa, ohne Steuerung von Unterwegs und ohne Push-Nachrichten weiter nutzen möchte, sich sozusagen mit "Urlaub zu Hause" wohl fühlt, der ließt bitte nur ab dem Stern *.

    Wer zusätzlich nur noch Zugriff von unterwegs benötigt sollte sich über Möglichkeiten einer VPN-Einrichtung z.B. per Router informieren]


    Hinweis: dies wird eine Reise als Pauschal-Tourist. Ich werde fast alles in der "Main-UI" zusammenklicken. Auf Code wird so lange verzichtet, bis ich keine andere Möglichkeit kenne. Wer also gerne den Rucksack voller .file-Dateien hat wird hier nicht auf seine Kosten kommen. Das heißt nicht, dass ich glaube dies sei der "bessere", "schönere", "sinnvollere" oder "flexiblere" Weg (ganz im Gegenteil) er ist nur für mich der bequemste Weg, auch wenn ich dafür auf die unvergesslichen Highlights einer Rucksack-Reise verzichten muss😉 nicht umsonst heißt es "full example" wenn Beispiele mittels Code-Schnipsel gegeben werden🫣


    Transportmittel:

    Raspberry Pi 4


    Erster Schritt war jetzt erstmal das Transportmittel zu organisieren.

    Da die Verfügbarkeit derzeit eher bescheiden ausfällt, reichte mir ein RasPi4 mit 2 GB. Die 8GB Version wird derzeit kaum unterstützt und ist somit für mich derzeit nicht interessant.

    Später sollte sich zeigen, dass 2GB völlig ausreichend für das Erreichen meines Fernziels ist.

    Ich habe das hier bestellt (ist immer wieder Mal verfügbar):


    Raspberry Pi 4 Computer Modell B, 2GB Elementary Kit


    Da Gehäuse eine Sache des pers. Geschmacks ist, kann sich da jeder frei ausleben, ich z.b. mag "meinen" Openhab-Layer:


    DIY-openHAB-Layer für SHC 2.0


    Wer praktischer denkt, nimmt ein Voll-alu-case das hält schön cool😉


    Wie bei jeder Reise suchte ich mir erstmal Informationen über mögliche Attraktionen am Zielort, von Leuten, die schon Mal da waren (Reiseführer):

    Himbeer-Systeme - How To 4 Dummies


    Als nächstes habe ich mich für eine grundsätzliche Route entschieden (weshalb dieser Bericht ja auch unter OpenHAB steht)


    Also Tipps befolgt und nach der Bestellung der Beere gleich Mal hier den Einstieg gefunden:


    OPENHAB SERIE: TEIL 1 - OPENHAB EINFÜHRUNG - YOUTUBE


    Besonders Teil 2 ist interessant fürs "Doing":


    OPENHAB SERIE: TEIL 2 OPENHABIAN AUF RASPBERRY PI 3 INSTALLIEREN


    Also hier schon Mal das aktuellste Image (die 32bit Version) runtergeladen:


    github.com/openhab/openhabian/releases


    und ein bisschen eingelesen:


    openhab.org/docs/installation/openhabian.html


    Demzufolge ne gute Micro-SD mit Adapter besorgt...

    Hier gehen die Empfehlungen etwas auseinander:

    OpenHAB empfiehlt eine Karte mit dem Zusatz "Endurance" (z.b. "SanDisk MAX ENDURANCE" oder "Kingston High Endurance) da diese Karten mehr Schreibzyklen "überleben.)


    Marco aus dem "app and home video" empfiehlt "SanDisk extreme" oder "Intenso professional".


    "SanDisk Ultra" wird oft mit dem Pi verkauft.


    Ich habe mich bei meiner ersten Installation für die SanDisk MAX ENDURANCE (bin halt ästhetisch veranlagt) entschieden wobei ich leider keine 16GB gefunden habe. 32GB ist halt ein bissel groß... Aber was solls...

    Für diese zweite Reise, nehm ich Mal die 16GB Intenso Professional...


    ... Und den Etcher runtergeladen:


    balena.io/etcher/


    Und dann schon Mal bei Tupper etwas vorgelesen:


    shc mit openhab 3 in die cloud bringen myopenhab und alexa anfängerguide

    [Hier bitte beachten, dass Tupper nicht auf einem Raspi aufsetzt und noch das alte Innogy-Binding nutzt. Nichts desto trotz gibt es viele relevante Teile des Posts]


    Und auf die Lieferung des Raspi gewartet....

    [...Ich bin derzeit im Urlaub, weshalb der Raspi beim Nachbarn auf mich wartet🙈... So lange.... Es gibt immer was zu tun...:]


    *

    Um das Fernziel zu erreichen, spielt die Arbeit die von Livisi in den vergangenen (und hoffentlich auch zukünftigen) Monaten geleistet wurde eine nicht unwesentliche Rolle. Also schauen wir doch Mal, was da so in der Einführung steht:


    community.livisi.de/lsh-de/


    Schnell findet sich dort auch ganz am Ende der Link zur Erklärung, was den zur Aktivierung notwendig ist:


    community.livisi.de/lsh-howto-de/


    Stand Heute (30.07.2022) können alle Besitzer einer SHC 2.0 das Update durchführen und das Lokale SmartHome schon Mal aktivieren.

    Und wenn man für diese Nutzer die Anleitung Mal komprimieren möchte, dann reduziert es sich auf:


    0.: (Empfehlung): die IP Adresse des SHC im Router fixieren ("...immer mit der selben IP anmelden")


    1.:in der App: Update starten => warten


    2.: In der App: unter "Einstellungen/Allgemein/Lokales Smarthome" das Lokale SH aktivieren => App schließen


    3.: Im Browser: die IP des SHC oder "SHCONTROLLER01" eingeben (wenn man immer nur diese eine Zentrale hatte sonst mit "SHCONTROLLER02" => "SHCONTROLLER03" usw. Den richtigen finden.


    4.: Den PIN vom Aufkleber am Boden als Passwort eingeben


    5.: Den PIN vom Aufkleber nochmal eingeben zur Bestätigung des ein eigenen PSW das in die Felder darunter kommt und die ganzen AGB bestätigen.


    Fertig ab jetzt ist die Zentrale im Heimnetz unter ihrer IP bzw. mit Eingabe von SHCONTROLLER01[2,3...] Aus einem Browser heraus erreichbar.


    Prima, jetzt kann man ja schon Mal ein wenig mit dem lokalen SmartHome Herumexperimentieren, sich ne Verknüpfung auf den Homescreen erstellen und die Menüs und Unterschiede erkunden.....


    Seit Heute (31.07.22) im Rollout: Für die Nutzer der Klassik-Zentrale ist der Vorgang im Grunde gleich, lediglich wird statt der PIN die Seriennummer vom Aufkleber der Zentrale ohne "SN" und ohne Leerzeichen eingegeben.

    Der DNS-Name ist SMARTHOME01[2,3...] Wenn man nicht per IP-Adresse I'm Browser bzw. Nicht mit fester IP arbeiten mag/kann.


    [Wer sein SmartHome ohne Alexa, ohne Steuerung von Unterwegs und ohne Push-Nachrichten weiter nutzen möchte, sich sozusagen mit "Urlaub zu Hause" wohl fühlt, der hat sein Ziel jetzt schon erreicht.


    Wer zusätzlich nur noch Zugriff von unterwegs benötigt sollte sich über Möglichkeiten einer VPN-Einrichtung z.B. per Router informieren]


    Wieder zu Hause, Raspi abgeholt, in ein noch vorhandenes Geekworm P171 (Alugehause) verfrachtet und neue SD Card geflasht. Nach dem Flashen (so wie bei Marco von Appandhome erklärt) die SD in den Slot, Lan-Stecker rein, und Power auf den Pi....

    Now openhaspian is doing it's ✨ magic✨...

    Da ich keinen Monitor habe und sowieso fast alles vom Handy aus mache reicht es mir, in meiner Fritzbox die IP-Adresse rauszufinden

    Ich empfehle diese ebenso wie den SHC auf "immer die selbe IP verwenden" zu setzen.


    und diese im Browser einzugeben, um zu sehen, was da nun passiert:

    Nun kann ich z.b. Abendessen gehen.... Irgendwann ist die Seite nicht mehr erreichbar, dann erweitere ich die IP-Adresse um den Zusatz ":8080" und erhalte den Startbildschirm von openHAB:

    Ich denke mir einen Nutzernamen und ein Passwort aus und schon kommt das Setup...


    Das ist bei Tupper soweit beschrieben, einzig das Binding bitte nicht mehr das Innogy nutzen, sondern das Livisi!

    Beim ersten Start wir man aufgefordert, ein Administratorpasswort zu erstellen. Ist das getan geht es ans Setup, wo noch das Land und die Position hinterlegt werden. Im letzten Schritt wird man direkt gefragt, welche Add-Ons man installieren möchte. Diesen Schritt können wir vorerst überspringen.


    Nach der Begrüßung in openHAB begeben wir uns erst einmal in die Einstellungen. Unter Ephemeris hinterlegen wir noch schnell unseren Standort, um auch die entsprechenden Feiertage im Zugriff zu haben.


    Nun begeben wir uns an die Bindings, wo wir anfangen unsere SHC mit openHAB zu koppeln.

    Dazu öffnen wir unter den Add-ons die Bindings und blicken unten rechts auf die Suche.

    Hier suchen wir nun nach "Livisi" und installieren das "Livisi- SmartHome" Binding.


    Wie in der Beschreibung des Bindings beschrieben, ist die SHC (Bridge) das einzige Thing, das nicht automatisch gefunden wird.

    Es muss also händisch hinzugefügt werden


    Dafür braucht es dann auch keine Authentifizierung mehr vom Server wie vom alten innogy-Binding, sondern nur die IP der SHC und das im SHC per Browser selbstvergeben Passwort (siehe Punkt 5 oben):

    Ich verzichte diesmal darauf, eine Namenskonvention zu benutzen und übernehme einfach stumpf alles wie vorausgefüllt ..


    Dann sollten wir schon Mal

    Diese Anzeige bei Things haben:

    Sollte Mal etwas während des Setup nicht so laufen wie geplant, es "hängt etwas" oder geht nicht weiter dann empfiehlt sich ein Neustart des Raspi aber bitte beachten: ein hartes "Strom-aus/an" kann mit einem Totalverlust der Installation Enden! Ist an diesem Punkt nicht so schlimm, haben ja noch nix wirklich gemacht aber später sollte der Raspi kontrolliert heruntergefahren/neu gestartet werden. Unter Anderem dafür nutze ich die App

    "RaspController" in der Pro Version. Geht natürlich auch über die Konsole mit den richtigen Befehlen😉


    Soweit, so gut... Die Reise hat begonnen und es gibt vieles zu entdecken zunächst einmal befolge ich nun weiter die Anleitung von Tupper

    Hier weiche ich etwas ab, lasse die Inbox weg und übernehme alle mit dem kleinen unscheinbaren Link zwischen den "Discovered Things" und "Add Manually":


    Oh je, es gibt hier eine 10k Zeichen Grenze deshalb geht es Hier weiter

  • Da wir ja mit dem Focus des "Laien" unterwegs sind, übernehme ich alle "Things" so wie gefunden und ändere auch keine Namen.

    Das fällt mir zugegebener Maßen etwas schwer, da ich schon gerne etwas "Ordnung" in der Benamsung (Label) habe. Bei den Things ist es auch ohne Probleme möglich noch nach Anlage das Label zu ändern bei den bösen Items leider nicht!


    An dieser Stelle vlt. ein Ausflug zum Thema Dinge (Things) und Teile (Items) [mein Verständnis]:

    Things sind auf unserer Reise so zusagen echte Hardware also ein Thermostat, ein Zwischenstecker, ein Fensterkontakt....

    Hier bilden die Zustände bei Livisi imho eine Ausnahme da auch sie als "VariableActuator-Thing" eigentlich "Software" in der SHC sind aber für openHAB eben ein Thing. Things sind also die "Schnittstelle" zu der unser openHAB spricht und die es liest. Später kann man z.b. ein Livisi-Thermostat "Thing" gegen ein Homatic-Thermostat "Thing" tauschen ohne dass an der openHAB Visualisierung/Logik/Steuerung Änderungen nötig sind! Warum? Tja da kommen nun die Items und die "Channels" der Things ins Spiel.


    Bevor wir uns mit Items beschäftigen, noch ganz kurz der Hinweis: dem aufmerksamen Hue/Netatmo/Medion- Nutzer wird nicht entgangen sein, dass diese Teilchen (bis auf die Medion-Zwischenstecker) nicht unter den entdeckten (discovered) Things zu finden sind. Das ist aus meiner Sicht aber kein Nachteil sondern eher das Gegenteil: Livisi weißt ausdrücklich darauf hin, dass sich die Schnittstellen zu Teilnehmern wie Netatmo/Hue .... Nach Abschalten der Cloud-Dienste 2024 noch ändern können und diese dann nicht mehr funktionsfähig im lokalen Smart Home sind. Da freuen wir uns doch einfach, dass wenn dies passiert, wir alles schön in openHAB angebunden haben und der Hue es egal ist, ob sie von Livisi, Alexa, openHAB oder mit der Hue-App bedient wird! Heißt aber auch, die entsprechenden Bindings installieren ...


    So nun zu den Items:

    Items stellen sozusagen die openHAB-internen Behälter (Variablen) für Informationen (Werte) dar. Alles was innerhalb von openHAB dargestellt, geschaltet oder ausgewertet wird, wird mit den Items veranstaltet. Beispiel: ein "Livisi-RST-Thing" (also das übliche Heizkörperthermostat -Ding ) stellt in seiner "Thing-Schnittstelle" mehrere Kanäle (Channel) bereit (Isttemperatur, Solltemperatur, Feuchte, Betriebsmodus.....) An jeden dieser Channels kann nun ein Item angebunden (verlinkt) werden. Das Item der Isttemperatur enthält dann den Wert, den es vom SHC von diesem Channel übermittelt bekommt. Das Item (also der Wert) kann dann über eine Anzeigefunktion auf einer Seite (Page) angezeigt werden, es kann ein "Szenario" (Regel/Rule) auslösen (triggern) es kann als Diagramm dargestellt werden....


    Andersrum kann der Wert des Item für die Solltemperatur in openHAB von einem "Szenario" (Regel/Rule), von einem Schieberegler oder von einer anderen externen Quelle geändert werden, über die Verlinkung des Item mit dem Sollwert-Channel des Livisi-RST-Dings wird dieser interne Wert des Items dann an die SHC übertragen.


    Wir könnten sozusagen eine komplette Hausautomatisierung in openHAB einrichten ohne auch nur ein Stück Hardware wirklich zu besitzen nur mit Items .... (Dashboards, Sitemaps usw...) Die Ist-Werte wären zwar erstmal sinnlos (Analogwerte Null, Schalter aus, ....) Und die Aktoren (Schalter) würden logischerweise nichts wirklich Schalten, aber es wäre schon Mal alles da...


    Erst wenn die Items verlinkt werden, übernehmen sie die Werte des Channels oder übergeben welche an diesen.

    Das stellt so eine Art Rangierbahnhof bereit, der die richtigen internen Informationen mit dem richtigen Datenpunkt im externen Gerät verbindet.... Tauschen wir nun das externe Gerät gegen ein ähnliches von einem anderen Anbieter (klar müssen wir dann auch die zugehörige Bridge (Zentrale/ZigBee/sonstwas haben)) dann verlinken wir einfach die vorhandenen Items an die entsprechenden Channels des neuen Thing und fertig....


    Puh das hört sich irgendwie umständlich an, ist es aber nicht. Und zum Glück bietet openHAB auch eine elegante Möglichkeiten, Items automatisch aus Things zu erstellen.

    Dazu später mehr...


    Kommen wir zurück zu den Things, nach dem von Tupper beschriebenen "add All" hat das ✨ magic ✨ von openHAB nun 67 Things angelegt:


    Da alleine 18 davon bei mir vom Typ "VariableActuator" sind und einer die Zentrale wisst ihr jetzt alle, dass ich derzeit 48 Livisi-Teilchen bei mir im Einsatz habe🙈. (Keine Angst im Keller schlummern noch ein paar Kisten mit Plänen)

    Schauen wir uns nun doch Mal an, was es da so gibt in der Reihenfolge der von mir empfundenen Häufigkeit/Wichtigkeit:


    VariableActuator:

    Das sind die altbekannten Zustände, die ich in der Livisi- Zentrale definiert habe. Diese Things sind für mich sehr wichtig, da sie mich einerseits in die Lage versetzen, Szenarien in gewohnter Weise bequem in Livisi zu schreiben und Ergebnisse in openHAB zu nutzen um z.b. Rules damit anzustoßen Andererseits kann ich auch Szenarien in Livisi damit auslösen usw.

    Das wird besonders wichtig, um Push-Nachrichten die bisher von Livisi kamen in openHAB auszulösen.

    Öffnen wir ein solches Thing, dann sehen wir 3 Reiter mich interessiert dabei am meisten der 2.:Channels:

    Dort kann man erkennen, dass ein Thing vom Typ VariableActuator genau einen Channel hat welcher vom Typ Schalter (Switch) ist. Er kann also genau 2 erlaubte Zustände an ein verlinkten Item übergeben/von einem Item annehmen: an und aus.

    Klappen wir den Channel auf, dann könnten wir an dieser Stelle einfach ein Item verlinken dabei könnten wir auswählen zwischen einem vorhandenem oder einer Neuanlage eines Items.... Wir gucken Mal, ob das noch anders geht...


    PSS[O]:

    Sind unsere Zwischenstecker diese haben natürlich auch nur einen Channel vom Typ Switch.


    RST[2]:

    Die guten alten Heizkörperthermostate.... Hier haben wir nun Mal ein Thing mit wesentlich mehr Channels, wichtig ist auch die Checkbox "show advanced" zu beachten nur dann sind auch alle Channels zu sehen:


    In solch einem Fall muss man sich dann aber auch Mal überlegen, ob man alle diese Channel unbedingt braucht! Frost- und Schimmelwarnung zum Beispiel werde ich nicht verwenden, da ich zu blöd bin, diese zum Laufen zu bekommen🙈

    How ever: hier haben wir nun Mal ein Ding mit mehren Kanälen an jedem dieser Kanäle kann man ein oder mehrere Items anhängen🤔

    Außerdem sieht man hier weitere Channel-Typen zb. "Number" oder "String" Nummern (Number) sind Zahlenwerte inklusive Kommazahlen und können auch gleich noch eine Einheit "mitbringen" ohne Einheit sind es reine Zahlenwerte. Strings sind Zeichenketten also Im Prinzip "dummer" Text.

    Da fleißige Mitglieder an jedem Channel auch noch eine kurze Erklärung geschrieben haben kann man auch dort schon sehen, welche Zustände dieser Channel konkret übergibt/übernehmen kann.


    WRT:

    Das Raumthermostat, mit dem sich auf der Livisi-Seite mehrere RST in einem Raum zentral steuern lassen. Hat die gleichen Channel wie die RST.


    WDS:

    Tür und Fenster Kontakt. Mit 2 Channels: 1xSwitch für die Batteriewarnung und

    1x Contact für den Fensterkontakt...


    .....


    Das soll jetzt zum Reinkommen erstmal reichen

    Eine Auflistung aller unterstützten Things mit ihren Channels sind auch im Binding nach Aktivierung der Checkbox "more" zu finden:



    Also wir haben jetzt unser Transportmittel besorgt, vollgetankt, die neueste Karte ins Navi geladen und Zielkoordinaten eingegeben. Jetzt bleibt zu entscheiden, ob wir die kürzeste, die schnellste, oder die Landschaftlich schönste Strecke fahren wollen.


    Für den nächsten Schritt (Aufbau Modell) ist es wichtig, eine Vorstellung davon zu haben, wie die Bedienung per App in Sitemaps am Ende aussehen soll.


    Ich habe für mich persönlich entschieden, dass ich weder das HAB-Pannel noch irgendwelche Overview-Seiten, dash-boards oder sonstige Visualisierungen abgesehen von Sitemaps nutzen will.

    Es macht für mich einfach keinen Sinn, da ich kein Pannel irgendwo rumhängen habe und auch auf dem Tablet eher auf Sitemaps abfahre.

    Wer solche Sachen gerne haben mag, muss diesen Abstecher ohne mich machen😉


    Dies kann man aber auch jederzeit noch in beide Richtungen ändern denn hey: jeder ist Herr über seine Kiste, seine Zeit, seine Installation...


    Ich werde mich bemühen eine Sitemap zu erstellen, die in etwa die Bedienung in der Livisi-App auf den Punkten "Home" (also Gliederung nach Funktion) und "Geräte" (Gliederung nach Orten) ähnelt.


    Ich begebe mich nun im openHAB zu dem Menüpunkt "Einstellungen" => "Model" hier erwartet mich ein leerer Bildschirm und mir wird schon Mal erklärt, dass dies der Ort ist, an dem ich ein Abbild meines Zuhauses erstellen kann.


    Ich frage mich kurz, wie denn wohl hinterher meine Sitemap aussehen soll und entscheide mich einfach Mal los zu legen, in dem Wissen, dass man alles, jederzeit wieder umstecken kann (kostet dann halt wieder Arbeit und Gehirnschmalz)


    Mit dem "+" unten rechts geht die wilde Fahrt los und ich fange Mal an mein Haus/meine Wohnung ab zu bilden. Dazu lege ich erstmal nur "Locations" an, beginne beim "groben" und arbeite mich bis zu den Räumen vor.


    Als Erstes füge ich eine Location hinzu, die "Erdgeschoss" heißt (da ich das ja alles am Handy mache, muss ich mehrere Bilder machen und ganz unten zwischendurch unten scrollen, am PC ist es etwas komfortabler):




    Leider kann ich nicht immer über meinen Schatten springen und so habe ich nun doch den Namen mit L_EG gewählt ... Ich hätte auch nur "EG" oder "Erdgeschoss" wählen können, das spielt erstmal keine Rolle. Ich erzeuge mit der Aktion das erste item und da guck ich mir Mal genauer an, was da so für Dinge einstellbar sind:


    An dieser Stelle schlägt das 10k Zeichen Limit zu und weiter geht's am Baumhaus🫣

  • Name:

    Wie gesagt hier kann ein frei wählbarer Name vergeben werden. Dies ist der, wie oben erwähnt, feste interne Name des Items, nach dem Anlegen kann er nicht mehr geändert werden. Der item-Name (itemname) ist der interne Zugriffspunkt jeglicher openHAB Operationen. Deswegen darf jeder Name nur ein einziges Mal im ganzen System vorkommen (es kann nur Einen geben)

    Sollte ich die rote Warnung "an item with this name already exists" beim Eingeben unterhalb des Namens aus Versehen ignorieren, dann wird mein "altes" Item knallhart mit den Werten des Neuen überschrieben. Gerne verschwinden dannach auch mal Locations (s. weiter unten) 🙈.


    Label:

    Dies ist das Etikett des Items welches nach Außen sichtbar ist. Es ist jederzeit änderbar, wird im Model und später auch in der Sitemap als Menüpunkt angezeigt.


    Type:

    Der Typ des Items.... Es gibt jede Menge und auch noch Untertypen... Das soll mir bei Anlage einer Location aber noch egal sein und ich vertraue dem ✨ magic ✨ von openHAB, das "Group" schon passen wird. Im Übrigen kann man den Type auf dieser Reise auch meistens in Ruhe lassen.


    Category:

    Ist imho eigentlich nur dafür da, bei den Items ein hübsches Icon zu sehen. Eine Übersicht der mitgelieferten, anwählbaren Icons kann man HIER finden


    Semantic Class:

    Lass ich, analog Type, auch in Ruhe, hat wohl was mit dem zu tun, dass ich nicht nutzen will🫣

    Wenn alles richtig funktioniert hat, dann habe ich jetzt diesen Bildschirm:


    Unter dem Menüpunkt "Einstellungen" => "Items" kann ich mein erstes Item bestaunen😉


    Als Nächstes lege ich in gleicher Art ein Obergeschoss (Category: firstfloor) , ein Dachgeschoss (Category: attic) und einen Keller (Category: cellar) an. wichtig dabei ist, dass beim Klicken auf das "+"- Symbol keines der Anderen Locations markiert ist (kann man durch das kleine "clear" links unten erreichen). Wenn das trotzdem passiert ist, kann man das aber auch noch im Item selber "heilen" indem man dort die Parentgroup wieder abwählt (später mehr dazu). Nach dieser vielen Arbeit sieht mein Model dann so aus:



    Da mir die Reihenfolge so überhaupt nicht gefällt, ändere ich als nächstes die zuständigen "Metadaten" indem ich z.b. den Keller markiere und im Menü unten auf "Meta" klicke:



    Es öffnet sich ein Fenster mit den verfügbaren "Metadaten" (soll mir jetzt erstmal egal sein, was Metadaten genau sind) dort wähle ich für mein derzeitiges Vorhaben "Default Widget Order Index" und trage im popup "-1" ein weil ja Keller🙃. Beim Erdgeschoss trage ich eine "0" ein, beim Obergeschoss eine "1" ein und beim DG eine "2".

    Danach steht mein Haus also Kopf, aber ich mag diese Reihenfolge:



    (Wer es gerne andersherum hat kann ja sortieren wie er mag oder gar nicht...)


    Nun füge ich je Etage die Vorhandenen Räume hinzu. Dazu markiere ich die entsprechende Etage, z.b. Erdgeschoss, klicke unten rechts den Pfeil nach unten an um die Daten des "Erdgeschoss-Items" klein zu machen und da erscheint schon wieder mein "+"-Symbol. Kurzer Klick und ich kann wie gewohnt eine Location hinzufügen. (Ich mach dass am Handy, mag sein, dass es auf dem PC dieses verkleinern nicht braucht😉):



    Da ich das Erdgeschoss vorher markiert hatte, erzeuge ich eine Location "Wohnzimmer" (Category "Sofa") die danach der Location "Erdgeschoss" unterlagert ist. Die Gruppe Wohnzimmer ist also Teil(Menge) der Gruppe Erdgeschoss:



    Diese Beziehung ist sowohl im Item Wohnzimmer unter "Direct Parent Groups" als auch im Item Erdgeschoss unter "Direct Group Members" zu finden:


    Das Anlegen der Räume mach ich jetzt einfach Mal für alle Geschosse und Räume. Die Category wähle ich nach den mitgelieferten Icons passend aus (eigene Icons kann man auch hinzufügen, was ich pers. später nachhole).

    Diesmal sortiere ich auch direkt mittels des Order Index.

    Immer wieder passiert es mir, dass ich unachtsam werde und statt der Etage den zuletzt angelegten Raum markiert habe wenn ich auf "+" drücke.🙈

    Dadurch wird der neu angelegte Raum dummerweise Gruppenmitglied (Group Member) des zuvor angelegten Raumes:



    Das lässt sich aber schnell im Item berichtigen ich mach es gerne im "Member-Item" und dem Fall oben also im Kinderzimmer. Unter Einstellung/Items das Kinderzimmer markieren, den roten Stift oben in der Ecke oben rechts anklicken (öffnet den Item-Bearbeitungs-Modus) und dann unter "Group Membership" "Parent Groups" anklicken und das Schlafzimmer ab- und das Obergeschoss anwählen.

    Speichern per Diskettensymbol oben rechts nicht vergessen und schon ist der Fehler geheilt.

    [Leider kann ich in diesem Post keine zusätzlichen Bilder hochladen, aber ich glaube das kann man finden😉 wenn nicht, bitte nochmal melden]


    Da ich im Dachgeschoss nur einen Raum habe, laufe ich natürlich auch noch in diese Falle: ich will unter dem item "L_DG" ("Dachgeschoss") einen Raum Anlegen der "Büro" heißt und von der Category "office" ist. Im Überschwang weil alles gerade so gut flutscht, nenne ich dieses Item beim Anlegen ebenfalls "L_DG", übersehe die rote Warnung und drücke ab ... mir schläft das Gesicht ein weil plötzlich mein Dachgeschoss aus dem Model verschwunden ist. Kurze Panik, dann wird mir klar, wo ich gucken muss: unter Einstellungen=>Items finde ich mein L_DG was jetzt "Büro" heißt ein anderes Icon hat und sich selbst als Direct Parent Group zugeordnet ist🫣. Das beheben ich durch Zurückbenamsen des Labels in "Dachgeschoss", ändern der Category in attic und Löschung der Direct Parent Group.

    Ich beschließe im Anschluss, dass das DG keine Räume braucht🤣


    Wegen 10-Bilder-Limit geht es hier weiter

  • Hallo Manuel,

    großartiger Reisebericht. Deckt sich mit meinen Erfahrungen der letzten Tage. Ich habe mich durch die OpenHAB Doku anleiten lassen und mein Server steht.


    Zu deinen "Schmerzen" bei der Namensgebung... I absolutely feel u 🤗😎👊

    ...willkommen in Monkhausen... 🙈

  • ...

    Nachdem ich nun mein Haus im Model soweit "abgebildet" habe, steht mir der Sinn nach einer Belohnung. Sozusagen ein Eis auf die Hand im Schatten bei 35°C. Das bringt neuen Schwung in die Sache.


    Deshalb lege ich mir meine erste Sitemap an um Mal ein Gefühl dafür zu bekommen, wo die Reise hingeht.


    Ich öffne im Hauptmenü Einstellungen=>Pages und es erwartet mich die Nachricht, dass ich noch keine Seiten angelegt habe🙄.

    Schnell finde ich auch hier meinen Freund das "+"-Symbol und wähle dort "Create Sitemap".

    Sofort komme ich in den Bearbeitungsmodus und sehe eine einsame "New Sitemap" wenn ich sie anklicke, kann ich sie umbenennen und entscheide mich für "Mein Haus" (die ID lass ich der Faulheit halber wie sie ist) und speichere das Ganze erstmal (wie immer oben rechts):



    Danach kommt wieder das aus dem Semantic-Model bekannte Versteckspiel mit dem "+"-Symbol... Wenn ich es geschafft habe, mit markierter Sitemap "Mein Haus" das + zu erwischen, erwartet mich eine ziemlich große Auswahl:



    Ich entscheide mich einfach Mal für "Default".

    Dadurch brauche ich nix anderes im nächsten Schritt auszuwählen als ein Item. In der Seitemap sollten dann automatisch die am Item hinterlegten (Default) Werte für Icon Type und Name angezeigt werden.

    Im Dialog klicke ich einmal auf Item und dann such ich mein Keller-Item dass ich im Modell angelegt habe:



    Nach Auswahl und Bestätigen mit "Schließen" (oben rechts) gelange ich zurück zum Sitemap-Editor. Dort speichere ich wie immer mit dem Diskettensymbol oben rechts, markiere danach wieder die Sitemap "Mein Haus" und verkleinere unten die Eigenschaften um wieder an das "+"-Symbol zu kommen.


    Diese Schritte wiederhole ich mit "Erdgeschoss", "Obergeschoss" und "Dachgeschoss" und mein Editor sieht so aus:



    Phu, das war noch ein Bisschen Anstehen in der Prallen Sonne für das Eis...

    Nun will ich endlich ein Erfolgserlebnisse und kehre zurück zum Haupt-Menü (Übersicht die immer noch leer ist)

    Und betätige das lustige Symbol oben rechts:



    Eine Art Sitebar öffnet sich und ich wähle aus vielen interessanten Sachen (Guck ich mir irgendwann Mal alles in Ruhe an) die "Basic-UI" aus:



    Dort kann ich genau Einen Link anklicken (uicomponents_page_<ID der Page> ) und werde belohnt mit dem Anblick meiner Sitemap:



    Ich bin einigermaßen enttäuscht, und habe keine Erklärung dafür, warum die Icons nicht angezeigt werden, da ich aber gerade keine Lust auf ne Neustart des Systems habe und ich sowieso doch finde, dass der Keller irgendwie dort oben nicht hingehört, gehe ich nochmal flugs in den Sitemap Editor und trage die Icons (cellar,ground floor,firstfloor,attic) händisch ein 😑 außerdem nutze ich die kleinen Pfeile am Ende der Einstellungen um den Keller ans Ende zu befördern:



    Das war jetzt sowas wie Streusel beim Eis vergessen😢

    Zurück in der Seitemap gefällt mir das schon Mal besser und ich drück auf den Sitemap-Einträgen herum.... Stelle fest, das ich durch diese 4 Einträge in der Sitemap alle Räume erreichen und öffnen kann... aber alle Räume sind leer😢



    Das wird aber nicht mehr lange so bleiben, als nächstes werde ich nämlich im Model-Editor Items aus den Things direkt in den Räumen erstellen. Und das ✨ magic ✨ von openHAB wird sie automatisch in den Räumen der Seitemap anzeigen (wenn alles klappt🙈)

    Diese Sitemap ist übrigens auch dass, was man später bei Öffnen der App von Unterwegs sehen wird. Das sollte ich im Hinterkopf behalten.


    Am nächsten Morgen will ich doch nochmal der Icon-Sache nachgehen und außerdem wäre es ja doch ganz schön, wenn diese Aufteilung zo eine Art Überschrift oder Rahmen hätte wie "Geräte nach Ort". Deshalb mach ich einen Mini Abstecher in den sagenumwobenen "Code" 🫣


    Dorthin gelange ich ganz einfach, indem ich im Seiteneditor der Seitemap oben einfach Mal von "Design" auf "Code" wechsele:



    Was ich hier sehe ist ja nun nicht gerade Raketenwissenschaft 😁 ich kann erkennen, dass oben der Typ der Seite "Seitemap" steht die "Page" hat die von mir eben nicht geänderte ID und als Etikett (Label) wird "Mein Haus" angegeben. Danach kommt eine geschweifte Klammer auf. Dann kommen meine 4 Einträge auch wieder mit Typ (Default), Item (L_XY) und dem jeweiligen blöden Icon, dass ich gestern Abend aus Frust hinzugefügt habe. Das ganze endet mit einer geschweiften Klammer zu. Es scheint also zwischen zwei geschweiften Klammern immer sowas wie ein "Packet“ zu stehen (in diesem Fall die ganze Sitemap) dessen Einträge "zusammengeschnürt" sind.

    Ich entscheide mich doch Mal kurz Rum zu probieren und lösche (Einfach reinklicken und Löschtaste) die Einträge der Icons

    (icon=“grounfloor", icon=“firstfloor", icon=“attic" und icon=“cellar" dann Speicher ich, guck mir das Ergebniss in der Basic-UI an und jawohl alle Icons da ....

    [Durch ein bisschen rumprobieren finde ich tatsächlich einen Fehler (Bug) in der Main-UI (das ist das, wo ich mich die ganze Zeit hier herumtreiben) von openHAB:


    Die Icons werden nur nach Speichern im Code-Modus des Editors und dort auch nur nach Änderungen (Leerzeichen einfügen reicht schon) nicht aber beim Speichern im Design-Modus "gezogen" 🙈]


    So nun stehe ich vor dem Dilemma, dass ich einerseits den 4 Eintragen einen Rahmen (Frame) verpassen will, dies aber anscheinend im Designmodus nicht geht und andererseits meine Vorhaben ja war keinen Code zu nutzen.


    Es gibt 2 Auswege:

    1. Ich lösche alles nochmal, lege zuerst den Frame mit dem Label "Geräte nach Ort" an und füge die 4 Einträge wieder hinzu, wenn dieser Frame markiert ist.


    2. Ich ändere meine Sitemap im Code in dem ich vor den 4 Eintragen eine Zeile einfüge und nach den Eintragen ein geschweifte Klammer zu hinsetzen das Ganze sieht dann so aus:

    Code
    sitemap page_a9296d4180 label="Mein Haus" {
    Frame label="Geräte nach Ort" {
    Default item=L_EG
    Default item=L_OG
    Default item=L_DG
    Default item=L_KG
    }
    }


    Ich beende damit auch meinen Abstecher und begebe mich zurück zum Semantic Model denn jetzt geht der Spaß erst richtig los.


    ...nach der Nächsten 🐭(Bilderlimit erreicht)

  • ...

    Ich klicke mich durch bis zu meinem Raum "Gäste WC" (ist dann markiert ) und nach dem kurzen Versteckspiel drücke ich selbstbewusst das "+"-Symbol.

    Und schon habe ich die Qual der Wahl, entscheide mich für den bequemsten Weg und wähle "Create Equipment from Thing"

    Im nächsten Dialog "Add Items from Thing" wird mir die Parent Group angezeigt, der ich Items hinzufügen werde, weiter unten wird mir noch ein bisserl was erklärt und dann kann ich ein Thing auswählen. Na dann, ich klicke auf "Thing" und suche mir vom "WC" (hier sind die Räume aus Livisi in Klammern gesetzt, da ich ja faul war und "add all" genutzt habe beim Anlegen der Things) den WDS aus.


    Der Dialog ändert sich und sieht nun so aus:



    Ich orientiere mich nun Mal kurz.

    Unter "Source Thing" wird mir mein ausgewählter Fenster und Türsensor mit seinem schicken Label (den kann man jederzeit ändern), seiner ID und seinem Zustand (online) angezeigt, dann die kurze Erklärung die ich schon von gerade kenne und das Thing Auswahl-Feld.


    Darunter wird es jetzt wird's spannend: mir wird ein Name angeboten und ein Label. Das ist ein Vorschlag für die Benamsung des Items, dass ich gerade erstelle, der ✨ magic ✨ von OH. Bei genauerer Betrachtung stelle ich fest, dass als "Name" einfach Mal das Label des Source-Things ohne Leer- und Sonderzeichen vorgeschlagen wird, der Label-Vorschlag ist genau das Selbe wie beim Source-Thing.

    Mhm ich erinnere mich daran, dass ich den Item-Name nach Anlage nie wieder ändern kann und er überall in OH benutzt wird aber ich will ja simpel bleiben. Das Label mag ich gar nicht, ganz besonders, weil es später auf den Sitemaps auftaucht. Also ändere ich das schonmal in "Fenster Gäste WC.

    Als Category nehm ich einfach Mal "window"...


    Weiter unten werden nun die verfügbaren Channels des Things angezeigt hier einfach nur die Meldung, dass das Fenster offen/zu ist, und der Batteriestatus.

    Ich kann nun auswählen, ob ich nur bestimmte Chanel zur Gruppe (denn genau das erstelle ich gerade: eine Gruppe von Items die aus den ausgewählten Channels erstellt werden) im Model hinzufügen möchte.

    Ganz unten finde ich "Select All" und das nehm ich in diesem Fall auch.


    Sofort werden mir für jeden Chanel Vorschläge für Item-Name und -Label angezeigt, aber auch für die Types und Categorys.... (S.o.)

    Da das nachträglich zu Verwirrungen kommen kann, ändere ich zumindest die Label auf aussagekräftigere (indem ich den Ort mit angebe)

    "Zustand Fenster Gäste WC"

    "Batterie Fenstersensor Gäste WC"

    Danach speichere ich per Diskette oben rechts und lande wieder im Model.

    Dort kann ich nun auch das "Gäste WC" weiter aufklappen und finde darunter wieder eine Gruppe (die ich gerade angelegt habe) die Klappe ich nochmal auf und schon finde ich meine Beiden Items🙃.


    So jetzt schnell Eis Nachschub besorgen: Mal gucken, was mein Gäste WC in der Sitemap sagt...

    Ja sauber es gibt da jetzt ein "Fenster Gäste WC" und wenn ich das anklicke, dann seh ich auch den die Beiden Zustände des Fensters und der Batterie:



    Na das gefällt mir noch nicht so gut, ich hätte gerne den Schalter da weg und beim Zustand des Fensters vlt. auch noch Klartext statt nur des geöffneten Fenster Symbols....

    Jetzt geh ich aber erstmal das Fenster schließen...


    Das mit der Anzeige eines Zustandes des Items (beim Fenster also open/closed) ist ja noch relativ einfach. Dazu muss man am Ende des Labels lediglich [%s] einfügen... Keine Ahnung wie man das nennt aber das "s" steht zumindest für "String" also Text. Das ganze sagt der ✨ magic ✨ von OH auf jeden Fall, dass im Label der Zustand momentane Wert mit angezeigt werden soll:



    Soweit so gut, nun fräse ich mich durch einige

    Foren und probiere mittels Metadaten den Schalter weg zu bekommen... Erfolglos 🫣

    Ok, dann bleibt das halt erstmal so und ich widme mich nun dem nächsten Kandidaten in meinem Gäste WC: das Heizkörper-Thermostat.


    Ich markiere also erneut den Raum "Gäste WC" in meinem Model. Finde das "+"-Symbol und wähle erneut "Create Equipment from Thing" und suche als Thing den RST vom Gäste WC aus und kehre mit "Schließen" oben rechts zum "Add Items from Thing" zurück:



    Das Label der Gruppe ändere ich in "Heizung Gäste WC" und als Category wähle ich "radiator".

    Nach kurzem Blick auf alle Channels durch Klick auf die mir bekannte Checkbox "Show advanced" entscheide ich mich dafür erstmal nur die Standard-Channel auszuwählen (Soll- und Aktuelle Temperatur, Luftfeuchtigkeit und Batteriestatus)

    Schreibe jeweils "Gäste WC" am Ende des Labels hin und speichere ab.


    Mist das Label vom Batterie-Status sollte doch eher "Batterie Heizung Gäste WC" sein. Also das Mal schnell angeklickt, unten auf "Item" gewechselt und dort schnell das Label geändert.

    Jetzt sieht mein Model so aus:



    Der erste Blick auf die Sitemap ist auch toll:

    Im Raum Gäste WC ist nun auch die Heizung drinnen:



    Beim zweiten Blick Frage ich mich, wie ich die Solltemperatur ändern kann🫣


    So, nachdem ich jetzt jede Menge Lebenszeit damit verbracht habe, eine Lösung zu finden, muss ich an dieser Stelle leider feststellen, dass ich mit meinem Wissen hier in einer Sackgasse gelandet bin. Leider konnte mir bis jetzt niemand einen Weg aufzeigen, wie die Solltemperatur aus einem Gruppen-Item herraus in einer Sitemap als z.b. Slider oder auch Setpoint konfiguriert werden kann.

    Ich habe Stunden mit Versuchen verbracht und das Beste Ergebniss (eine Auswahlliste an möglichen Temperaturen) ist für mich unbefriedigend.

    Mir kommt das ✨ magic ✨ in diesem speziellen Punkt irgendwie nun doch wie die Prospektfotos einiger Reiseanbieter vor aber zumindest funktioniert das mit den Gruppen grundsätzlich...


    So zurück zum Punkt "leere Sitemap" :

    Ich denke den "Remove" Knopf der einzelnen Einträge (nach Markierung ganz unten) kann man finden... Und dann die 4 Einträge der Etagen löschen😢... Den Frame lass ich Mal stehen.


    Nun muss ich also sozusagen das Model nochmal bauen. Vorteil: ich kann auch Equipment eines Raumes zusammenfassen und somit die Schachtelung etwas verringern.


    So nun also doch einige Etappen zu Fuß:

    Ich klicke den Frame "Geräte nach Ort" an und füge diesmal einen Text hinzu. Warum? Keine Ahnung aber mit Texten lässt sich so gut wie alles machen ..

    Als Label vergebe ich "Erdgeschoss", das Item lasse ich leer und als Icon kommt natürlich wieder das bekannte "groundfloor" zum Einsatz.

    Nach Speichern mit Diskette hab ich nun nen Text erzeugt.... Gähn....



    Nun markiere ich den erzeugten Text, und füge den nächsten Text darunter ein: Label "Gäste WC", Icon "toilet"...

    So nun wird's wieder interessant: da ich im Gäste WC nun nicht wirklich viel habe, entscheide ich mich dafür, alles auf eine Seite zu packen.

    Ich markiere also den Text "Gäste WC" und füge als erstes einen Slider hinzu.

    Diesmal wähle ich nur das Item aus und schnappe mir die Solltemperatur.

    Als min-Wert setze ich "6" als max-Wert "30" und den Step auf 0,5. Den Rest lasse ich leer, erinnere mich kurz an den Bug, schalte nochmal in "Code", füge eine Leerzeile irgendwo hinzu und speichere ab.



    Jetzt hol ich mir noch mein Etappen Eis, bevor ich die restlichen 5 Items unter den Text einfüge:



    So nun also noch die Items für Aktuelle Temperatur, Luftfeuchtigkeit und Fenster Öffnung fix jeweils als "Default" in dem Text "Gäste WC" angelegt. Bei den beiden Batterie Stati wechsle ich wieder und lege sie als "Text" an (da war ja noch was mit dem Schalter, den ich nicht sehen wollte). Da ich aber trotzdem eine Info haben möchte, was für einen Zustand die Batterie hat (abgesehen von dem Icon dass dann rot wird) schreibe ich in die Label noch "Batteriewarnung Fenster Gäste WC[%s]" und "Batteriewarnung Heizung Gäste WC[%s]" rein.

    Und such mir jeweils das richtige Item dazu aus:



    So Etappenziel erreicht, Fenster immer noch offen...


    Ich überlege kurz, wo diese vermaledeiten Klammern [%s] eigentlich besser aufgehoben sind: am Item Label wie beim Fenster oder im Label im Sitemap-Eintrag... Mhm .. beides funktioniert... Aber aus Gründen der Hygiene mag ich es lieber immer an der selben Stelle (suchen müssen) ich entscheide mich für den Sitemap-Eintrag und ändere das Label vom Fenster... Damit kann mir dann auch wurscht sein, wie die ✨ magic ✨ von OH die Items automatisch benamst, weil ich das Sitemaplabel nach meinem Geschmack nennen kann.


    Ich versöhne mich mit der ✨ magic ✨ von OH


    => Ich werde weiterhin das Modell zum Anlegen und organisieren der Items nutzen, dort finde ich sie schnell und später wird das auch bei den Rules eine Rolle spielen.<=


    und gehe den nächsten Raum an: "Flur EG".

    Da hab ich derzeit nicht viel nur ein Heizkörperthermostat, einen Rauchmelder und die Haustür.

    Das ist easy... Also im Modell auf den Raum geklickt, "+"-Symbol gefunden und Equipment from Thing (RST: Heizung Flur) hinzugefügt.

    Nun noch schnell die Channels ausgewählt (ich beginne mal mit "add all" im Standard aber wähle zusätzlich noch die Absenkung und den Betriebsmodus aus den advanced Channel). An den vorgeschlagenen Namen ändere ich nix 🫣🙈

    Beim Item des Türsensors ändere ich die Category von "contact" auf "frontdoor".

    Beim Rauchmelder bin ich vorsichtig.. keiner will mitten in der Nacht alle Rauchmelder heulen haben, nur weil am Handy einer die Uhrzeit nachgucken wollte....

    Nehme alles mit Select All mit und schon habe ich ne Menge neue Items, die ich nun liebevoll in meine Sitemap basteln kann.


    Also zurück zum Editor der Sitemap "Mein Haus" das Erdgeschoss angeklickt und analog zum "Gäste WC" einen Text angelegt, das Label mit "Flur Erdgeschoss", das Item mit "corridor" bedient...

    Dannach analog den Schritten oben zuerst den Sollwert der Heizung vom Flur als Slider, die Aktuelle Temperatur und die Luftfeuchtigkeit als Default angelegt. Ebenso die Haustüre, wobei hier ich hier zusätzlich das Label "Zustand Haustüre[%s]" hinzufügen, weil ich den Standard Text aus der Übernahme nicht mag😉

    Den Betriebsmodus nehme ich als nächstes auch als Default und beende die Heizung mit einem Text (Label "Absenkung Aktiv[%s]" + richtiges Item)


    Das Ergebniss gibt's dann nach der nächsten Maus...


  • Ich bin damit soweit zu Frieden und geh erstmal ins Bett.


    Nochmal etwas wacher drüber geschaut und was sehe ich?

    Die Reihenfolge ist ja Quatsch die Haustüre möchte ich ja nicht mitten in der Heizung haben. Also im Editor die Haustüre markiert und unten bei "Widget" ganz nach unten gescrollt bis zur "Schultüte" und dem "Zuckerhut" (den hübschen Pfeilen ganz unten).

    Damit die Haustüre nach unten geschoben


    So was fehlt noch?... Äh ja der Rauchmelder🫣 und die Batterien.

    Label: "Rauchmelder[%s]", Item: "Rauchalarm" vom Flur, Icon: "smoke" Da überlege ich, ob ich alle 3 Channels des Rauchmelders und alle Batteri-Meldungen direkt unter "Flur Erdgeschoss" haben will... Der Flur hat sowenig Teilnehmer, dass ich das eigentlich machen könnte aber ich möchte das ja bei allen Räumen gleich halten.

    Also lege ich erstmal 2 Texte an:

    1. Label: "Rauchmelder[%s]", Item: "Rauchalarm" vom Flur, Icon: "smoke"

    2. Label: "Batteriewarnung", Item: ohne , Icon: "battery" :



    Als nächstes fülle ich diese zwei Texte mit weiterem Leben, indem ich unter dem Rauchmelder die 3 Switch-Items als Texte einfüge. Warum als Texte? Damit die Schalter nicht in der Sitemap auftauchen. Ein Schalten von Rauchalarm oder Alarmton könnte sehr unangenehm enden.

    Da ich wie immer gerne den Zustand sehen möchte muss ich dummerweise jedem Text ein Label geben und es mit [%s] erweitern.

    "Rauchalarm ist[%s]"

    "Alarmton ist[%s]"

    "Batteriewarnung ist[%s]"


    Alles gespeichert (wie immer einmal über "Code" + Leerzeile wg. des Bugs) und in der Sitemap kann ich nun auf dem "Rauchmelder" im "Flur Erdgeschoss" weiter verzweigen und lande im Ergebniss:



    Das finde ich ganz gut so. Nun noch unter dem Text "Batterien" die drei Batteriewarnungen der Geräte aus dem Flur angelegt und der 2.Raum ist fertig🙃


    Leider muss ich auf meinem Handy nun tricksen, weil der Designmodus sich nicht weiter nach unten scrollen lässt. Am PC geht das zum Glück schon....

    Es gibt dafür jetzt 4Lösungen:

    1. Am PC im Designer weiter machen

    2.das Handy quer drehen was aber eckelig wird

    3. Auf dem Handy im Desktop-Modus

    4. Auf dem Handy im Code weiter arbeiten🫣


    Ich entscheide mich für 2. und lege im Designmodus der Sitemap den nächsten Raum im Erdgeschoss als Text an: das Wohnzimmer (Category "Sofa").

    Hier habe ich mit Abstand die meisten Teilchen "verbaut" und dazu noch Hue und Alexa...

    Da ich ja eine übergreifende Steuerung haben will, installiere ich in openHAB also erstmal das Hue Binding, Alexa mach ich später....

    Also ab zu Einstellungen [Add-ons] => Bindings, nach Hue gesucht und Install geklickt:



    Komischer Weise hakt das installieren von Bindings derzeit schon Mal bei mir und ich sehe eine ewige "Eieruhr" nach einem Neustart des Raspi/OH ist das Binding dann plötzlich da....


    Also auf zu den "Einstellungen=>Things" und beherzt auf das "+"-Symbol geklickt. Und schon erwartet mich ein Bildschirm in dem ich diesmal das Hue-Binding auswähle. Ein kurzer Scan und meine Bridge ist gefunden:



    Ich füge ohne weitere Änderungen die gefundene Bridge zu meinen Things hinzu und Stelle fest, dass ein Fehler vorliegt🫣

    Glücklicherweise sagt mir das Thing auch sofort was zu tun ist : Knopf drücken du musst!

    Das ich tuen und tada meine hue-Bridge ist online:



    Was ich verschwiegen habe: die Hue-Bridge ist natürlich im gleichen lokalen Netzwerk eingestöpselt und natürlich steuere ich sie parallel mit Livisis, Alexa und meiner eigentlichen (ersten) openHAB-Installation auf der Himbeere im Layer.


    So nun gleich noch einmal das "+"-Symbol angeklickt, wieder das Hue Binding ausgewählt und Mal gescannt, was sich da so findet.

    Nicht alles, was da so herum-schwirrt ist für mich interessant, weshalb ich mir nur meine Leuchten schnappe und den Rest (Szenen/alle Hue/Gruppen) einfach Mal ignoriere.

    Dazu gehe ich nach dem Scan zweimal zurück, kann dann in der Inbox bequem per Doppelhaken oben rechts die Auswahl aktivieren und mit dem Daumen hoch die Auswahl übernehmen.



    Das selbe mit dem durch-gestrichenen Auge für den Rest und meine Inbox ist wieder leer.


    Von den ganzen Channels werde ich nur den Channel Farbe nutzen, den dafür aber gleich doppelt😉


    Da ich nun schon mittendrin bin im Thema Beleuchtung, wird dies auch das erste im Raum Wohnzimmer sein, dass ich anlege.


    Also geschwind zurück ins Semantic-Model und unter dem Raum Wohnzimmer gleich Mal zwei Groups erstellt (create equipment)

    1. Name: "Grp_Bel_WZ"

    Label "Beleuchtung ein/aus"

    Category "lightbulb"


    2. Name: "Grp_FktBel_WZ"

    Label: "Funktionsleuchten"

    Category: "colorlight"


    Unter der 1.Gruppe lege ich per "Create Points from Thing" fix für alle Farbe-Cannels aller Hue-Things ein Item vom Typ "Switch" an (um einfach nur an oder aus zu schalten).

    Ich ersetzen die "_Farbe" im Namen durch "_onoff" vergebe ein passendes Label, und ändere die Category in "light":



    Unter der 2.Gruppe lege ich für jeden Farbe-Channel aller Hue-Things ein weiteres Item per "Create Points from Thing" an, dort ändere ich aber nur das Label:



    Am Ende sieht mein Wohnzimmer im Model dann so aus:



    So es wird Zeit für ein Eis... Also Mal wieder ein bisschen an der Sitemap schrauben: im Raum Wohnzimmer einfach Mal die beiden Gruppen reingeworfen (hinzufügen/Group/als item die Gruppe "Beleuchtung an/aus" bzw. "Funktionsleuchten" wählen sonst nix)


    Dann wieder Mal Eis genießen und freuen🍦


    Da dieser Post schon 10 Bilder hat geht es weiter im nächsten 😉


    Fortsetzung folgt

  • ... so, da ich im Wohnzimmer natürlich auch noch Beleuchtung habe, die mit Livisi gesteuert wird, vervollständige ich diese beiden Gruppen nun noch entsprechend.


    Dazu lege ich im Model wieder meine Items an. Anfangen will ich mit dem Unterputzdimmer (ISD 2)für den Kronleuchter. Der wird wie die Hue's einmal in der an/aus Gruppe und einmal in der Funktionsleuchten Gruppe angelegt (also wieder 2 Items):

    Im Model die Gruppe "Beleuchtung an/aus" markieren "+-Symbol" geklickt und “Create Points from Thing gewählt. Nach ISD gesucht und dann den einzigen Nicht erweiterten Chanel "Dimmer" ausgewählt.

    Beim Namen das "_Dimmer" durch "_onoff" ersetzt, das Label in "Kronleuchter" geändert und den Type in switch geändert sowie die Category auf "light" verkürzt:



    Und "schon" fertig🫣...

    Je öfter man damit arbeitet, um so schneller wird man bei diesen Sachen....

    Jetzt auf der Gruppe " Funktionsleuchten" noch ein neues Item am selben Channel anlegen. Diesmal aber nur das Label und die Category geändert:



    Da diese Änderungen in den Gruppen gemacht werden, die in der Sitemap schon drinnen sind, wars das jetzt auch schon. Und das ✨ magic ✨ von OH erledigt den Rest so dass meine sitemap vom Wohnzimmer jetzt so aussieht:




    ....Fortsetzung folgt

  • Ich hänge hier mal auch noch was rein. Geht um Push Up Nachrichten.

    Habe mal geschaut was man da so machen kann in OpenHab und bin darauf gestoßen, dass man sich sogar WhatsApp Nachrichten senden lassen kann, darin kann man sich sogar aktuelle Werte wieder geben lassen.


    Sorry ich hoffe das ist Ok für dich MKR. Ansonsten schreib mir einfach, dann lösche ich es wieder und erstelle separat ein Thread dazu.


    Bin dabei nach folgender Anleitung vorgegangen:

    External Content www.youtube.com
    Content embedded from external sources will not be displayed without your consent.
    Through the activation of external content, you agree that personal data may be transferred to third party platforms. We have provided more information on this in our privacy policy.


    Das verlinkte Script hat bei mir nicht funktioniert. Habe dann direkt von der CallMeBot Seite das Script kopiert. Damit hat es dann auf anhieb funktioniert. Habe es jetzt nicht gegengeprüft, ob das Script falsch war, oder ich einfach ein Copy & Paste Fehler gemacht habe. Wollte es nur hier kurz erwähnen, falls sonst noch jemand Schwierigkeiten hat.


    WhatsApp Text Messages from OpenHAB
    Yes! Now OpenHAB can send WhatsApp Text Messages thanks to the CallMeBot Free API. You just need OpenHAB to execute a WGET or CURL command to send WhatsApp…
    www.callmebot.com


    Script:

    Code
    var HttpUtil = Java.type("org.openhab.core.io.net.http.HttpUtil")
    var urlmessage = encodeURI("This is a test from openHAB sending you a WhatsApp Message becaue something is happening in your house")
    HttpUtil.executeUrl("GET", "https://api.callmebot.com/whatsapp.php?source=openHAB&phone=+34123123123&apikey=12345&text=" + urlmessage , 2000)



    Das ganze funktioniert bei mir absolut super.

    Lasse mir damit z.B.: CO2 Warnung von Netatmo per Whats-App senden incl. des aktuellen Wertes.

    Ebenfalls lasse ich mir Fehler in der Temperaturabsenkung incl. des Raumes und der betroffenen Heizung mitteilen. Habe den Whats App Text so ausgebaut, dass auch meine Frau versteht was sie jetzt tun soll. :D :D


    Der Callmebot-Dienst ist allerdings auf 24 Nachrichten in 4h beschränkt.

    Denke aber das sollte wohl locker reichen, da man ja auch nicht zugespammt werden will.


    Also die Regeln entsprechend konfigurieren. ;)

    Ich arbeite hier mit Zuständen welche die Nachrichten auslösen.

    Die Zustände werden dann (falls sie durch ein Ereignis aktiviert wurden) immer nach 1h zurückgesetzt.

    So stelle ich sicher, dass ich nicht jede Minute zu dem gleichen Ereignis eine Whats App bekomme.


    Beispiel Zustand: "CO2 Alarm" Auslösung bei größer 1000ppm (gesteuert über Livisi Szenario):

    - Trigger: Änderung CO2 Wert

    - Bedingung 1: >1000 ppm

    - Bedingung 2: Zeit zwischen 08:00 Uhr - 22:00 Uhr

    - Zustand "CO2 Alarm" wird auf "An" gesetzt

    - Zeitlich verzögert Rücksetzten: 1h


    In OpenHab wird der Zustand "CO2 Alarm" als Trigger verwendet. Dieser löst dann (entsprechend der Videoanleitung) die Whats App aus, sobald er von Zustand "off" auf "on" wechselt.


    In der Livisi Oberfläche wird er nach 1h zurückgesetzt. Erst dann kann Livis ihn wieder auf "on" setzten.

    Heißt also im Umkehrschluss, solange er auf "on" steht kann Openhab die Regel nicht auslösen, da hier nur der switch von "off" auf "on" als Trigger ausgewählt ist.


    Somit stelle ich sicher, dass ich für dieses Ereignis höchstens 1 mal pro Stunde eine Nachricht bekomme.


    Ebenfalls ist ja ein Zeitrahmen definiert. Der Status kann nur zwischen 8:00 Uhr und 22:00 Uhr auf "on" geschaltet werden. Man will ja Nachts keine Nachrichten bekommen.

Participate now!

Don’t have an account yet? Register yourself now and be a part of our community!