Tasmota Smart Meter in Echtzeit senden

Hi,
Ich nutze den Volkszähler zusammen mit Tasmota und habe diesen in HomeAssistant integriert. Leider ist die geringste Teleperiode 10s, ich hätte allerdings den aktuellen Stromverbrauch in Watt so oft wie möglich übertragen. Tasmota bekommt die Werte etwa alle 3s. Dazu habe ich das Script wie folgt angepasst:

>D
>B
=>sensor53 r
>M 1
+1,3,s,0,9600,Strom
1,77070100010800ff@1000,Zählerstand,KWh,total_in,3
1,77070100100700ff@1,Aktueller Verbrauch,W,power_cur,0
1,77070100010801ff@1000,Bezug Hochtarif,KWh,high_in,3
1,77070100010802ff@1000,Bezug Niedrigtarif,KWh,low_in,3
1,77070100020800ff@1000,Lieferung Total,KWh,total_out,3
1,77070100020801ff@1000,Lieferung Hochtarif,KWh,high_out,3
1,77070100020802ff@1000,Lieferung Niedrigtarif,KWh,low_out,3
1,7707010060320101@#,Herstellerkennung,,meter_id,0
#

>S
; Veröffentlichen der separaten Variable über MQTT
=>publish tele/tasmota_CF698F/SENSOR {"Strom" : {"power_cur" : %power_cur%}}

Soweit funktioniert es, nur wird für %power_cur% nur ??? übertragen.

Kann mir jemand weiterhelfen, wie genau der Senssorname ist, bzw wie ich den Wert per MQTT verschicken kann?

Hallo,

damit Tasmota die Sensorwerte sofort versendet, musst du bei den Nachkommastellen einfach 16 addieren.
Damit wird die Einstellung bei “Tele Period” ignoriert.

geändert in
1,77070100100700ff@1,Aktueller Verbrauch,W,power_cur,16
sollte für eine unmittelbare Übertragung sorgen

Auch eine Coole Idee. Mal ne frage an die Runde, hat jemand schon mal Erfahrungen mit den “Rules” in Tasmota gemacht? Damit könnte man wohl scheinbar definieren, dass z.B. die Werte sofort neu übertragen werden wenn sich die Leistung um beispielsweise 5 Watt erhöht (Alles darunter wäre für mich jetzt nicht wirklich wissenswert)

Käme mir persönlich etwas sauberer vor, als die Nachkomma-Stellen auf 16 zu ändern (Wobei das natürlich auch super ist, sollte es funktionieren).

Habe da auch letztens nach gesucht, aber leider nicht fündig geworden.

Leider habe ich heute früh bis 1:30 schmerzlich herausfinden müssen, dass in Tasmota nur das Script oder Rules nutzbar sind. Du kannst keine Firmware compilieren, wo beides enthalten ist. Das Script braucht du zwingend beim Smart Meter.
Aber eine Rule könnte etwa so aussehen:

Rule1 on power_cur#State do Publish tele/tasmota_CF698F/SENSOR {"Strom" : {"power_cur" : %value%}} endon

Nur leider hat das eben für mich nicht funktioniert…

@bigmirror
vielen Dank, so einfach kann es sein :sweat_smile:

:crayon:by HarryP: Zusammenführung Doppelpost

1 „Gefällt mir“

Danke für die Info :pray:

Hallo, ich bin Tasmota Newbie und stehe etwas auf dem Schlauch und hoffe Ihr könnt mir helfen. Ich möchte wie in dem Topic hier beschrieben den aktuellen Zaehlerstand per MQTT versenden. Das Script von der Volkszaehler Seite funktioniert wunderbar und auf der Weboberfläche sehe ich auch die Zahlen schoen ticken. In meinem MQTT Explorer bekomme ich aber nur alle Stunde oder so ein update. Ich habe schon TelePeriod 10 gesetzt und auch die Nachkommastellen auf 4 gestellt. Beides hat aber für MQTT keinen Effekt bei mir. Was mache ich falsch ?

Zähler ist der
Iskra eHZ-MT681-D4A51-K0p

Skript ist:

>D
>B
=>sensor53 r
>M 1
+1,3,s,0,9600,MT681
1,77070100010800ff@1000,Gesamtverbrauch,kWh,Total_in,4
1,770701000f0700ff@1,Leistung,W,Power_cur,4
1,77070100150700ff@1,Leistung P1,W,Power_p1,0
1,77070100290700ff@1,Leistung P2,W,Power_p2,0
1,770701003d0700ff@1,Leistung P3,W,Power_p3,0
1,77070100020800ff@1000,Gesamteinspeisung,kWh,Total_out,3
1,77070100000009ff@#,Service ID,,Meter_id,0|
#

Hallo,

die Nachkommastelle auf 4 bewirkt erst mal nur, das du 4 Nachkommastellen hast.
Wenn du damit die “sofortige Übertragung” erreichen wolltest, dann musst du zu den gewünschten Nachkommastellen +16 addieren.
0 Nachkommastellen mit sofortiger Übertragung ->16
4 Nachkommastellen mit sofortiger Übertragung ->20

Warum aber TelePeriod nicht greift, kann ich dir im ersten Moment auch nicht sagen.
Einzige Vermutung wäre, dass der Zähler nicht häufiger sendet, aber das wäre schon recht lang.

Ok Problem gelöst … TelePeriod hat funktioniert. Ich habe nur nicht gesehen dass im MQTT der Verbrauch unter 2 Messages publiziert wurde. Einmal unter “Tasmota” (und da wirklich nur einmal) und einmal unter “Tele” und dann in Echtzeit.

Vielen Dank für Eure Hilfe