[Modul 4.3] Tasmota

@Christian, ich weiß noch nicht was da passiert. Ich hatte noch keine Gelegenheit mir das anzuschauen.

@someone, ich glaube das ist nur eine Einstellung im Broker. Könnte das vielleicht die Einstellung persistence sein? Dort speichert der Broker die Werte in einer Datenbank. Oder meinst du wenn du aus IPS schaltest und das Gerät nicht per WLAN erreichbar ist, dass dann sobald es erreichbar ist der Schaltbefehl übermittelt wird? Da wüsste ich zur Zeit nicht wie das gehen soll.
Wenn ich die Messages anders auswerten musst und du weitere Informationen darüber hast, dann lass mir diese einfach zukommen, dann schau ich mir das an.

Grüße,
Kai

Hallo Kai,

mach Dir keinen Streß, das eilt nicht. Wir sind ja hier im Hobby unterwegs, und Du machst das alles je nebenher. Dein Support hier ist eh superspitzenklasseperfekt.

Gruß
Christian

Du kannst ja einfach mal ein IPS_LogMessage an der Stelle einbauen und das mitloggen.
Einfach mal die Variablen $Meldungsname, $Daten, $Category loggen und dann schauen was da drin steht.

Grüße,
Kai

@someone, ich glaube das ist nur eine Einstellung im Broker. Könnte das vielleicht die Einstellung persistence sein? Dort speichert der Broker die Werte in einer Datenbank. Oder meinst du wenn du aus IPS schaltest und das Gerät nicht per WLAN erreichbar ist, dass dann sobald es erreichbar ist der Schaltbefehl übermittelt wird? Da wüsste ich zur Zeit nicht wie das gehen soll.
Wenn ich die Messages anders auswerten musst und du weitere Informationen darüber hast, dann lass mir diese einfach zukommen, dann schau ich mir das an.

Hallo Kai,

letzteres meine ich. Wenn das Gerät nicht im WLAN war und sich wieder am Broker anmeldet, bekäme es mit einer Retained Message den zuletzt gewünschten Status sozusagen.
Retained wird pro queue und nur jeweils die letzte Nachricht. Das würde für Dein Konzept ganz gut passen, da ja jedes Device eine separate Queue nutzt.

Das setzen des Retained Flags passiert beim Senden aus der MQTT API heraus. Hier ist es ganz gut beschrieben:

MQTT Essentials Part 8: Retained Messages

Ich teste gerne :slight_smile:

Hallo,

ah okay, es muss nur ein Flag gesetzt werden.
Schaue ich mir an. Versprechen tu ich noch nichts. Aber am besten wäre es dann ja, wenn es in der Instanz einstellbar ist.

Grüße,
Kai

Gesendet von iPhone mit Tapatalk

Laut Tasmota Wiki gibt es ein Flag was im Tasmota Device gesetzt werden muss:
PowerRetain1 / onEnable MQTT power retain on status update

Per Default ist es deaktiviert.

Ja, das könnte man dann über die Instanz auch setzen.
Aber der MQTT Client muss das Flag auch bei senden setzen, wenn ich das richtig verstanden habe. Ich weiß aber noch nicht ob das im Client schon drin ist. Das schaue ich mir aber an.

Grüße,
Kai

Gesendet von iPhone mit Tapatalk

Hallo Kai,

ich habe mal IPS_LogMessage eingebaut, aber ich kann im Log nichts finden. Die Fehler kommen jede Nacht, aber im Log sind meine Variablen nicht drin. Keine Ahnung, was da passiert.

Ich muss mir das noch mal in Ruhe ansehen.

Gruß
Christian

Hallo,

ich wollte über einen Scritp-Timer einen S20 an und ausschalten.

mit setvalue schaltet zwar die Variable im WF und Baum um, aber der Stecker bleibt aus.

setvalueboolean hatt ich auch. auch mit True und 1 versucht. mit was schalte ich den Sonoff aus einem Script heraus.

wird es für Tasmota in der Symcon Doku auch eine "Befehlsreferenz geben wie für FS20, KNX …?

Gruß

Oliver

Die Doku befindet sich in den Modulen auf Github.

IPS-Tasmota/IPS-Tasmota at master · Schnittcher/IPS-Tasmota · GitHub

danke,

:banghead: da hab ich nicht gesucht, hier im Forum fast zu Tode geblättert und es wär so einfach gewesen :smiley:

Oliver

Moin Kai,

teste gerade dein Tasmota Modul - lassen sich damit auch die Thresholds (z.B. PowerLow) auswerten ?

Grüße,
Tom

Hallo,

wen die Tasmota Firmware da etwas hergibt, kann man das sicherlich im Modul einbauen, wenn du Infos dazu hast immer her damit. :wink:

Grüße,
Kai

Naja, es gibt ja in Tasmota zig Thresholds, z.B. PowerLow und PowerHigh. Die lassen sich dann setzen, z.B. mit „PowerLow 100“ eben für 100W. Werden dann 100W unterschritten, gibt es eine entsprechende MQTT Meldung (PowerLow ON und PowerLow OFF)

Aber jetzt, wo ich das schreibe, weiß ich ehrlich gesagt gar nicht mehr, ob das für das Modul so gewinnbringend ist: Geht ja schließlich in IPS Mit den Ereignissen auch sehr schön.

Könnte man aber einbauen, ich hatte mal kurz im Tasmota Wiki geguckt.
Also wenn Bedarf besteht, dann kann ich das tun.

Grüße,
Kai

Moin Tom,

wenn ich das richtig sehe, kann man beim POW damit auch abschalten z.B. bei eingesteller Überlast. Aber das würde ich lieber in Symcon, und dort die Eistellungen bedienbar machen. Der Vorteil es im POW zu machen, ist halt wenn IPS mal nicht läuft, macht es das von allein.
Also mal überlegen, macht es Sinn es einzubauen ?
POW’s sind hier vorhanden, also könnte Kai damit spielen.
UPPS, da fällt mir gleich ne Anwendung ein, Kai’s Poolpumpe, wenn der Filter zu ist, steigt die Leistung doch echt an.
Da könnte ne Abschaltung Sinn machen, mit IPS-Meldung „Kai, mach den Poolfilter sauber“.:smiley:

Hallo Kai,

ich versuche gerade über den Befehl „TasmotaLED_sendMQTTCommand“ einen Befehl abzusetzen.

Hier ist Deine Doku auf Git noch nicht ganz korrekt. Es werden drei Parameter erwartet, Du hast aber nur einen und den fehlerhaft angegeben

Aktuell:

TasmotaLED_sendMQTTCommand("POWER "ON");

Korrekt wäre :

TasmotaLED_sendMQTTCommand(25537, "POWER", "ON");

Das ist in der Beschreibung zum normalen Modul auch nicht korrekt.

Aber: Setze ich ein:

TasmotaLED_sendMQTTCommand(59971, "COLOR",  "000000FF");

gegen ein H801 Modul ab, welches einen Kanal für Weiss hat erhalte ich folgende Fehlermeldung.

21.12.2018, 13:51:53 | PHP | Error: Notice: Undefined offset: 1
Error in Script /var/lib/symcon/modules/IPS-Tasmota/IPS-TasmotaLED/module.php on Line 126
134 in IPSLibrary/app/core/IPSLogger/IPSLogger.inc.php (call IPSLogger_Out)
44 in IPSLibrary/app/core/IPSLogger/IPSLogger_PhpErrorHandler.inc.php (call IPSLogger_Err)
126 in modules/IPS-Tasmota/IPS-TasmotaLED/module.php (call IPSLogger_PhpErrorHandler)
3 in /- (call ReceiveData)

21.12.2018, 13:51:53 | PHP | Error: Notice: Undefined offset: 2
Error in Script /var/lib/symcon/modules/IPS-Tasmota/IPS-TasmotaLED/module.php on Line 126
134 in IPSLibrary/app/core/IPSLogger/IPSLogger.inc.php (call IPSLogger_Out)
44 in IPSLibrary/app/core/IPSLogger/IPSLogger_PhpErrorHandler.inc.php (call IPSLogger_Err)
126 in modules/IPS-Tasmota/IPS-TasmotaLED/module.php (call IPSLogger_PhpErrorHandler)
3 in /- (call ReceiveData)

Der Wert wird korrekt gesetzt, und ich erhalte ein Weiss als Farbe.
Hast Du dazu eine Idee?

Gruß
Christian

Hallo,

das mit der Doku habe ich voll vergessen, hat schon Mal jemand erwähnt.
Die Farbe wird aber nur in IPS falsch angezeigt oder? Hast du zufäälig die aktuellst Firmware von Tasmota auf dem Gerät? Ich habe das Gefühl, dass sich dort etwas geändert hat.
Bzw. werte ich anscheinend die Farbe falsch aus, ich erwarte einen RGB Wert.

Kannst du mir mal das Debug Log zukommen lassen?
Ich möchte mal sehen, wie die Farbe vom Tasmota Gerät im Modul ankommt.

Grüße,
Kai

Hallo Kai,

anbei das Log:


TXT: 21.12.2018, 14:52:16 |      sendMQTTCommand | {"Topic":"cmnd\/RADESP001\/COLOR","MSG":"000000FF"}
HEX: 21.12.2018, 14:52:16 |      sendMQTTCommand | 7B 22 54 6F 70 69 63 22 3A 22 63 6D 6E 64 5C 2F 52 41 44 45 53 50 30 30 31 5C 2F 43 4F 4C 4F 52 22 2C 22 4D 53 47 22 3A 22 30 30 30 30 30 30 46 46 22 7D 
TXT: 21.12.2018, 14:52:16 |     ReceiveData JSON | {"DataID":"{018EF6B5-AB94-40C6-AA53-46943E824ACF}","Buffer":"{\"TOPIC\":\"cmnd\\/RADESP001\\/COLOR\",\"MSG\":\"000000FF\",\"SENDER\":\"MQTT_GET_PAYLOAD\"}"}
HEX: 21.12.2018, 14:52:16 |     ReceiveData JSON | 7B 22 44 61 74 61 49 44 22 3A 22 7B 30 31 38 45 46 36 42 35 2D 41 42 39 34 2D 34 30 43 36 2D 41 41 35 33 2D 34 36 39 34 33 45 38 32 34 41 43 46 7D 22 2C 22 42 75 66 66 65 72 22 3A 22 7B 5C 22 54 4F 50 49 43 5C 22 3A 5C 22 63 6D 6E 64 5C 5C 2F 52 41 44 45 53 50 30 30 31 5C 5C 2F 43 4F 4C 4F 52 5C 22 2C 5C 22 4D 53 47 5C 22 3A 5C 22 30 30 30 30 30 30 46 46 5C 22 2C 5C 22 53 45 4E 44 45 52 5C 22 3A 5C 22 4D 51 54 54 5F 47 45 54 5F 50 41 59 4C 4F 41 44 5C 22 7D 22 7D 
TXT: 21.12.2018, 14:52:16 |                Topic | cmnd/RADESP001/COLOR
HEX: 21.12.2018, 14:52:16 |                Topic | 63 6D 6E 64 2F 52 41 44 45 53 50 30 30 31 2F 43 4F 4C 4F 52 
TXT: 21.12.2018, 14:52:17 |     ReceiveData JSON | {"DataID":"{018EF6B5-AB94-40C6-AA53-46943E824ACF}","Buffer":"{\"TOPIC\":\"stat\\/RADESP001\\/RESULT\",\"MSG\":\"{\\\"POWER\\\":\\\"ON\\\",\\\"Dimmer\\\":100,\\\"Color\\\":\\\"000000FF00\\\",\\\"HSBColor\\\":\\\"0,0,0\\\",\\\"Channel\\\":[0,0,0,100,0],\\\"CT\\\":153}\",\"SENDER\":\"MQTT_GET_PAYLOAD\"}"}
HEX: 21.12.2018, 14:52:17 |     ReceiveData JSON | 7B 22 44 61 74 61 49 44 22 3A 22 7B 30 31 38 45 46 36 42 35 2D 41 42 39 34 2D 34 30 43 36 2D 41 41 35 33 2D 34 36 39 34 33 45 38 32 34 41 43 46 7D 22 2C 22 42 75 66 66 65 72 22 3A 22 7B 5C 22 54 4F 50 49 43 5C 22 3A 5C 22 73 74 61 74 5C 5C 2F 52 41 44 45 53 50 30 30 31 5C 5C 2F 52 45 53 55 4C 54 5C 22 2C 5C 22 4D 53 47 5C 22 3A 5C 22 7B 5C 5C 5C 22 50 4F 57 45 52 5C 5C 5C 22 3A 5C 5C 5C 22 4F 4E 5C 5C 5C 22 2C 5C 5C 5C 22 44 69 6D 6D 65 72 5C 5C 5C 22 3A 31 30 30 2C 5C 5C 5C 22 43 6F 6C 6F 72 5C 5C 5C 22 3A 5C 5C 5C 22 30 30 30 30 30 30 46 46 30 30 5C 5C 5C 22 2C 5C 5C 5C 22 48 53 42 43 6F 6C 6F 72 5C 5C 5C 22 3A 5C 5C 5C 22 30 2C 30 2C 30 5C 5C 5C 22 2C 5C 5C 5C 22 43 68 61 6E 6E 65 6C 5C 5C 5C 22 3A 5B 30 2C 30 2C 30 2C 31 30 30 2C 30 5D 2C 5C 5C 5C 22 43 54 5C 5C 5C 22 3A 31 35 33 7D 5C 22 2C 5C 22 53 45 4E 44 45 52 5C 22 3A 5C 22 4D 51 54 54 5F 47 45 54 5F 50 41 59 4C 4F 41 44 5C 22 7D 22 7D 
TXT: 21.12.2018, 14:52:17 |                Topic | stat/RADESP001/RESULT
HEX: 21.12.2018, 14:52:17 |                Topic | 73 74 61 74 2F 52 41 44 45 53 50 30 30 31 2F 52 45 53 55 4C 54 
TXT: 21.12.2018, 14:52:17 | Receive Result: POWER | ON
HEX: 21.12.2018, 14:52:17 | Receive Result: POWER | 4F 4E 
TXT: 21.12.2018, 14:52:17 | Receive Result: Dimmer | 100
HEX: 21.12.2018, 14:52:17 | Receive Result: Dimmer | 31 30 30 
TXT: 21.12.2018, 14:52:17 | Receive Result: Color | 000000FF00
HEX: 21.12.2018, 14:52:17 | Receive Result: Color | 30 30 30 30 30 30 46 46 30 30 

Ich habe im Zeitraum des Log ein

TasmotaLED_sendMQTTCommand(59971, "COLOR",  "000000FF");

ausgeführt. Als Firmware habe ich die 6.3.0 drauf.

Gruß
Christian

Hallo Christian,
kannst du mal :
TasmotaLED_setColorHex(44865, „ffff00ff“);

probieren ? Id an deine anpassen.
Haben hier nur 3 Kanäle, daher kann ich nichts sehen…

Und bitte noch :
TasmotaLED_sendMQTTCommand(44865, „color“, „0,255,0,255“);