Shelly Flood in Homematic einbinden - mit der Originalfirmware

  • #1 Einleitung

    #2 Ausfallüberwachung

    #3 Datenübernahme in Homematic


    Hallo zusammen,


    es war ein sehr steiniger Weg, aber nachfolgend kann ich Euch nun meine Lösung mit der Originalfirmware vorstellen.


    Die Umsetzung der Sendeerkennung war die erste Hürde. Details dazu waren an dieser Stelle erläutert.


    techn. Voraussetzungen:

    • kompatibel mit den Homematic-Systemen CCU2, CCU3, Charly, sowie allen Ablegern wie RaspberryMatic und piVCCU.

    • installiertes Addon CUxD

      (Das Wissen um den Umgang CUxD, wie z.B. Geräte anlegen, setze ich an dieser Stelle voraus, sonst "explodiert" diese Anleitung. Danke für's Verständnis.)


    DIe Vorteile aus meiner Sicht:

    • alle Shelly Flood -Eigenschaften bleiben erhalten, da ich alle Aktoren und Sensoren mit der originalen Herstellerfirmware betreibe
    • alle zukünftigen Shelly Flood -Aktualisierungen/ -updates werden nutzbar sein
    • Volle Shelly-App-Bedienbarkeit parallel zur Homematic-Automatisierung
    • Betrieb als lokale Lösung oder über Shelly-Cloud, zusätzlich Homematic


    Der einzige sich zwangsweise ergebende Nachteil ist eine etwas kürzere Batterielebensdauer!



    Folgende Funktionen habe ich auf der Homematic-Seite umgesetzt:


    • Anzeige vom Status (Ruhe- oder Alarmzustand)
    • Batteriezustand
    • Temperatur (zum Zeitpunkt des letzten Sendens)
    • zusätzlich zu den Möglichkeiten der Cloud: Ausfallüberwachung


    Die Ansicht der Anbindung:
    Geräteansicht.png


    Warum die Einbindung als Schalter:


    Es wäre schöner gewesen, den Shelly-Flood als Gefahrenmelder in Homematic darzustellen. Warum das nicht geht, habe ich bereits in diesem Thread erläutert.


    Nach vielem Probieren (daher auch der Name "VG Shelly Flood V4 im Bild) erschien mir diese Lösung die Plausibelste:


    AUS --> Ruhe

    EIN --> Wasseralarm


    Ich möchte Euch, insbesondere Einsteigern, an dieser Stelle empfehlen, vor der Umsetzung mal einen Blick in diesen Thread zu werfen:

    Zu Beachten ist ferner, dass die Vorgehensweise der Sendeerkennung eine ganz Andere ist, als aus den bisherigen Kopplungen bekannt! Insofern arbeitet beim Nachbauen die Anleitung bitte sorgfältig von oben nach unten ab. ;)


    Es gilt ansonsten wie immer:
    Falls noch nicht vorhanden, bitte ein Gerät (28) System Exec anlegen! Darüber werden die Befehle abgesetzt. (Im CUxD-Exec werden keine Eintragungen gemacht!)




    Viel Spass und viel Erfolg damit. :thumbup:

  • In einem anderen Thread bin ich auf die Frage "Wie merke ich eigentlich, wenn der Shelly-Flood ausfällt und nicht mehr sendet?" aufmerksam geworden.


    Ich habe für Homematicer eine Lösung gefunden, die gleichzeitig die Grundlage bildet, auch die Daten des Shelly Flood in die Homematic zu bekommen und diese dort weiterverarbeiten zu können.


    Das Prinzip der Ausfallüberwachung:

    Der Shelly Flood sendet ja inzwischen ohne sonstige Ereignisse nach 12 Stunden eine Statusmeldung. Diese wird erfasst und bei Ausbleiben wird nach 13 Stunden ohne Meldung/Aktualisierung eine Systemvariable gesetzt, mit der man dann nach Belieben eine Push- oder eMail-Nachricht versenden kann. Natürlich kann auch jede denkbare sonstige Homematic-Steuerung aktiviert werden.


    Die Umsetzung:


    Wir benötigen eine Systemvariable, die später dem CUxD-Kanal des Schalters zugeordnet wird.


    SV Ausfall.png


    Um diese auf "in Ordung" zu setzen, verwenden wir die Funktion "Actions" des Shelly Flood, die nur im WEB-UI per Browser gesetzt werden kann.


    An dieser Stelle schon mal der Hinweis, dass aktuell die Daten nicht direkt via Actions an Homematic übergeben werden können.


    Shelly Action.png


    Code
    1. http://192.168.1.93:8181/x.exe?Antwort=dom.GetObject("Shelly-Flood_Ausfall_KG").State(1)

    IP-Adresse an eigene Homematic-Zentrale anpassen

    Name der Systemvariablen anpassen


    Nun brauchen wir einen CUxD-Timer / Shelly-Flood.


    Es kann 1 Kanal eines bereits vorhandenen CUxD-Timers benutzt werden. Oder man legt ein eigenes CUxD-Timer-Gerät für den Flood an. Somit könnten mit einem Gerät CUxD-Timer maximal 16 Shelly-Flood überwacht werden.


    CUxD-Timer anlegen:

    CUxD-Timer.png



    Der genutzte Kanal wird wie folgt voreingestellt:

    Timer Einstellungen.png


    Der Eintrag für SYSTEM|CMD_EXEC:

    Code
    1. extra/timer.tcl Shelly-Flood_Ausfall_KG 0

    Name der Systemvariablen anpassen!


    Was bis hierhin passiert ist folgendes:

    • Der Timer zählt die 13 Stunden herunter
    • Meldet sich in dieser Zeit der Shelly, so wird der Timer wieder auf 13 Stunden gesetzt
    • Bleibt eine Meldung aus und der Timer steht auf "0" setzt er die Systemvariable auf "Ausfal !?" (oder welchen Text auch immer Ihr hinterlegt habt.

    Das können wir nutzen um ein Homematic-Programm zu triggern:

    Programm Teil 1.png


    Der WENN-Abschnitt setzt den Timer immer wieder zurück.

    Der SONSTWENN-Abschnitt versendet (als Beispiel) eine eMail.


    Damit ist die Ausfallüberwachung realisiert und die Grundlage für den Datentransfer Shelly-Flood --> Homematic geschaffen. :)


  • Die Daten des Shelly-Flood in die Homematic übernehmen


    Um die Daten des Shelly-Flood in Homematic zu übernehmen , brauchen wir 2 weitere Systemvariablen, die ebenfalls wieder dem CUxD-Kanal des Schalters zugewiesen werden:


    SV Temp.png

    (Je nach Aufstellungsort können die Temperaturwerte natürlich angepasst werden)



    SV Bat.png


    Die Variablen werden dem genutzten Kanal eines bereits vorhandenen oder neu angelegten (40) CUxD-16 Kanal Universalsteuerung zugeordnet.

    CUxD-Schalter.png


    Mit einer Universalsteuerung können maximal 16 Shelly-Flood eingebunden werden.


    Da es am Shelly-Flood nichts zu bedienen gibt, werden auch keine Einstellungen im CUxD-Schalter vorgenommen. ;)


    Die Datenübernahme:

    Um nun die Daten aus dem Flood zu übernehmen wird das bereits angelegte Programm erweitert:

    Programm Teil 2.png

    (Der SONST-Teil am Ende bleibt leer)


    Es fehlt noch das Skript im 1. WENN:

    Im Skript die IP-Adresse, CUxD-Exec-Adresse, CUxD-Schalter-Adresse und Systemvariablennamen anpassen!


    Mit jedem Senden des Shelly Flood werden nun die aktuellen Daten in die Homematic übernommen.:thumbup:


    Viel Spass damit. :)