Hallo in die Runde,
ich habe folgendes Szenario:
- 2 Sonoffs Basic mit Tasmota geflasht
- beide wurden über autocreate des MQTT2-Servers angelegt
- beiden das Template A_01a_tasmota_basic_state_power1 zugewiesen.
Jetzt kommt es zu dem Phänomen, dass sobald ich per FHEM eines der beiden Devices schalte (an/aus), auch das andere exakt analog reagiert.
Anbei das list von device 1:
Internals:
CID DVES_0E1E37
DEF DVES_0E1E37
DEVICETOPIC MQTT2_DVES_0E1E37
FUUID 5c68ffcd-f33f-f80f-a3e1-2805ffd0c1838aec
IODev MQTTServer
LASTInputDev MQTTServer
MQTTServer_MSGCNT 14
MQTTServer_TIME 2019-02-17 08:06:15
MSGCNT 14
NAME MQTT2_DVES_0E1E37
NR 456
STATE off
TYPE MQTT2_DEVICE
READINGS:
2019-02-17 08:04:55 LWT Online
2019-02-17 08:01:42 LoadAvg 19
2019-02-17 08:06:15 POWER1 off
2019-02-17 07:57:46 SaveData on
2019-02-17 07:57:46 SetOption26 on
2019-02-17 08:01:42 Sleep 50
2019-02-17 08:01:42 SleepMode Dynamic
2019-02-17 07:57:44 StateText1 off
2019-02-17 07:57:44 StateText2 on
2019-02-17 07:57:45 StateText3 toggle
2019-02-17 07:57:45 StateText4 hold
2019-02-17 08:01:42 Time 2019-02-17T08:01:42
2019-02-17 08:01:42 Uptime 0T00:56:20
2019-02-17 08:01:42 Vcc 3.519
2019-02-17 08:01:42 Wifi_AP 1
2019-02-17 08:01:42 Wifi_BSSId XX:XX:XX:XX:XX:XX
2019-02-17 08:01:42 Wifi_Channel 6
2019-02-17 08:01:42 Wifi_RSSI 78
2019-02-17 08:01:42 Wifi_SSId LowestOne
2019-02-17 08:06:14 state set_off
Attributes:
IODev MQTTServer
autocreate 0
model A_01a_tasmota_basic_state_power1
readingList tele/sonoff/LWT:.* LWT
tele/sonoff/STATE:.* { json2nameValue($EVENT) }
tele/sonoff/SENSOR:.* { json2nameValue($EVENT) }
tele/sonoff/INFO.:.* { json2nameValue($EVENT) }
stat/sonoff/RESULT:.* { json2nameValue($EVENT) }
room MQTT2_DEVICE
setList off:noArg cmnd/sonoff/POWER1 0
on:noArg cmnd/sonoff/POWER1 1
toggle:noArg cmnd/sonoff/POWER1 2
setStateList on off toggle
stateFormat POWER1
und das list von device 2:
Internals:
CID DVES_0E8D44
DEF DVES_0E8D44
DEVICETOPIC MQTT2_DVES_0E8D44
FUUID 5c68ff72-f33f-f80f-8395-3b048f29c1cf1830
IODev MQTTServer
LASTInputDev MQTTServer
MQTTServer_MSGCNT 16
MQTTServer_TIME 2019-02-17 08:07:15
MSGCNT 16
NAME MQTT2_DVES_0E8D44
NR 454
STATE off
TYPE MQTT2_DEVICE
READINGS:
2019-02-17 08:04:55 LWT Online
2019-02-17 08:07:15 LoadAvg 19
2019-02-17 08:07:15 POWER1 off
2019-02-17 07:57:46 SaveData on
2019-02-17 07:57:46 SetOption26 on
2019-02-17 08:07:15 Sleep 50
2019-02-17 08:07:15 SleepMode Dynamic
2019-02-17 07:57:44 StateText1 off
2019-02-17 07:57:44 StateText2 on
2019-02-17 07:57:45 StateText3 toggle
2019-02-17 07:57:45 StateText4 hold
2019-02-17 08:07:15 Time 2019-02-17T08:07:14
2019-02-17 08:07:15 Uptime 0T01:01:52
2019-02-17 08:07:15 Vcc 3.534
2019-02-17 08:07:15 Wifi_AP 1
2019-02-17 08:07:15 Wifi_BSSId XX:XX:XX:XX:XX:XX
2019-02-17 08:07:15 Wifi_Channel 6
2019-02-17 08:07:15 Wifi_RSSI 80
2019-02-17 08:07:15 Wifi_SSId LowestOne
Attributes:
IODev MQTTServer
autocreate 0
model A_01a_tasmota_basic_state_power1
readingList tele/sonoff/LWT:.* LWT
tele/sonoff/STATE:.* { json2nameValue($EVENT) }
tele/sonoff/SENSOR:.* { json2nameValue($EVENT) }
tele/sonoff/INFO.:.* { json2nameValue($EVENT) }
stat/sonoff/RESULT:.* { json2nameValue($EVENT) }
room MQTT2_DEVICE
setList off:noArg cmnd/sonoff/POWER1 0
on:noArg cmnd/sonoff/POWER1 1
toggle:noArg cmnd/sonoff/POWER1 2
setStateList on off toggle
stateFormat POWER1
Habt Ihr irgendwelche Tipps für mich, wo ich weiter suchen sollte?
Grüße
Obelix
OK, anbei die Lösung...
wichtig ist das Attribut "Topic", das Default mit dem Wert aus der Tasmota-Firmware belegt wird.
Hier stand bei beiden "sonoff" drin, so dass der MQTT2-Server alle devices mit dem Topic "sonoff" geschalten hat.
Man muss hier eben das Attribut ändern.
Grüße
Obelix