Tasmota Verbrauchswerte an Homematic übergeben

In einem meiner letzten Videos habe ich ja zum einen erklärt, wie ihr die günstigen Zwischenstecker flashen könnt (LINK) und ebenso, wie ihr diese dann in die Homematic einbinden könnt (LINK).

Oft kam nun aber die Frage, wie man die Verbrauchswerte mit in die Homematic übertragen kann. Und genau dies schauen wir uns nun gemeinsam an!

Vorbereitungen

Zunächst einmal erstelle ich mir eine neue Systemvariable auf der CCU. Ich möchte diese mit dem aktuellen Wert meiner Solaranlage beschreiben, so das ich hier als info immer den aktuellen Wert habe. Das reicht mir persönlich. Hierfür erstelle ich mir eine Systemvariable:

Neue Systemvariable, die ich mit dem Zwischenstecker beschreiben werde

Diese Systemvariable werde ich über Tasmota dann beschreiben. Um dies kurz zu testen kannst Du dies allerdings auch über die ganz normale Adresszeile im Browser erledigen. Gebe doch hierfür einmal testweise das folgende ein:

192.168.178.200/cuxd.exe?ret=dom.GetObject('solar').State(22)

An dieser Stelle muss natürlich die IP Adresse mit Deiner Adresse angepasst werden. Ebenso ist darauf zu achten, dass die erstellte Systemvariable (in meinem Fall “solar”) auch mit angepasst wird.

Nachdem Du die Adresse eingetragen hast und Enter gedrück hast, wird der Wert (im Beispiel 22) in die Systemvariable geschrieben.

Erstellen der Regel unter Tasmota

Weiter geht es nun im Webinterface vom Zwischenstecker selbst. Hier müssen wir nochmals mit den Regeln arbeiten. Ich habe hier zwei verschiedene Möglichkeiten, die ich Dir zeigen möchte. Empfehlen würde ich aber eher die zweite.

Im nun folgenden Beispiel werden die Werte sofort zur CCU übertragen und in die Systemvariable geschrieben. Dies ist nur bedingt zu empfehlen, da doch recht viele Werte übertragen werden. Ich benötige in meinem Anwendungsfall nicht alle Werte sofort – mir reicht es wenn diese minütlich übertragen werden weshalb ich auch die zweite Variante nutze.

Rule1 on Energy#Power!=%var1% do backlog var1 %value%; WebSend [192.168.178.200:8181] /cuxd.exe?Status=dom.GetObject('solar').State(%var1%) endon

Wichtig in beiden Varianten ist natürlich, dass Du hier die IP Adresse Deiner CCU sowie den Namen der Systemvariable anpasst. Sonst klappt dies nämlich nicht.

Hier nun meine Version, in der die gemessenen Werte jede Minute an die CCU übertragen werden:

Rule1 on Energy#Power do var1 %value% endon on Time#Minute do WebSend [192.168.178.200:8181] /cuxd.exe?Status=dom.GetObject('solar').State(%var1%) endon

Video

Links:

Dokumentation über die Erstellung von Tasmota Regeln: https://tasmota.github.io/docs/Commands/#rules

Der von mir genutze Zwischenstecker: https://youtu.be/hIxMXXMVIZw

Vielleicht auch interessant?
Aktuelle Seminare:
HomeMatic

Weitere ähnliche Beiträge auf verdrahtet.info:

6 Kommentare. Hinterlasse eine Antwort

  • Thomas Turowski
    14. Mai 2020 20:20

    Hallo Stefan,
    wie immer coole und sehr hilfreiche Anleitung 🙂
    Die Watt-Zahl wird jetzt in die Variable geschrieben. Wie bekomme ich denn die Verbrauchswerte ausgelesen?

    schöne Grüße

    Thomas

    Antworten
  • Hallo Thomas,
    du musst die Rule erweitern oder eine neue anlegen. Dabei folgendes anpassen: “Energy#Power”
    Verbrauch Total = “Energy#Total”
    Verbrauch gestern = “Energy#Yesterday”
    Verbrauch heute = “Energy#Today”
    Spannung = “Energy#Voltage”
    Strom = “Energy#Current”

    Beispiel:

    Rule1
    on Energy#Power do var1 %value% endon on Time#Minute do WebSend [192.168.178.200:8181] /cuxd.exe?Status=dom.GetObject(‘solar’).State(%var1%) endon
    on Energy#Voltage do var2 %value% endon on Time#Minute do WebSend [192.168.178.200:8181] /cuxd.exe?Status=dom.GetObject(‘Spannung’).State(%var2%) endon

    Gruß
    Ralf

    Antworten
  • Variable vom Counter
    17. August 2020 16:38

    Klasse gemacht ,wie immer sehr gut erklärt,weiter so.Kurze Frage ,wie kann ich einen Counter auslesen als Variable?Im Tasmota steht sonoff.0.DVES_20AC67.COUNTER_C1 . Danke aus Sachsen Reini

    Antworten
  • Hi,

    die Sp111 ist geflasht. Ein/Aus funktioniert in beide Richtungen. Durch die Eingabe: 192.168.178.200/cuxd.exe?ret=dom.GetObject(‘solar’).State(22) die ip der CCu3 angepasst. Passiert leider nichts außer –> 403 Forbidden (Meldung).

    was könnte falsch sein??

    Danke euch

    Antworten
  • Hallo
    Bei mir das selbe wie bei Manuel, funktioniert auch mit einen Raspberry nicht. Gibt es hierzu denn keine Lösung?

    Viele Grüße
    Dirk

    Antworten
  • Hallo Stefan,
    Tolle Anleitung. Funktioniert wie beschrieben. Mit deinem zuletzt beschriebenen Befehl erzeugst du aber die VAR1 permanent, sobald sich der Wert ändert und schreibst dann nach Zeit den Wert in die Homematic. Soweit so gut.
    Jetzt habe ich noch Iobroker am Start und erhalt die Wert ebenfalls. Hier wird natürlich VAR1 auch übergeben und jetzt kommt genau das Problem – nach du VAR1 permanent festlegst, wird dieser Wert auch permanent an den Iobroker übergeben.
    Ich wäre dir dankbar, wenn du eine Tasmota Regel bauen kannst, dass die Variable VAR1 nur einmal pro Minute erzeugt wird und dann entsprechend auch in die Homematic geschrieben wird.
    Danke dir für deine Unterstützung. Viele Grüße Thomas

    Antworten

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.

Bitte füllen Sie dieses Feld aus.
Bitte füllen Sie dieses Feld aus.
Bitte gib eine gültige E-Mail-Adresse ein.

Menü