Hallo
hab mir folgenden Eltako zusammengebaut und über MQTT2 Server an Fhem angebunden.
https://forum.fhem.de/index.php/topic,89818.0.html (https://forum.fhem.de/index.php/topic,89818.0.html)
in fhem meldet sich der Eltako mit dieser Konfiguration:
Internals:
CID ESP01_ELTAKO
DEF ESP01_ELTAKO
DEVICETOPIC MQTT2_ESP01_ELTAKO
IODev mqtt2
LASTInputDev mqtt2
MSGCNT 26
NAME MQTT2_ESP01_ELTAKO
NR 1161
STATE off2
TYPE MQTT2_DEVICE
mqtt2_MSGCNT 26
mqtt2_TIME 2018-10-21 19:23:07
READINGS:
2018-10-21 19:07:25 EltakoFlurUnten ESP01_ELTAKO
2018-10-21 19:23:07 Spannung 3.28
2018-10-21 19:12:22 Switch_1 On
2018-10-21 19:12:22 Switch_2 On
2018-10-21 19:18:44 state off2
Attributes:
IODev mqtt2
devStateIcon /on1:li_wht_on/off1:li_wht_off
readingList ESP01_ELTAKO:EltakoFlurUnten:.* EltakoFlurUnten
ESP01_ELTAKO:ESP01_ELTAKO/Switch_1:.* Switch_1
ESP01_ELTAKO:ESP01_ELTAKO/Switch_2:.* Switch_2
ESP01_ELTAKO:ESP01_ELTAKO/Spannung:.* Spannung
room MQTT2_DEVICE
Leider weiss ich nicht wie ich die beiden Switches in fhem betätigen kann.
hat jeman vielleicht eine Idee.
hab schon mit:
webCmd on1,off1,on2,off2
setlist on1 ESP01_ELTAKO/Switch_1 on
off1 ESP01_ELTAKO/Switch_1 off
on2 ESP01_ELTAKO/Switch_1 on
off2 ESP01_ELTAKO/Switch_1 off
Leider funktioniert das nicht
Gruß rippi
Das Teil scheint "0" bzw "1" zu erwarten. Mach mal das statt on/off ans Ende der einzelnen setList-Elemente.
Die moeglichen Topics, auf die die Firmware hoert, kann man eingrenzen, wenn man mit list die normalerweise nicht angezeigte Instanz der Verbindung anzeigt.
Bei meinem Sonoff mit Tasmota schaut das so aus:
fhem> list TYPE=MQTT2_SERVER
m2s
m2s_192.168.xx.yy_23502
fhem> list m2s_192.168.xx.yy_23502
Internals:
...
subscriptions:
cmnd/DVES_ABCDEF/# 1540117453.91047
cmnd/sonoff/# 1540117453.86141
cmnd/sonoffs/# 1540117453.86594
D.h. bei diesem Geraet fangen Befehls-Topics mit cmnd/... an.
Die genauen Befehle (Topic + Message) muss man aus der Doku des verwendeten Firmwares entnehmen.
Danke für den Tipp jetzt funktioniert es. Vieleicht hätte ich mal in die Firmware schauen sollen.
Also list mqtt2_192.168.178.91_49261 liefert:
Internals:
BUF
FD 181
NAME mqtt2_192.168.178.91_49261
NR 54044
PEER 192.168.178.91
PORT 49261
SNAME mqtt2
SSL
STATE Connected
TEMPORARY 1
TYPE MQTT2_SERVER
WBCallback
cflags 2
cid ESP01_ELTAKO
keepalive 15
lastMsgTime 1540193851.03397
protoNum 4
protoTxt MQTT
READINGS:
2018-10-22 09:29:56 state Connected
subscriptions:
ESP01_ELTAKO/Befehl_1 1540193397.52346
ESP01_ELTAKO/Befehl_2 1540193397.52397
Attributes:
room hidden
und dann das Device so definiert:
Internals:
CID ESP01_ELTAKO
DEF ESP01_ELTAKO
DEVICETOPIC MQTT2_ESP01_ELTAKO
IODev mqtt2
LASTInputDev mqtt2
MSGCNT 442
NAME MQTT2_ESP01_ELTAKO
NR 1161
STATE off1
TYPE MQTT2_DEVICE
mqtt2_MSGCNT 442
mqtt2_TIME 2018-10-22 10:26:46
READINGS:
2018-10-22 09:29:57 EltakoFlurUnten ESP01_ELTAKO
2018-10-22 10:26:46 Spannung 3.28
2018-10-22 10:00:25 Switch_1 Off
2018-10-22 10:00:25 Switch_2 Off
2018-10-22 10:00:24 state off1
Attributes:
IODev mqtt2
devStateIcon /on1:li_wht_on/off1:li_wht_off
readingList ESP01_ELTAKO:EltakoFlurUnten:.* EltakoFlurUnten
ESP01_ELTAKO:ESP01_ELTAKO/Switch_1:.* Switch_1
ESP01_ELTAKO:ESP01_ELTAKO/Switch_2:.* Switch_2
ESP01_ELTAKO:ESP01_ELTAKO/Spannung:.* Spannung
room MQTT2_DEVICE
setList on1 ESP01_ELTAKO/Befehl_1 On
off1 ESP01_ELTAKO/Befehl_1 Off
on2 ESP01_ELTAKO/Befehl_2 On
off2 ESP01_ELTAKO/Befehl_2 Off
webCmd on1:off1:on2:off2
Dann funktioniert auch alles
Danke
Gruß rippi