FHEM Forum

Verschiedenes => Bastelecke => ESP Familie => Thema gestartet von: gloob am 06 Juni 2020, 18:33:56

Titel: Tasmota mit Scripting
Beitrag von: gloob am 06 Juni 2020, 18:33:56
Hallo,

Hat jemand von euch zufällig eine fertige BIN für Tasmota inklusive Scripting? Würde es gerne mit einem 2-Relay testen und will mir eigentlich den Compiling Stress sparen.

Gruß
Stefan
Titel: Tasmota mit Scripting
Beitrag von: RaspiLED am 06 Juni 2020, 19:12:35
Hi,
was meinst Du mit Scripting?
Rules in den Erweiterungen per Haken aktivieren geht mit den Standard BIN.

<Edit> Ah scrpting, kannte ich noch nicht, gleich mal ansehen...</Edit>

Gruß Arnd


Signalduino (Nano, ESP, ...), CUL (Busware, Nano, Maple, ...), Homematic (HM-MOD-UART-RPI, ESP, Maple, ...), LaCrosseGateway (LGW, ESP, ...), 1-wire, ESPEasy, Bravia, Yamaha, ...
Titel: Antw:Tasmota mit Scripting
Beitrag von: TomLee am 06 Juni 2020, 19:54:05
Anbei, allerdings mit 8.2.0.
Mehr Arbeit wollt ich mir auf die Schnelle nicht machen  ;)
Ne aktuelle kann ich dir morgen wieder kompilieren.

Gruß

Thomas
Titel: Antw:Tasmota mit Scripting
Beitrag von: RaspiLED am 06 Juni 2020, 19:59:43
Hi,
Hier ist was cooles:

https://github.com/benzino77/tasmocompiler/blob/master/README.md

(https://uploads.tapatalk-cdn.com/20200606/46131e47af70ceecebc710bcba7be305.jpg)

Rules raus und script rein und voila...

http://cloud.tapatalk.com/s/5edbd9812b40c/firmware.zip (http://cloud.tapatalk.com/s/5edbd9812b40c/firmware.zip)

Gruß Arnd


Signalduino (Nano, ESP, ...), CUL (Busware, Nano, Maple, ...), Homematic (HM-MOD-UART-RPI, ESP, Maple, ...), LaCrosseGateway (LGW, ESP, ...), 1-wire, ESPEasy, Bravia, Yamaha, ...
Titel: Antw:Tasmota mit Scripting
Beitrag von: Billy am 12 Juni 2020, 11:17:14
Inzwischen gibt es ein weiteres feature zum scripting.
ZitatOptional external editor

you may use a special external editor with syntax highlighting to edit the scripts. (mac and pc) you may use any number of comments and indents to make it better readable. then with cmd r the script is transfered to the ESP and immediately started. (all comments and indents are removed before transfering) see further info and download here
Kann ich nur empfehlen.
https://tasmota.github.io/docs/Scripting-Language/ (https://tasmota.github.io/docs/Scripting-Language/)
Editor mit highlighting für Tasmota Scripter.
Per Knopfdruck kann man den Skript direkt auf das tasmota Gerät (esp 8266) hochladen.
Der Skript wird dabei auch noch komprimiert. ;D

Billy

PS: Wer Scripter verstanden hat will keine Rules mehr!
Titel: Antw:Tasmota mit Scripting
Beitrag von: Billy am 14 Juni 2020, 16:09:05
Ich habe in Anlage mal ein Beispiel für Scripting basierend auf dem neuen Editor angehängt!

Billy
Titel: Antw:Tasmota mit Scripting
Beitrag von: Skusi am 31 Juli 2022, 10:43:41
Hallo zusammen,
ich gebe es nun auf und brauche mal die Hilfe von jemanden der sich mit Tasmota Scripts auskennt.
Ich habe mir die Erklärungen auf der Tasmota Seite nun schon Stundenlang angeschaut und rum probiert, aber bin zu keinem funktionierendem Ergebnis gekommen.

Ich lese meinen Stromzähler per Wemos D1 und Tasmota über das SML Protokeoll aus- Das funktioniert auch super. Nun brauche ich aber in Fhem die Leistung einmal als positives Reading in Bezug Richtung und separat einmal als positiven Wert in Einspeise Richtung. Mien Zähler gibt aber nur einen Wert raus der je nach Richtung sein Vorzeichen wechselt. Also negative Werte für Einspeisung und positive für Bezug.

Nun dachte ich das es doch das Einfachste wäre in Tasmota ein das Script mit einer if then Schleife zu erweitern die den entprechenden Wert in 2 weite Ausgaben erzeugt.

Hier mal mein Versuch (der leider nicht funktioniert):

>D
sum=sml[6]
bez=0
ein=0

>S
if sum > 0
then
bez=sum
ein=0
else
ein=sum *-1
bez=0
endif

=>Publish /%topic%/tele/Bezug %3bez%
=>Publish /%topic%/tele/Einspeisung %3ein%

>B
=>sensor53 r

>M 1
+1,3,s,0,9600,SML
1,77070100010800ff@1000,Verbrauch_Summe,kWh,Verbrauch_Summe,3
1,77070100020800ff@1000,Einspeisung_Summe,kWh,Einspeisung_Summe,3
1,=h--
1,77070100240700ff@1,Leistung_L1,W,Watt_L1,0
1,77070100380700ff@1,Leistung_L2,W,Watt_L2,0
1,770701004c0700ff@1,Leistung_L3,W,Watt_L3,0
1,77070100100700ff@1,Leistung_Summe,W,Watt_Summe,16
#


Irgenwie verstehe ich diese Syntax wohl falsch.

Kann mir bitte jemand auf die Sprünge helfen ???
Titel: Antw:Tasmota mit Scripting
Beitrag von: Skusi am 31 Juli 2022, 15:15:25
Hat sich mittlerweile erledigt.  :-\

Ich hatte beim flashen einen Fehler gemacht.

Das Skript sieht nun so aus und funktioniert !
>D
sum=0
bez=0
ein=0

>S
sum=sml[6]
if sum>0
then
bez=sum
ein=0
else
ein=sum*-1
bez=0
endif

=>Publish /%topic%/SENSOR/SML_Watt_Bezug %0bez%
=>Publish /%topic%/SENSOR/SML_Watt_Einspeisung %0ein%

>B
=>sensor53 r

>M 1
+1,3,s,0,9600,SML
1,77070100010800ff@1000,Verbrauch_Summe,kWh,Verbrauch_Summe,3
1,77070100020800ff@1000,Einspeisung_Summe,kWh,Einspeisung_Summe,3
1,=h--
1,77070100240700ff@1,Leistung_L1,W,Watt_L1,0
1,77070100380700ff@1,Leistung_L2,W,Watt_L2,0
1,770701004c0700ff@1,Leistung_L3,W,Watt_L3,0
1,77070100100700ff@1,Leistung_Summe,W,Watt_Summe,16
#


Falls es jemand braucht...
Titel: Antw:Tasmota mit Scripting
Beitrag von: Ralf9 am 14 August 2022, 10:34:29
Hallo,

ich möchte per Publish Werte zum MQTT2_FHEM_Server schicken, bei mir funktioniert dies aber nicht so wie gewünscht.

Ich verwende die tasmota Version 9.5.0

ich verwende in script zum Testen den folgenden code:
>D
var1 = 0

>S
if upsecs%20==0
then
var1 = 18
=>Publish ...
endif
...


mit folgendem Publish funktionierts
=>Publish sml/tasmota_5562F0/SENSOR/Watt 17
Im MQTT2_FHEM_Server kommt folgendes an:
in@192.168.0.14:56981 PUBLISH: 0"(0)(30)sml/tasmota_5562F0/SENSOR/Watt17
MQTT2_FHEM_Server_192.168.0.14_56981 DVES_5562F0 PUBLISH sml/tasmota_5562F0/SENSOR/Watt:17


Wenn ich aber mit Publish den Wert einer Variable übergeben will, kommt in fhem der Wert nicht an
=>Publish sml/tasmota_5562F0/SENSOR/Watt %var1%
oder
=>Publish sml/tasmota_5562F0/SENSOR/Watt %0var1%

Im MQTT2_FHEM_Server kommt folgendes an:
in@192.168.0.14:56981 PUBLISH: 0#(0)(30)sml/tasmota_5562F0/SENSOR/Watt???

Weiß jemand was da nicht passt?

Gruß Ralf

Titel: Antw:Tasmota mit Scripting
Beitrag von: Ralf9 am 14 August 2022, 10:51:15
Hab den Fehler gefunden, im Code darf vor und hinter dem = kein Leerzeichen stehen. Nun funkttionierts.