Shelly H&T in Homematic einbinden - mit der Originalfirmware

    • Offizieller Beitrag

    ©2019-2020 Stefan K. (alias 66er) - ausführlicher Hinweis dazu am Ende der Anleitung (#5)


    Update-Information!

    Heute (19.10.19) wurde V2 dieser Kopplung veröffentlicht, die auf dieser Version aufbaut.

    An entsprechenden Stellen verweise ich (in dieser Schriftfarbe) darauf.

    _________________

    Hallo zusammen,

    auch der Shelly H&T lässt sich mit der Originalfirmware in Homematic einbinden.

    Ein Flashen von Fremdfirmware wie Tasmota ist nicht nötig.

    Dadurch hat man den Vorteil, dass App- und Cloudkompatibilität erhalten bleiben.

    #1 Einleitung und Projektvorstellung

    #2 Einstellungen Shelly

    #3 Einbindung in Homematic


    Shelly in Homematic.jpg

    Bild: Shelly H&T als virtuelles Gerät in Homematic


    Dabei sind neben Temperatur und Luftfeuchte optional auch die Batteriespannung und der Batteriestatus darstellbar.

    Alle Shelly-Eigenschaften bezüglich App und Cloud bleiben unabhängig von der Verwendung in Homematic in vollem Umfang erhalten.


    Das Abfragen der Informationen belastet die Batterie und verkürzt deren Lebenszyklus!


    Um die Batterie bestmöglich zu schonen, erkennt meine Umsetzung, wenn der Shelly H&T seine Daten sendet. Und genau dann werden die Informationen für Homematic abgerufen. Ein zusätzliches Aufwecken des Shelly H&T erfolgt nicht.


    Der Grad der zusätzliche Batterie-Belastung hängt von der gewünschten Datengenauigkeit und den daraus resultierenden Einstellung im Shelly H&T ab. Doch dazu im entsprechenden Abschnit "Einstellungen Shelly H&T" mehr.

    Ich selbst betreibe alle verbauten Shelly an einer Homematic Charly mit CCU3-Firmware und kann bisher auf der Homematic-Seite keine Mehrbelastung seitens Prozessorlast oder DutyCycle festellen.

    • Offizieller Beitrag

    #1 Einleitung und Projektvorstellung

    #2 Einstellungen Shelly

    #3 Einbindung in Homematic


    Es müssen am Shelly H&T keine Einstellungen vorgenommen werden,
    (Änderungen bewirken mehr oder weniger Sendevorgänge und beinflussen die Menge der in Homematic zur Verfügung stehenden Daten.)

    Grundsätzlich gilt natürlich, je mehr der Shelly senden muß und somit auch abgefragt wird, desto schneller entleert sich die Batterie. Der Batterieverschleiß ist also auch abhängig davon, wie genau ich die Werteänderungen in die Homematic übertragen haben möchte.Ferner nimmt der Einsatzort des Shelly H&T hier Einfluß:


    - bei Einsatz in Räumen ist die Temperatur / Luftfeuchte (mit Ausnahme Bad) relativ konstant = geringes Sendeaufkommen

    - im Freien sind die Schwankungen deutlich größer = Sendaufkommen steigt.


    Durch entsprechendes Experimentieren mit den Einstellungen während der Entwicklungsphase dieser Anbindung habe ich für meinen Shelly H&T, der im Freien werkelt, folgende Einstellungen als zielführend eingestellt:

    Screenshot_20190329-050922_Shelly.jpg

    Senden Statuszeitraum erzeugt mindestens 1 Meldung pro Tag bei konstanten Messwerten
    (Ausfallüberwachung)

    Temperaturschwelle und Feuchtigkeitsschwelle sind m.E. die Minimal-Werte, ansonsten werden zu viele Sendevorgänge bei EInsatz im Aussenbereich erzeugt.


    Hier zum Vergleich die Datenkurve aus Homematic, die ich mittels CUxD-Highcharts erstelle:

    Chart.jpg

    Relevant für den Vergleich sind die Daten ab 10.00 Uhr, die Daten davor sind aus Tests entstanden. pasted-from-clipboard.png


    LG

    Stefan

    • Offizieller Beitrag

    #1 Einleitung und Projektvorstellung

    #2 Einstellungen Shelly

    #3 Einbindung in Homematic


    techn. Voraussetzungen:

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

    • installiertes Addon CUxD in aktueller Version

      (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.)

    Überwachung und Erkennen des Sendzeitpunkts:

    --> in V2 anders umgesetzt!

    Nachtrag:

    Mit der Auswertung der Daten gibt es u.U. ab Shelly-Firmware 1.5.0 Probleme mit der Erkennung der Onlinezeit, bzw. weil der Shelly H&T wieder in den Sleep-Mode geht, bevor alle Daten abgefragt sind.

    Das Thema wurde im Thread "
    ShellyH&T - Aktualisierungsproblem seit Update auf Firmware 1.5.0" erörtert. Und dort findet Ihr in diesem Posting ein neues Gesamtskript.

    (Ende Nachtrag)

    Nachtrag vom 21.08.2019: Das Gesamtskript inkl. Erklärung jetzt auch hier im Thread unter #7 ;)


    Die Überwachung wird mit 1 Kanal eines CUxD-Ping-Gerätes realisiert. Dabei spielt es keine Rolle, ob man sich eines freien Kanals auf einem schon exisitierenden Gerätes bedient, oder separat 1 neues Gerät anlegt.

    Die Einstellungen:

    CUxD Ping.jpg
    IP des Shelly eintragen, sonstige Einträge übernehmen!

    Mit den angegebenen Überwachungsintervallen funktioniert dies Sendeerkennung zuverlässig. Änderungen sollten daher nur vorgenommen werden, wenn das eigene System es erfordert (z.B. bei zu hoher System-Last).

    wichtiger Hinweis ab Firmware 1.5.0:

    Mit dieser neuen Firmware wurde die Zeit, in der der Shelly H&T online ist, sehr stark verkürzt. Daher sollte der Eintrag "SWITCH|INTERVAL_FAIL" auf den Minimal-Eintrag von 15 gesetzt werden, damit die Abfrage erfolgreich ist.

    Das (virtuelle) Einschalten des Ping-Kanals bei Erkennung des Shelly H&T im WLAN wird später als Trigger für das Programm zur Werteabfrage genutzt! pasted-from-clipboard.png

    Den Shelly H&T als Homematic-CUxD-Gerät anlegen:

    Anzulegen sind:

    1. 1 CUxD-Gerät (90)

      Funktion: Thermostat

      Name: beliebig

      Icon: sollte frei wählbar sein (ich habe den Wandthermostaten genommen)

    2. Systemvariable für die Luftfeuchte

      optional 2 weitere für die Batteriewerte

    Sysvar.jpg

    Die Variablen sind mit den im Screenshot ersichtlichen Werten zu erstellen und mit dem zuvor erstellten CUxD-Thermostaten (Kanal 1) zu verknüpfen! Die Temperatur schreibt das Programm direkt in den Kanal 1 des CUxD-Gerätes. Die Namen der Variablen können natürlich frei gewählt werden.


    Falls auf Eurem System noch nicht vorhanden, bitte ein Gerät (28) System Exec anlegen! Darüber werden die Befehle abgesetzt.

    Hier gibt es bei Bedarf eine Anleitung zum Anlegen des CUxD-Exec-Gerätes.


    Nun ist noch 1 Programm anzulegen:

    --> in V2 anders umgesetzt!

    Programm.jpg

    Wer auf die Anzeige der Batteriedaten verzichtet, muß im Programm die 3. DANN-Zeile weglassen!


    Bitte beachten:

    In den Skripten ist noch etwas individuelle Nacharbeit gefragt! In den Zeilen mit den "*****" steht immer, was Ihr in der oder den Folgezeile(n) anpassen müsst (IP des Shelly oder Adresse Eures CUxD-Exec-Kanals)

    Hinweis für in Skripten Ungeübte:

    Bitte beim Anpassen der eigenen Daten (IP und Geräte-Adressen, Systemvariablennamen) sehr aufmerksam sein!

    Schon das versehenliche Löschen eines einzelnen Zeichens kann dazu führen, dass das jeweilige Skript nicht mehr lauffähig ist!

    Skript 1 für die Temperatur:

    --> in V2 anders umgesetzt!

    Skript 2 für die Luftfeuchtigkeit:

    --> in V2 anders umgesetzt!

    Nun stehen schon mal die eigentlichen Messwerte "Temperatur und Luftfeuchte" in der Homematic zur Verfügung! pasted-from-clipboard.png

    Und natürlich können diese jetzt auch nach eigenen Wünschen geloggt oder weiterverarbeitet werden. pasted-from-clipboard.png


    Für die optionale Anzeige der Batteriedaten nun noch das letzte Skript:

    --> in V2 anders umgesetzt!

    Skriptversion V1.1 - Anzeigebug bei 100% beseitigt

    Fehlerhinweis:

    Leider funktioniert die Anzeige des Batteriestatus nur im Bereich 10% bis 99% aktuell sauber.(unter 10% ist die Anzeige "0 %" und bei 100% werden leider fälschlicherweise 10% angezeigt)


    Sollte ich eine Möglichkeit finden, das zu korrigieren, werde ich es Euch wissen lassen.
    pasted-from-clipboard.png

    Ich hoffe, ich habe in der Beschreibung nichts vergessen, wünsche Euch viel Spass und Erfolg bei der Umsetzung. pasted-from-clipboard.png

    Natürlich freue ich mich über Feedback.

    • Offizieller Beitrag

    #4 Alte Skriptversionen:

    • Offizieller Beitrag

    Zur Info:

    Für die Abfrage des Batteriezustands habe ich die Skriptversion V1.1 im Thread (#3) veröffentlicht.

    Damit wird nun der Wert "100%" richtig angezeigt. :)

    HT V2.png


    ____________________________________________________________

    Die Anleitung inkl. der Skripte und Bilder unterliegt dem Urheberrecht. Wer gegen das Urheberrecht verstößt (z.B. Bilder oder Texte unerlaubt kopiert und auf anderen Webseiten publiziert), macht sich gem. §§ 106 ff UrhG strafbar, kann zudem kostenpflichtig abgemahnt werden und muss Schadensersatz leisten (§ 97 UrhG).

    © 2019-2020 Stefan K. (alias 66er)

    Alle Rechte vorbehalten

  • Dieses Thema enthält 3 weitere Beiträge, die nur für registrierte Benutzer sichtbar sind, bitte registrieren Sie sich oder melden Sie sich an um diese lesen zu können.