hi,
ich habe einen Sonoff Basic mit Tasmota geflasht und mit einem Sensor verbunden. Die Einbindung in mein Netzwerk gelingt auch (Bild 1 und 2). Danach habe ich versucht diese Anleitung zu befolgen:
https://wiki.fhem.de/wiki/MQTT2-Module_-_Praxisbeispiele#Tasmota
Mir gelingt auch die Anlage eines MQTT2_FHEM_Servers und die Modifikation eines Devices (Bild 3 und 4). Nur klappt die Kommunikation mit dem Schalter nicht. D. h. ich bekomme keine Readings und kann ihn nicht schalten.
Was mache ich falsch?
Besten Dank
MQTT Host 192.168.2.114// fehlt bei dir das ist z.B. meiner
MQTT Port 1883
MQTT-Benutzer DVES_USER
MQTT Host --> dein Host MQTT2 ?
Das hat so halb funktioniert. Jetzt bekomme ich alle Readings angezeigt. Ich kann den Schalter aber immer noch nicht erfolgreich schalten. D. h. da muss noch ein Fehler sein.
bitte keine screenshots.
ein
list devicename
hier in einen codeblock [#]
verpackt, liest sich viel schöner und es steckt mehr information drin.
So?
defmod MQTT2_DVES_3C10FE MQTT2_DEVICE DVES_3C10FE
attr MQTT2_DVES_3C10FE IODev MQTT2_FHEM_Server
attr MQTT2_DVES_3C10FE readingList DVES_3C10FE:tele/sonoffkitchen/STATE:.* { json2nameValue($EVENT) }\
DVES_3C10FE:tele/sonoffkitchen/LWT:.* LWT\
DVES_3C10FE:cmnd/sonoffkitchen/POWER:.* POWER\
DVES_3C10FE:tele/sonoffkitchen/UPTIME:.* { json2nameValue($EVENT) }\
DVES_3C10FE:tele/sonoffkitchen/SENSOR:.* { json2nameValue($EVENT) }\
DVES_3C10FE:tele/sonoffkitchen/INFO1:.* { json2nameValue($EVENT) }\
DVES_3C10FE:tele/sonoffkitchen/INFO2:.* { json2nameValue($EVENT) }\
DVES_3C10FE:tele/sonoffkitchen/INFO3:.* { json2nameValue($EVENT) }\
DVES_3C10FE:stat/sonoffkitchen/RESULT:.* { json2nameValue($EVENT) }\
DVES_3C10FE:stat/sonoffkitchen/STATE:.* { json2nameValue($EVENT) }\
\
DVES_3C10FE:tele/sonoff/LWT:.* LWT\
DVES_3C10FE:cmnd/sonoff/POWER:.* POWER\
DVES_3C10FE:tele/sonoff/INFO1:.* { json2nameValue($EVENT) }\
DVES_3C10FE:tele/sonoff/INFO2:.* { json2nameValue($EVENT) }\
DVES_3C10FE:tele/sonoff/INFO3:.* { json2nameValue($EVENT) }\
DVES_3C10FE:stat/sonoff/RESULT:.* { json2nameValue($EVENT) }\
DVES_3C10FE:stat/sonoff/POWER:.* POWER\
DVES_3C10FE:tele/sonoff/STATE:.* { json2nameValue($EVENT) }\
DVES_3C10FE:tele/sonoff/SENSOR:.* { json2nameValue($EVENT) }\
DVES_3C10FE:tele/sonoff/UPTIME:.* { json2nameValue($EVENT) }
attr MQTT2_DVES_3C10FE room Schaltzentrale
attr MQTT2_DVES_3C10FE setList on cmnd/sonoff/POWER on\\
off cmnd/sonoff/POWER off\\
reboot cmnd/sonoff/Restart 1
attr MQTT2_DVES_3C10FE webCmd on:off:reboot
setstate MQTT2_DVES_3C10FE off
setstate MQTT2_DVES_3C10FE 2019-06-23 17:01:40 FallbackTopic cmnd/DVES_3C10FE_fb/
setstate MQTT2_DVES_3C10FE 2019-06-23 17:01:40 GroupTopic sonoffs
setstate MQTT2_DVES_3C10FE 2019-06-23 17:01:40 Hostname sonoff-4350
setstate MQTT2_DVES_3C10FE 2019-06-23 17:01:40 IPAddress 192.168.2.106
setstate MQTT2_DVES_3C10FE 2019-06-23 17:01:40 LWT Online
setstate MQTT2_DVES_3C10FE 2019-06-23 17:28:18 LoadAvg 19
setstate MQTT2_DVES_3C10FE 2019-06-23 17:01:40 Module Sonoff Basic
setstate MQTT2_DVES_3C10FE 2019-06-23 17:28:18 POWER OFF
setstate MQTT2_DVES_3C10FE 2019-06-23 17:01:40 RestartReason Software/System restart
setstate MQTT2_DVES_3C10FE 2019-06-23 17:28:18 SCD30_CarbonDioxide 631
setstate MQTT2_DVES_3C10FE 2019-06-23 17:28:18 SCD30_Humidity 41.7
setstate MQTT2_DVES_3C10FE 2019-06-23 17:28:18 SCD30_Temperature 29.6
setstate MQTT2_DVES_3C10FE 2019-06-23 17:28:18 SCD30_eCO2 602
setstate MQTT2_DVES_3C10FE 2019-06-23 17:28:18 Sleep 50
setstate MQTT2_DVES_3C10FE 2019-06-23 17:28:18 SleepMode Dynamic
setstate MQTT2_DVES_3C10FE 2019-06-23 17:28:18 TempUnit C
setstate MQTT2_DVES_3C10FE 2019-06-23 17:28:18 Time 2019-06-23T16:28:18
setstate MQTT2_DVES_3C10FE 2019-06-23 17:28:18 Uptime 0T00:26:43
setstate MQTT2_DVES_3C10FE 2019-06-23 17:01:40 Version 6.5.0(release-sensors)
setstate MQTT2_DVES_3C10FE 2019-06-23 17:01:40 WebServerMode Admin
setstate MQTT2_DVES_3C10FE 2019-06-23 17:28:18 Wifi_AP 1
setstate MQTT2_DVES_3C10FE 2019-06-23 17:28:18 Wifi_BSSId EC:CB:30:EE:D1:69
setstate MQTT2_DVES_3C10FE 2019-06-23 17:28:18 Wifi_Channel 1
setstate MQTT2_DVES_3C10FE 2019-06-23 17:28:18 Wifi_Downtime 0T00:00:04
setstate MQTT2_DVES_3C10FE 2019-06-23 17:28:18 Wifi_LinkCount 1
setstate MQTT2_DVES_3C10FE 2019-06-23 17:28:18 Wifi_RSSI 64
setstate MQTT2_DVES_3C10FE 2019-06-23 17:28:18 Wifi_SSId aurum
setstate MQTT2_DVES_3C10FE 2019-06-23 17:03:24 state off
Schalten geht nicht automatisch, da das Protokoll die moeglichen Befehle nicht beschreibt.
Bei MQTT2_DEVICE muss dafuer ein setList Attribut passend gesetzt werden.
Es gibt aber Hilfe per "set attrTemplate", man muss nur das richtige Garaet aus der Auswahlliste aussuchen (z.Bsp. A_01_tasmota_basic)
Zitat von: rudolfkoenig am 23 Juni 2019, 17:38:55
Schalten geht nicht automatisch, da das Protokoll die moeglichen Befehle nicht beschreibt.
Bei MQTT2_DEVICE muss dafuer ein setList Attribut passend gesetzt werden.
Es gibt aber Hilfe per "set attrTemplate", man muss nur das richtige Garaet aus der Auswahlliste aussuchen (z.Bsp. A_01_tasmota_basic)
Bei mir funktioniert das auch nicht!
Das Device wird automatisch angelegt und die Eigenschaften des Devices auch ausgelesen.
Aber ein
set attrTemplate A_01_tasmota_basic gelingt nicht. Es wird statt dessen das Template bzw. model
A_01a_tasmota_basic_state_power1 eingestellt.
CFGFN
CID DVES_C8DF9C
DEF DVES_C8DF9C
DEVICETOPIC MQTT2_DVES_C8DF9C
FUUID 5d169184-f33f-3629-058b-9f7d1fa66541a9b4
IODev MQTT2_FHEM_Server
NAME MQTT2_DVES_C8DF9C
NR 5446
STATE set_off
TYPE MQTT2_DEVICE
OLDREADINGS:
READINGS:
2019-06-29 00:20:42 state set_off
Attributes:
IODev MQTT2_FHEM_Server
autocreate 0
model A_01a_tasmota_basic_state_power1
readingList tele/%prefix%/LWT:.* LWT
tele/%prefix%/STATE:.* { json2nameValue($EVENT) }
tele/%prefix%/SENSOR:.* { json2nameValue($EVENT) }
tele/%prefix%/INFO.:.* { json2nameValue($EVENT) }
stat/%prefix%/RESULT:.* { json2nameValue($EVENT) }
room MQTT2_DEVICE
setList off:noArg cmnd/%prefix%/POWER1 0
on:noArg cmnd/%prefix%/POWER1 1
toggle:noArg cmnd/%prefix%/POWER1 2
setStateList on off toggle
stateFormat POWER1
Lösche bitte mal nochmals das device, rebootet danach FHEM neu und lass danach das device erneut anlegen. Danach bitte ein list von dem neuen device.
Dann Template zuweisen und nochmals beide list hier posten.
Esp-Konfiguration prüfen...
%prefix% kommt von dort. Sonst m.e. ok
Zitat von: DasQ am 29 Juni 2019, 07:51:54
Lösche bitte mal nochmals das device, rebootet danach FHEM neu und lass danach das device erneut anlegen. Danach bitte ein list von dem neuen device.
Dann Template zuweisen und nochmals beide list hier posten.
Nach Neustart:
list MQTT2_FHEM_Server
CONNECTS 1
DEF 1883 global
FD 17
FUUID 5d166809-f33f-3629-3963-24f77023bd1f25cb
NAME MQTT2_FHEM_Server
NR 65
PORT 1883
STATE Initialized
TYPE MQTT2_SERVER
READINGS:
2019-06-29 08:42:10 RETAIN {"tele/%prefix%/%topic%/LWT":"Online","tele/_prefix_/_topic_/LWT":"Online","tele/sonoff/LWT":"Online"}
2019-06-29 08:42:10 nrclients 1
2019-06-29 08:42:04 state Initialized
clients:
MQTT2_FHEM_Server_192.112.24.6_17580 1
retain:
tele/%prefix%/%topic%/LWT:
ts 1561790530.24617
val Online
tele/_prefix_/_topic_/LWT:
ts 1561790525.17917
val Online
tele/sonoff/LWT:
ts 1561790525.17917
val Online
Attributes:
room MQTT
list MQTT2_DVES_C8DF9C
CFGFN
CID DVES_C8DF9C
DEF DVES_C8DF9C
DEVICETOPIC MQTT2_DVES_C8DF9C
FUUID 5d170843-f33f-3629-17c6-e49053565b445536
IODev MQTT2_FHEM_Server
NAME MQTT2_DVES_C8DF9C
NR 71
STATE ???
TYPE MQTT2_DEVICE
READINGS:
2019-06-29 08:42:11 LWT Online
2019-06-29 08:42:15 LoadAvg 19
2019-06-29 08:42:15 POWER OFF
2019-06-29 08:42:15 Sleep 50
2019-06-29 08:42:15 SleepMode Dynamic
2019-06-29 08:42:15 Time 2019-06-29T07:42:14
2019-06-29 08:42:15 Uptime 0T09:15:19
2019-06-29 08:42:15 Vcc 3.161
2019-06-29 08:42:15 Wifi_AP 1
2019-06-29 08:42:15 Wifi_BSSId 50:C7:BF:52:A3:C2
2019-06-29 08:42:15 Wifi_Channel 11
2019-06-29 08:42:15 Wifi_Downtime 0T00:00:06
2019-06-29 08:42:15 Wifi_LinkCount 1
2019-06-29 08:42:15 Wifi_RSSI 28
2019-06-29 08:42:15 Wifi_SSId mywlan
Attributes:
IODev MQTT2_FHEM_Server
readingList DVES_C8DF9C:tele/%prefix%/%topic%/LWT:.* LWT
DVES_C8DF9C:cmnd/%prefix%/%topic%/POWER:.* POWER
DVES_C8DF9C:tele/%prefix%/%topic%/STATE:.* { json2nameValue($EVENT) }
room MQTT2_DEVICE
Nach
set attrTemplate A_01_tasmota_basic list MQTT2_DVES_C8DF9C
CFGFN
CID DVES_C8DF9C
DEF DVES_C8DF9C
DEVICETOPIC MQTT2_DVES_C8DF9C
FUUID 5d170843-f33f-3629-17c6-e49053565b445536
IODev MQTT2_FHEM_Server
NAME MQTT2_DVES_C8DF9C
NR 71
STATE POWER1
TYPE MQTT2_DEVICE
OLDREADINGS:
READINGS:
Attributes:
IODev MQTT2_FHEM_Server
autocreate 0
model A_01a_tasmota_basic_state_power1
readingList tele/%prefix%/LWT:.* LWT
tele/%prefix%/STATE:.* { json2nameValue($EVENT) }
tele/%prefix%/SENSOR:.* { json2nameValue($EVENT) }
tele/%prefix%/INFO.:.* { json2nameValue($EVENT) }
stat/%prefix%/RESULT:.* { json2nameValue($EVENT) }
room MQTT2_DEVICE
setList off:noArg cmnd/%prefix%/POWER1 0
on:noArg cmnd/%prefix%/POWER1 1
toggle:noArg cmnd/%prefix%/POWER1 2
setStateList on off toggle
stateFormat POWER1
Bitte ein Screenshot von deim tasmota, Konfiguration MQTT
Zitat von: DasQ am 29 Juni 2019, 09:03:31
Bitte ein Screenshot von deim tasmota, Konfiguration MQTT
Ich habe die IP bei
Hosteingetragen.
da ist dein problem,
das %prefix% hat beim topic nix verlohren (müsst mich schon schwer täuschen, wenn das original so ist)
Zitat von: Beta-User am 29 Juni 2019, 08:10:15
Esp-Konfiguration prüfen...
%prefix% kommt von dort. Sonst m.e. ok
Zitat von: DasQ am 29 Juni 2019, 09:59:32
da ist dein problem,
das %prefix% hat beim topic nix verlohren (müsst mich schon schwer täuschen, wenn das original so ist)
Hallo ich habe das geändert weil es im Wiki heißt
https://wiki.fhem.de/wiki/MQTT2-Module_-_Praxisbeispiele
in der MQTT-Konfiguration der tasmota-Geräte für den Parameter topic = %topic% (sonoff) ebenfalls die dynamisch aus der Chip-ID erzeugte Kennung DVES_%06X zu verwenden. Hierzu kann einfach die unter client (DVES_8BABA9) zu findende Angabe kopiert werden.Sehe aber gerade, dass es heissen müsste
DVES_%06X
allerdings führt das nicht zum Erfolg
Sehe aber gerade, dass es heissen müsste DVES_%06X
allerdings führt das nicht zum Erfolg
[/quote]
Ich korrigiere mich. Nach erneutem löschen des Device, Neustart von fhem, scheint es jetzt zu klappen.
Vielen Dank für Deine Mühe und Hilfe!
@Beta-User ich hab den satz im Wiki angepasst, glücklich bin ich aber noch nicht mit der formulierung.
ggf. würde dort auch ein Bildchen bände sprechen.
Hmm, das Problem ist, dass das ein Zitat ist aus der Überschrift (und damit nicht geräteabhängig, afaik...). Durch die Änderung wird das aber eher noch mehr verdeckt als erhellt...
Vielleicht sollte man eher sowas schreiben wie
"Die Vorgabe "Sonoff" im Eingabefeld für "topc ...." muß auf eine individuelle Einstellung für jedes Tasmota-Gerät angepaßt werden. Hier kann auch "DVES_%06X" eingetragen werden, wodurch eine aus der Chip-ID abgeleitete eindeutige Kennung (beginnend mit "DVES_") erzeugt wird. Diese Art der Kennung wird insbesondere bei den Beispielen im Wiki häufig anzutreffen sein und insbesondere für Einsteiger empfohlen. Die eigentliche..."
(Dazu einen screenshot, wo das einzutragen ist (mit "DVES_%06X"! ;) ::) 8) ...) fände ich ok, darfst Du gern... (nur eben bitte nix mit bereits sprechenden Namen, es gilt m.E. immer noch das Kompabilitätsargument zu MQTT2_CLIENT...).
Und die RAW-Def darunter müßte man dann am besten auch gleich anpassen...
fast...
Bei den IP- und Nutzereingaben würde ich optisch deutlicher absetzen, was wirklich individuell eingegeben werden muß, damit man besser erkennt, dass da eigene Daten reinmüssen (andere Farbe/Kursiv?)
Und statt %topic% muß da dieses ominöse DVES_%06X rein. Da wäre es gut, es wäre identisch geschrieben (also im Originalen Screenshot drin). Dann statt "2" "2a" und bei Topic ein "2b"-Kreischen daneben, mit einem Pfeil von dem Eingabefeld oben nach unten, beschriftet mit "copy/paste".
Den Text im Wiki hatte ich nochmal angepaßt, paßt zum Glück, das scheint ja doch dynamisch zu sein, was da im WebIF angezeigt wird :( , und auch gleich die (vorher inkonsistente...) RAW-Def geändert.
Weitere Diskussion evtl. wirklich im MQTT-Artikel-Thread?
:)
Paßt; jetzt noch der c&p-Pfeil?
aber jetzt
p.s.: nicht wundern ich hab meine postings drüber gelöscht, da OT
p.s.2.: baust du`s ein?
Thx, ist drin (war irgendwie gar nicht so einfach, das so reinzufrickeln, dass es halbwegs paßt... Wer's größer braucht, muß halt klicken...)