Hallöle,
ich habe per
defmod myBroker MQTT2_SERVER 1883 global
den Broker aufgesetzt.
Im Client habe ich den Server konfiguriert und der Schalter wurde auch per autocreate angelegt:
defmod MQTT2_DVES_72325E MQTT2_DEVICE DVES_72325E
attr MQTT2_DVES_72325E IODev myBroker
attr MQTT2_DVES_72325E autocreate 0
attr MQTT2_DVES_72325E model A_01a_tasmota_basic_state_power1
attr MQTT2_DVES_72325E readingList robonect_relay_72325E/tele/LWT:.* LWT\
robonect_relay_72325E/tele/STATE:.* { json2nameValue($EVENT) }\
robonect_relay_72325E/tele/SENSOR:.* { json2nameValue($EVENT) }\
robonect_relay_72325E/tele/INFO.:.* { json2nameValue($EVENT) }\
robonect_relay_72325E/stat/RESULT:.* { json2nameValue($EVENT) }
attr MQTT2_DVES_72325E room MQTT2_DEVICE
attr MQTT2_DVES_72325E setList off:noArg robonect_relay_72325E/cmnd/POWER1 0\
on:noArg robonect_relay_72325E/cmnd/POWER1 1\
toggle:noArg robonect_relay_72325E/cmnd/POWER1 2
attr MQTT2_DVES_72325E setStateList on off toggle
attr MQTT2_DVES_72325E stateFormat POWER1
setstate MQTT2_DVES_72325E POWER1
Soweit sieht das ja alles ganz i.O. aus.
Das Teil schaltet nur nicht....
Funktioniert der Fallback-Topic von Tasmota?
on:noArg cmnd\MQTT2_DVES_72325E\Power1 1
off:noArg cmnd\MQTT2_DVES_72325E\Power1 2
Du meinst so:
attr MQTT2_DVES_72325E setList on:noArg cmnd\MQTT2_DVES_72325E\Power1 1\
off:noArg cmnd\MQTT2_DVES_72325E\Power1 2
?
Nö - rührt sich (auch) nichts - bevor die Frage kommt: Ja - über das Webinterface des Schalters funktioniert das schalten
so - jetzt gehts:
defmod MQTT2_robonect_relais MQTT2_DEVICE robonect_relais
attr MQTT2_robonect_relais IODev myBroker
attr MQTT2_robonect_relais devStateIcon ON:fts_garage OFF:fts_garage_door_100
attr MQTT2_robonect_relais readingList robonect_relais:robonect/tele/STATE:.* { json2nameValue($EVENT) }\
robonect_relais:robonect/tele/LWT:.* LWT\
robonect_relais:robonect/set/POWER:.* POWER\
robonect_relais:robonect/tele/INFO1:.* { json2nameValue($EVENT) }\
robonect_relais:robonect/tele/INFO2:.* { json2nameValue($EVENT) }\
robonect_relais:robonect/tele/INFO3:.* { json2nameValue($EVENT) }\
robonect_relais:robonect/value/RESULT:.* { json2nameValue($EVENT) }\
robonect_relais:robonect/value/POWER:.* POWER
attr MQTT2_robonect_relais room MQTT2_DEVICE
attr MQTT2_robonect_relais setList off:noArg robonect/set/POWER OFF\
on:noArg robonect/set/POWER ON
attr MQTT2_robonect_relais stateFormat POWER
Hab das ganze Template-Gedöns weggelassen und mich rangetastet
Nur Toggle geht noch nicht
EDIT: Toggle geht jetzt auch - setlist:
off:noArg robonect/set/POWER OFF
on:noArg robonect/set/POWER ON
toggle:noArg robonect/set/POWER TOGGLE
Kann mich jemand aufklären, wo das "set" statt "cmnd" in dem Topic-Tree herkommt?
(das ist der Grund, warum das "Gedöns" nicht funktioniert hat... Wäre evtl. noch für andere User interessant.)
hier vllt.:
...
robonect_relais:robonect/set/POWER:.* POWER\
...
Die Firmware von dem Robonect-Relais dürfte angepasst sein, denke ich - ich war's nicht...
Danke.
Wenn natürlich irgendein Hersteller an den Tasmota-Einstellungen rumwurstelt, braucht es auch nicht zu wundern, dass die "normalen" Einstellungen dann nicht helfen...
Scheint demnach keinen konkreten Handlungsbedarf zu geben, was das attrTemplate-"Gedöns" angeht :) .
Habe MQTT2_DEVICE erweitert, damit bei einem IODev der Sorte MQTT2_SERVER ein Reading subscriptions gesetzt wird, dieser enthaelt die subscriptions des zugehoerigen Clients. Ich hoffe, dass die erwaehnten Probleme damit einfacher geloest werden koennen.