MQTT2 und Tasmota: hilfe mit einfacher Konfig: GELÖST

Begonnen von zgadgeter, 06 Oktober 2018, 14:10:44

Vorheriges Thema - Nächstes Thema

zgadgeter

Hallo, ich bitte um Hilfe, obwohl mancher sagen wird "Lesen", oder "Google".
Ich habe schon viel gelesen, https://wiki.fhem.de/wiki/MQTT2-Module_-_Praxisbeispiele aber nicht viel verstanden. Ich denk weil mir einige Grundkenntnisse fehlen....hoffe zumindest das es das ist...
Ich habe einige Sonoff Schalter umgeflascht auf Tasmota.
Ich habe jetzt MQTT2 entdeckt, was einfacher scheint als MQTT mit Broker...
Ich habe den MQTT2 Server gestarter, und mein FHEM hat direkt ein Tasmota device entdeckt. Im Tasmota habe ich folgendes Konfiguriert. Allerdings verstehe ich offenbar einige Grundeinstellung nicht. Ich habe folgender Beitrag gelesen, der mir sehr geholfen hat, fueht mich aber noch nicht zum Erfolg (Steuern/notify/twightlight/etc. von meinen Tasmota devices.
Frage ist, gibt es irgendwo eine noch einfachere Erklaerung wie ich die Tasmota devices in meinem FHEM konfiguriere, so das ich mit diesen devices die sonstigen FHEM Funktionen einsetzen kann (an/aus/notify/etc. etc.).
Danke und sorry für meine Amateurhafte Fragen....



Host ()
192.168.178.55
Port (1883)
1883
client (DVES_9B01BD)
DVES_%06X
Benutzer (DVES_USER)
DVES_USER
Passwort
•••••••••
topic = %topic% (sonoff)
sonoffkitchen
full topic (%prefix%/%topic%/)
%prefix%/%topic%/
NUC FHEM mit vielen Intertechno/FS20/Flamingo schalter
und Busware CUL und nanoCUL

Beta-User

Hi,

bisher habe ich noch kein Tasmota-Device, aber evtl. bekommen wir das zusammen hin ;) .

Hast du jetzt ein Tasmota-Device automatisch angelegt bekommen oder ein MQTT2_DEVICE?

Wenn ersteres: k.A., warum...
Wenn letzteres: Bitte ein list davon.

Dann wäre noch hilfreich zu wissen, auf welchen Topics so ein Tasmota-Gerät welche Befehle erwartet, also was mit mosquitto_pub auf der Konsole zu sehen wäre (oder einem anderen Programm, mit dem man den Verkehr auf dem Server mitlesen kann)

Des Pudels Kern ist das setList-Attribut (und ein paar andere, die damit zusammenspielen). Danach bestimmt sich, welche Befehle das MQTT2-Device überhaupt versteht ("on", "off", mache irgendwas für eine Timerdauer, sende einen IR-Code usw.).

Deswegen fände ich es gut, wenn wir gemeinsam den Wiki-Artikel entsprechend ergänzen könnten, gerne auch in eine Form, die für Leute verständlicher ist, die noch nie mit MQTT zu tun hatten.

Gruß, Beta-User
Server: HP-elitedesk@Debian 12, aktuelles FHEM@ConfigDB | CUL_HM (VCCU) | MQTT2: MiLight@ESP-GW, BT@OpenMQTTGw | MySensors: seriell, v.a. 2.3.1@RS485 | ZWave | ZigBee@deCONZ | SIGNALduino | MapleCUN | RHASSPY
svn: u.a MySensors, Weekday-&RandomTimer, Twilight,  div. attrTemplate-files

zgadgeter

#2
Hi und danke schonmal!
Also, ich habe den server Kreirt:
define m2server MQTT2_SERVER 1883 global
Danach habe ich den autocreate Attr bei dem m2server auf 1 gesetzt.
Darauf sind 3 neue devices erschienen in FHEM, also automatisch, und zwar in der MQTT2_SERVER Spalte
m2server_192.168.178.151_1271 Connected
m2server_192.168.178.152_16869 Connected
m2server_192.168.178.153_32658 Connected

Ich habe drei Tasmota devices am Strom.
In der MQTT2_DEVICE Spalte stehen folgendes devices:
MQTT2_DEVICE
MQTT2_DVES_115786  ???
MQTT2_DVES_9B01BD  ???
MQTT2_DVES_A2EB78  ???

Bei dem Server selbst steht:
m2server  Initialized

Ein List von einem device:
Internals:
   BUF       
   FD         13
   NAME       m2server_192.168.178.153_32658
   NR         68
   PEER       192.168.178.153
   PORT       32658
   SNAME      m2server
   SSL       
   STATE      Connected
   TEMPORARY  1
   TYPE       MQTT2_SERVER
   WBCallback
   cflags     238
   cid        DVES_9B01BD
   keepalive  15
   lastMsgTime 1538831332.17172
   lwt        tele/sonoffkitchen/LWT:offline
   protoNum   4
   protoTxt   MQTT
   usr        DVES_USER
   READINGS:
     2018-10-06 15:02:07   state           Connected
   subscriptions:
     cmnd/DVES_9B01BD/# 1538830927.3071
     cmnd/sonoffkitchen/# 1538830927.30515
     cmnd/sonoffs/# 1538830927.30636
Attributes:
   room       hidden


Zitat von: Beta-User am 06 Oktober 2018, 14:48:19
Dann wäre noch hilfreich zu wissen, auf welchen Topics so ein Tasmota-Gerät welche Befehle erwartet, also was mit mosquitto_pub auf der Konsole zu sehen wäre (oder einem anderen Programm, mit dem man den Verkehr auf dem Server mitlesen kann)
Da verliertst Du mich schon...deswegen denke ich das ich einige Kern Punkte noch nicht verstanden habe.
Uebrigens, ich habe keinen Broker oder sonst was installiert. Soweit ich das verstanden habe, funktioniert diese MQTT2 Module allein mit dem MQTT2 den man startet in FHEM.
danke nochmals!
NUC FHEM mit vielen Intertechno/FS20/Flamingo schalter
und Busware CUL und nanoCUL

Beta-User

Bitte ein list von (z.B.) MQTT2_DVES_115786
Das sollte einer der Tastmota-ESPs sein (der Server interessiert erst mal nicht, solange er auf autocreate steht.

Dass kein Broker außer MQTT2_SERVER installiert ist, ist schon klar und i.O.. Aber auch an dem kann mosquitto_sub lauschen ;) . (Und vermutlich auch senden, aber das habe ich noch nie gemacht.)
Server: HP-elitedesk@Debian 12, aktuelles FHEM@ConfigDB | CUL_HM (VCCU) | MQTT2: MiLight@ESP-GW, BT@OpenMQTTGw | MySensors: seriell, v.a. 2.3.1@RS485 | ZWave | ZigBee@deCONZ | SIGNALduino | MapleCUN | RHASSPY
svn: u.a MySensors, Weekday-&RandomTimer, Twilight,  div. attrTemplate-files

zgadgeter

Hi Sorry, hier das List von einem device, das mit der IP 192.168.178.53

Internals:
   CID        DVES_9B01BD
   DEF        DVES_9B01BD
   DEVICETOPIC MQTT2_DVES_9B01BD
   IODev      m2server
   LASTInputDev m2server
   MSGCNT     4
   NAME       MQTT2_DVES_9B01BD
   NR         25
   STATE      ???
   TYPE       MQTT2_DEVICE
   m2server_MSGCNT 4
   m2server_TIME 2018-10-06 15:43:56
   READINGS:
     2018-10-06 15:24:07   LWT             online
     2018-10-06 15:43:56   POWER           off
     2018-10-06 15:43:56   Time            2018-10-06T14:43:56
     2018-10-06 15:43:56   Uptime          1T07:16:36
     2018-10-06 15:43:56   Vcc             3.115
     2018-10-06 15:43:56   Wifi_AP         1
     2018-10-06 15:43:56   Wifi_APMac      E0:28:6D:75:EF:0F
     2018-10-06 15:43:56   Wifi_RSSI       70
     2018-10-06 15:43:56   Wifi_SSId       TBH7590
Attributes:
   IODev      m2server
   readingList DVES_9B01BD:tele/sonoffkitchen/STATE:.* { json2nameValue($EVENT) }
DVES_9B01BD:tele/sonoffkitchen/LWT:.* LWT
DVES_9B01BD:cmnd/sonoffkitchen/POWER:.* POWER
   room       MQTT2_DEVICE
NUC FHEM mit vielen Intertechno/FS20/Flamingo schalter
und Busware CUL und nanoCUL

Beta-User

OK, jetzt brauchen wir also das MQTT-Topic, auf dem Tasmota Befehle erwartet. Nach dem hier müßte es auf "cmnd" gehen; danach könnte das so aussehen:
DVES_9B01BD:tele/sonoffkitchen/cmnd

Versuche es mal mit folgendem:

attr DVES_9B01BD setList .* {"DVES_9B01BD:tele/sonoffkitchen/cmnd $EVENT}"}
attr DVES_9B01BD webCmd on:off
Server: HP-elitedesk@Debian 12, aktuelles FHEM@ConfigDB | CUL_HM (VCCU) | MQTT2: MiLight@ESP-GW, BT@OpenMQTTGw | MySensors: seriell, v.a. 2.3.1@RS485 | ZWave | ZigBee@deCONZ | SIGNALduino | MapleCUN | RHASSPY
svn: u.a MySensors, Weekday-&RandomTimer, Twilight,  div. attrTemplate-files

Mitch

FHEM im Proxmox Container

zgadgeter

#7
Zitat von: Beta-User am 06 Oktober 2018, 16:51:42
Versuche es mal mit folgendem:
attr DVES_9B01BD setList .* {"DVES_9B01BD:tele/sonoffkitchen/cmnd $EVENT}"}
attr DVES_9B01BD webCmd on:off


Habe folgendes eingegeben und wurde auch akzeptiert:

attr MQTT2_DVES_9B01BD setList .* {"MQTT2_DVES_9B01BD:tele/sonoffkitchen/cmnd $EVENT}"}
attr MQTT2_DVES_9B01BD webCmd on:off

Danach sehe ich in der Spalte MQTT_DEVICE:
MQTT2_DEVICE
MQTT2_DVES_115786  ???
MQTT2_DVES_9B01BD  ???  on  off
MQTT2_DVES_A2EB78  ???

Wenn ich allerdings auf on oder off druecke kommt ein Fenster mit folgendes:
Unknown argument on, choose one of .*
Ein list zeigt folgendes:


Internals:
   CID        DVES_9B01BD
   DEF        DVES_9B01BD
   DEVICETOPIC MQTT2_DVES_9B01BD
   IODev      m2server
   LASTInputDev m2server
   MSGCNT     6
   NAME       MQTT2_DVES_9B01BD
   NR         25
   STATE      ???
   TYPE       MQTT2_DEVICE
   m2server_MSGCNT 6
   m2server_TIME 2018-10-06 19:02:00
   READINGS:
     2018-10-06 18:49:01   LWT             online
     2018-10-06 18:59:53   POWER           off
     2018-10-06 19:02:00   Time            2018-10-06T18:02:00
     2018-10-06 19:02:00   Uptime          1T10:34:40
     2018-10-06 18:59:53   Vcc             3.116
     2018-10-06 18:59:53   Wifi_AP         1
     2018-10-06 18:59:53   Wifi_APMac      E0:28:6D:75:EF:0F
     2018-10-06 18:59:53   Wifi_RSSI       70
     2018-10-06 18:59:53   Wifi_SSId       TBH7590
Attributes:
   IODev      m2server
   readingList DVES_9B01BD:tele/sonoffkitchen/STATE:.* { json2nameValue($EVENT) }
DVES_9B01BD:tele/sonoffkitchen/LWT:.* LWT
DVES_9B01BD:cmnd/sonoffkitchen/POWER:.* POWER
DVES_9B01BD:tele/sonoffkitchen/UPTIME:.* { json2nameValue($EVENT) }
   room       MQTT2_DEVICE
   setList    .* {"MQTT2_DVES_9B01BD:tele/sonoffkitchen/cmnd $EVENT}"}
   webCmd     on:off

Danke fuer die Hilfe nochmals!
NUC FHEM mit vielen Intertechno/FS20/Flamingo schalter
und Busware CUL und nanoCUL

Beta-User

Zitat von: Mitch am 06 Oktober 2018, 17:13:32
Das hier könnte dir weiter helfen: https://forum.fhem.de/index.php/topic,90220.0.html
Bist du diesem Link mal gefolgt?

Der Versuch, alle "set"-Befehle über ".*" abzufangen war wohl keine so gute Idee. So sollte es lt. dem Thread dann gehen:
attr DVES_9B01BD setList on cmnd/sonoff/POWER on\
off cmnd/sonoff/POWER off\
reboot cmnd/sonoff/Restart 1

Um die Elemente dann direkt anzusteuern noch:
attr DVES_9B01BD webCmd on:off:reboot
Server: HP-elitedesk@Debian 12, aktuelles FHEM@ConfigDB | CUL_HM (VCCU) | MQTT2: MiLight@ESP-GW, BT@OpenMQTTGw | MySensors: seriell, v.a. 2.3.1@RS485 | ZWave | ZigBee@deCONZ | SIGNALduino | MapleCUN | RHASSPY
svn: u.a MySensors, Weekday-&RandomTimer, Twilight,  div. attrTemplate-files

zgadgeter

Zitat von: Beta-User am 07 Oktober 2018, 08:10:53
Bist du diesem Link mal gefolgt?
Ja, habe ich auch schon vorher probiert zu folgen, darueber habe ich gelernt den MQTT2 server/devices einzurichten.

Also dann, anstatt das:
attr MQTT2_DVES_9B01BD setList .* {"MQTT2_DVES_9B01BD:tele/sonoffkitchen/cmnd $EVENT}"}
Sollte ich folgendes eingeben:
attr MQTT2_DVES_9B01BD setList on cmnd/sonoff/POWER on\off cmnd/sonoff/POWER off\reboot cmnd/sonoff/Restart 1

Und danach:
Zitat von: Beta-User am 07 Oktober 2018, 08:10:53
attr MQTT2_DVES_9B01BD webCmd on:off:reboot

Frage ist, wie entferne ich die Sachen die ich vorher eingegeben habe? Sollte ich diese zuerst im raw view löschen?

danke.
NUC FHEM mit vielen Intertechno/FS20/Flamingo schalter
und Busware CUL und nanoCUL

Beta-User

Genau.

Entweder du klickst auf das jeweilige Attribut und änderst den Inhalt entsprechend (auf "attr" klicken nicht vergessen) oder über RAW, wobei ich letzteres für mehrere Änderungen bevorzuge. Es reicht auch, nur die geänderten Werte zu übernehmen, also den Code wie unten gepostet als einzige in die RAW-Zeilen einzugeben und "execute"...
Server: HP-elitedesk@Debian 12, aktuelles FHEM@ConfigDB | CUL_HM (VCCU) | MQTT2: MiLight@ESP-GW, BT@OpenMQTTGw | MySensors: seriell, v.a. 2.3.1@RS485 | ZWave | ZigBee@deCONZ | SIGNALduino | MapleCUN | RHASSPY
svn: u.a MySensors, Weekday-&RandomTimer, Twilight,  div. attrTemplate-files

zgadgeter

Ok, genau so gemacht, keine Fehler.
Jetzt habe ich folgendes in der MQTT2_DEVICE box:

MQTT2_DEVICE
MQTT2_DVES_9B01BD  on  off  reboot
sonoffs20_1  ???
sonoffs20_2  ???

Die anderen zwei Tasmota devices hatte ich umbenannt.
Allerdings wenn ich auf On druecke geht das licht nicht an, und in dem Event Monitor kommt
2018-10-07 08:33:45 MQTT2_DEVICE MQTT2_DVES_9B01BD on
Wenn ich danch auf Off druecke kommt ein kleines fenster mit:
Unknown argument off, choose one of on
Im Log file sind keine Eintraege...

Ein List vom device:
Internals:
   CID        DVES_9B01BD
   DEF        DVES_9B01BD
   DEVICETOPIC MQTT2_DVES_9B01BD
   IODev      m2server
   LASTInputDev m2server
   MSGCNT     195
   NAME       MQTT2_DVES_9B01BD
   NR         25
   STATE      on
   TYPE       MQTT2_DEVICE
   m2server_MSGCNT 195
   m2server_TIME 2018-10-07 08:37:26
   READINGS:
     2018-10-07 08:16:31   LWT             online
     2018-10-07 08:37:26   POWER           off
     2018-10-07 08:37:26   Time            2018-10-07T07:37:26
     2018-10-07 08:37:26   Uptime          2T00:10:06
     2018-10-07 08:37:26   Vcc             3.116
     2018-10-07 08:37:26   Wifi_AP         1
     2018-10-07 08:37:26   Wifi_APMac      E0:28:6D:75:EF:0F
     2018-10-07 08:37:26   Wifi_RSSI       68
     2018-10-07 08:37:26   Wifi_SSId       TBH7590
     2018-10-07 08:36:43   state           on
Attributes:
   IODev      m2server
   readingList DVES_9B01BD:tele/sonoffkitchen/STATE:.* { json2nameValue($EVENT) }
DVES_9B01BD:tele/sonoffkitchen/LWT:.* LWT
DVES_9B01BD:cmnd/sonoffkitchen/POWER:.* POWER
DVES_9B01BD:tele/sonoffkitchen/UPTIME:.* { json2nameValue($EVENT) }
DVES_9B01BD:stat/sonoffkitchen/RESULT:.* { json2nameValue($EVENT) }
DVES_9B01BD:stat/sonoffkitchen/POWER:.* POWER
   room       MQTT2_DEVICE
   setList    on cmnd/sonoff/POWER on\off cmnd/sonoff/POWER off\reboot cmnd/sonoff/Restart 1
   webCmd     on:off:reboot
NUC FHEM mit vielen Intertechno/FS20/Flamingo schalter
und Busware CUL und nanoCUL

Beta-User

Die setList sollte mehrzeilig sein; ob das so ist, kann ich hier nicht so recht erkennen, scheint aber nicht so...
Server: HP-elitedesk@Debian 12, aktuelles FHEM@ConfigDB | CUL_HM (VCCU) | MQTT2: MiLight@ESP-GW, BT@OpenMQTTGw | MySensors: seriell, v.a. 2.3.1@RS485 | ZWave | ZigBee@deCONZ | SIGNALduino | MapleCUN | RHASSPY
svn: u.a MySensors, Weekday-&RandomTimer, Twilight,  div. attrTemplate-files

zgadgeter

Hi, also im RAW steht folgendes, also die setList ist nicht mehrzeiligh.
defmod MQTT2_DVES_9B01BD MQTT2_DEVICE DVES_9B01BD
attr MQTT2_DVES_9B01BD IODev m2server
attr MQTT2_DVES_9B01BD readingList DVES_9B01BD:tele/sonoffkitchen/STATE:.* { json2nameValue($EVENT) }\
DVES_9B01BD:tele/sonoffkitchen/LWT:.* LWT\
DVES_9B01BD:cmnd/sonoffkitchen/POWER:.* POWER\
DVES_9B01BD:tele/sonoffkitchen/UPTIME:.* { json2nameValue($EVENT) }\
DVES_9B01BD:stat/sonoffkitchen/RESULT:.* { json2nameValue($EVENT) }\
DVES_9B01BD:stat/sonoffkitchen/POWER:.* POWER
attr MQTT2_DVES_9B01BD room MQTT2_DEVICE
attr MQTT2_DVES_9B01BD setList on cmnd/sonoff/POWER on\off cmnd/sonoff/POWER off\reboot cmnd/sonoff/Restart 1
attr MQTT2_DVES_9B01BD webCmd on:off:reboot
NUC FHEM mit vielen Intertechno/FS20/Flamingo schalter
und Busware CUL und nanoCUL

Beta-User

Server: HP-elitedesk@Debian 12, aktuelles FHEM@ConfigDB | CUL_HM (VCCU) | MQTT2: MiLight@ESP-GW, BT@OpenMQTTGw | MySensors: seriell, v.a. 2.3.1@RS485 | ZWave | ZigBee@deCONZ | SIGNALduino | MapleCUN | RHASSPY
svn: u.a MySensors, Weekday-&RandomTimer, Twilight,  div. attrTemplate-files