Xiaomi LLKZMK11LM double Relais MQTT2 Template

Begonnen von ulli, 04 Dezember 2019, 19:00:26

Vorheriges Thema - Nächstes Thema

achim-g

Hallo,
ich habe seit gestern auch dieses Relais. Bis zur Anlage in FHEM (zigbee2mqtt_2channel_split) bin ich problemlos gekommen. Nur leider passiert am Relais nichts, wenn ich bei einem der beiden angelegten Devices auf die Lampe oder auf on bzw. off klicke. In FHEM wird eine ein- bzw. ausgeschaltete Lampe mit roten Ausrufezeichen angezeigt und das Reading "state" springt entweder auf "set_on" oder "set_off".
Drücke ich auf dem Relais den kleinen Knopf recht oben, dann werden beide Relais ein- bzw. ausgeschaltet. In FEHM gehen auch die Lampen an und das Reading "state" geht auf "ON" bzw. "OFF".

Hat jemand eine Idee, warum das nicht funktioniert, wie es sollte?

Beta-User

Hmm, evtl. könnte sich das Format geändert haben, da gab's neulich schon mal sowas ähnliches bei einem etwas anderen Aktor:

attr MQTT2_zigbee_0x00124b001aa5a474 setList \
  on:noArg zigbee2mqtt/0x00124b001aa5a474/l1/set ON\
  off:noArg zigbee2mqtt/0x00124b001aa5a474/l1/set OFF\
  toggle:noArg zigbee2mqtt/0x00124b001aa5a474/l1/set TOGGLE


Falls das ein generelles Thema mit diesen mehrkanaligen zigbee2mqtt-Dingern sein sollte, würde ich das im Template ändern...?

(Evtl. wäre aber etwas MQTT-Verkehr hilfreich, wenn das Ding zwar schaltet, aber nichts zurückmeldet.)
Server: HP-elitedesk@Debian 12, aktuelles FHEM@ConfigDB | CUL_HM (VCCU) | MQTT2: ZigBee2mqtt, MiLight@ESP-GW, BT@OpenMQTTGw | ZWave | SIGNALduino | MapleCUN | RHASSPY
svn: u.a Weekday-&RandomTimer, Twilight,  div. attrTemplate-files, MySensors

achim-g

#32
Danke für die schnelle Antwort. Leider hat die Änderung keine Besserung gebracht. Nach wie vor passiert am Relais nichts, wenn ich in FHEM auf "on" oder "off" klicke. Und auch wieder "set_on" und "set_off" als Wert beim Reading "state". Im FHEM Monitor kommen nur die Meldungen (nur Device für Kanal 1):

2020-09-28 17:41:00 MQTT2_DEVICE MQTT2_zigbee_0x00158d0004288c76 set_on
2020-09-28 17:41:02 MQTT2_DEVICE MQTT2_zigbee_0x00158d0004288c76 set_off


Im zigbee2mqtt Log (journalctl -u zigbee2mqtt.service -f) keine Ausgabe.

Drücke ich den Knopf am Relais, dann kommt im zigbee2mqtt Log:

Sep 28 17:42:36 homecontrol npm[580]: Zigbee2MQTT:info  2020-09-28 17:42:36: MQTT publish: topic 'zigbee2mqtt/0x00158d0004288c76', payload '{"consumption":0,"linkquality":18,"power":0.02,"state_l1":"ON","state_l2":"OFF","temperature":38}'
Sep 28 17:42:36 homecontrol npm[580]: Zigbee2MQTT:info  2020-09-28 17:42:36: MQTT publish: topic 'zigbee2mqtt/0x00158d0004288c76', payload '{"consumption":0,"linkquality":18,"power":0.02,"state_l1":"ON","state_l2":"ON","temperature":38}'
Sep 28 17:42:37 homecontrol npm[580]: Zigbee2MQTT:info  2020-09-28 17:42:37: MQTT publish: topic 'zigbee2mqtt/0x00158d0004288c76', payload '{"consumption":0,"linkquality":18,"power":4.89,"state_l1":"ON","state_l2":"ON","temperature":38}'
Sep 28 17:42:39 homecontrol npm[580]: Zigbee2MQTT:info  2020-09-28 17:42:39: MQTT publish: topic 'zigbee2mqtt/0x00158d0004288c76', payload '{"consumption":0,"linkquality":21,"power":7.51,"state_l1":"ON","state_l2":"ON","temperature":38}'

Sep 28 17:43:16 homecontrol npm[580]: Zigbee2MQTT:info  2020-09-28 17:43:16: MQTT publish: topic 'zigbee2mqtt/0x00158d0004288c76', payload '{"consumption":0,"linkquality":18,"power":7.51,"state_l1":"OFF","state_l2":"ON","temperature":38}'
Sep 28 17:43:16 homecontrol npm[580]: Zigbee2MQTT:info  2020-09-28 17:43:16: MQTT publish: topic 'zigbee2mqtt/0x00158d0004288c76', payload '{"consumption":0,"linkquality":21,"power":7.51,"state_l1":"OFF","state_l2":"OFF","temperature":38}'
Sep 28 17:43:19 homecontrol npm[580]: Zigbee2MQTT:info  2020-09-28 17:43:19: MQTT publish: topic 'zigbee2mqtt/0x00158d0004288c76', payload '{"consumption":0,"linkquality":18,"power":0.01,"state_l1":"OFF","state_l2":"OFF","temperature":38}'


Der FHEM Monitor bringt:

2020-09-28 17:42:36 MQTT2_DEVICE MQTT2_zigbee_0x00158d0004288c76 linkquality: 18
2020-09-28 17:42:36 MQTT2_DEVICE MQTT2_zigbee_0x00158d0004288c76 consumption: 0
2020-09-28 17:42:36 MQTT2_DEVICE MQTT2_zigbee_0x00158d0004288c76 temperature: 38
2020-09-28 17:42:36 MQTT2_DEVICE MQTT2_zigbee_0x00158d0004288c76 on
2020-09-28 17:42:36 MQTT2_DEVICE MQTT2_zigbee_0x00158d0004288c76 power: 0.02
2020-09-28 17:42:36 MQTT2_DEVICE MQTT2_zigbee_0x00158d0004288c76_CH2 off
2020-09-28 17:42:36 MQTT2_DEVICE MQTT2_zigbee_0x00158d0004288c76_CH2 on
2020-09-28 17:42:36 MQTT2_DEVICE MQTT2_zigbee_0x00158d0004288c76 power: 0.02
2020-09-28 17:42:36 MQTT2_DEVICE MQTT2_zigbee_0x00158d0004288c76 temperature: 38
2020-09-28 17:42:36 MQTT2_DEVICE MQTT2_zigbee_0x00158d0004288c76 on
2020-09-28 17:42:36 MQTT2_DEVICE MQTT2_zigbee_0x00158d0004288c76 linkquality: 18
2020-09-28 17:42:36 MQTT2_DEVICE MQTT2_zigbee_0x00158d0004288c76 consumption: 0
2020-09-28 17:42:37 MQTT2_DEVICE MQTT2_zigbee_0x00158d0004288c76_CH2 on
2020-09-28 17:42:37 MQTT2_DEVICE MQTT2_zigbee_0x00158d0004288c76 consumption: 0
2020-09-28 17:42:37 MQTT2_DEVICE MQTT2_zigbee_0x00158d0004288c76 linkquality: 18
2020-09-28 17:42:37 MQTT2_DEVICE MQTT2_zigbee_0x00158d0004288c76 temperature: 38
2020-09-28 17:42:37 MQTT2_DEVICE MQTT2_zigbee_0x00158d0004288c76 on
2020-09-28 17:42:37 MQTT2_DEVICE MQTT2_zigbee_0x00158d0004288c76 power: 4.89
2020-09-28 17:42:39 MQTT2_DEVICE MQTT2_zigbee_0x00158d0004288c76_CH2 on
2020-09-28 17:42:39 MQTT2_DEVICE MQTT2_zigbee_0x00158d0004288c76 linkquality: 21
2020-09-28 17:42:39 MQTT2_DEVICE MQTT2_zigbee_0x00158d0004288c76 consumption: 0
2020-09-28 17:42:39 MQTT2_DEVICE MQTT2_zigbee_0x00158d0004288c76 temperature: 38
2020-09-28 17:42:39 MQTT2_DEVICE MQTT2_zigbee_0x00158d0004288c76 on
2020-09-28 17:42:39 MQTT2_DEVICE MQTT2_zigbee_0x00158d0004288c76 power: 7.51

2020-09-28 17:43:16 MQTT2_DEVICE MQTT2_zigbee_0x00158d0004288c76_CH2 on
2020-09-28 17:43:16 MQTT2_DEVICE MQTT2_zigbee_0x00158d0004288c76 power: 7.51
2020-09-28 17:43:16 MQTT2_DEVICE MQTT2_zigbee_0x00158d0004288c76 temperature: 38
2020-09-28 17:43:16 MQTT2_DEVICE MQTT2_zigbee_0x00158d0004288c76 off
2020-09-28 17:43:16 MQTT2_DEVICE MQTT2_zigbee_0x00158d0004288c76 consumption: 0
2020-09-28 17:43:16 MQTT2_DEVICE MQTT2_zigbee_0x00158d0004288c76 linkquality: 18
2020-09-28 17:43:16 MQTT2_DEVICE MQTT2_zigbee_0x00158d0004288c76_CH2 off
2020-09-28 17:43:16 MQTT2_DEVICE MQTT2_zigbee_0x00158d0004288c76 power: 7.51
2020-09-28 17:43:16 MQTT2_DEVICE MQTT2_zigbee_0x00158d0004288c76 linkquality: 21
2020-09-28 17:43:16 MQTT2_DEVICE MQTT2_zigbee_0x00158d0004288c76 consumption: 0
2020-09-28 17:43:16 MQTT2_DEVICE MQTT2_zigbee_0x00158d0004288c76 temperature: 38
2020-09-28 17:43:16 MQTT2_DEVICE MQTT2_zigbee_0x00158d0004288c76 off
2020-09-28 17:43:19 MQTT2_DEVICE MQTT2_zigbee_0x00158d0004288c76_CH2 off
2020-09-28 17:43:19 MQTT2_DEVICE MQTT2_zigbee_0x00158d0004288c76 off
2020-09-28 17:43:19 MQTT2_DEVICE MQTT2_zigbee_0x00158d0004288c76 temperature: 38
2020-09-28 17:43:19 MQTT2_DEVICE MQTT2_zigbee_0x00158d0004288c76 linkquality: 18
2020-09-28 17:43:19 MQTT2_DEVICE MQTT2_zigbee_0x00158d0004288c76 consumption: 0
2020-09-28 17:43:19 MQTT2_DEVICE MQTT2_zigbee_0x00158d0004288c76 power: 0.01


Reading "state" wird auf "ON" bzw. "OFF" gesetzt.

Mir ist auch noch aufgefallen, dass beim Device für Kanal 1 das Attribut setStateList "on off" lautet und beim Device für Kanal 2 "on off toggle". Ist das so gewollt?

Beta-User

Zitat von: achim-g am 28 September 2020, 17:54:29
Danke für die schnelle Antwort. Leider hat die Änderung keine Besserung gebracht. Nach wie vor passiert am Relais nichts, wenn ich in FHEM auf "on" oder "off" klicke. Und auch wieder "set_on" und "set_off" als Wert beim Reading "state".
[...]
Mir ist auch noch aufgefallen, dass beim Device für Kanal 1 das Attribut setStateList "on off" lautet und beim Device für Kanal 2 "on off toggle". Ist das so gewollt?
Das das toggle im 1. Kanal fehlt, ist ein Versehen; das Attribut bewirkt, dass der state nur für diese Anweisungen geändert wird, und zwar eben auf die Info, dass eigentlich der Befehl rausgegangen sein sollte (aber eben die Bestätigung nicht zurückkommt).

Der Event-Monitor hilft daher bei der näheren Analyse nur bedingt, weil er in der Regel nicht anzeigt, wie der MQTT-Verkehr aussieht. Daher wäre als erstes sicherzustellen, was denn da bei dem zigbee2mqtt-Dienst überhaupt ankommt; bin zwar ziemlich sicher, was der Server rausschickt, aber falls (!) es Verbindungsprobleme gibt, kann es sein, dass die Message auch irgendwo verloren geht auf dem Weg zu diesem Dienst.

Ohne zu wissen, was wo läuft, ist das schwer zu beantworten (alles eine Maschine, WLAN/PowerLAN irgendwo dazwischen, ...). Mein nebliger Verdacht: Verbindungsabbrüche und eine nicht in der yaml festgezurrte ClientID?
Server: HP-elitedesk@Debian 12, aktuelles FHEM@ConfigDB | CUL_HM (VCCU) | MQTT2: ZigBee2mqtt, MiLight@ESP-GW, BT@OpenMQTTGw | ZWave | SIGNALduino | MapleCUN | RHASSPY
svn: u.a Weekday-&RandomTimer, Twilight,  div. attrTemplate-files, MySensors

achim-g

So, nun hab ich mal wieder etwas Zeit investiert und u.a. festgestellt, dass es doch eine Meldung im zigbee2mqtt Log gegeben hat. Die kam allerdings zeitlich so verzögert, dass sie mir zunächst nicht aufgefallen war.


Sep 28 21:39:08 homecontrol npm[581]: Zigbee2MQTT:error 2020-09-28 21:39:08: Publish 'set' 'state' to '0x00158d00042af0fd' failed: 'Error: Command 0x00158d00042af0fd/1 genOnOff.on({}, {"timeout":10000,"disableResponse":false,"disableDefaultResponse":false,"direction":0,"srcEndpoint":null,"reservedBits":0,"manufacturerCode":null,"transactionSequenceNumber":null}) failed (Data request failed with error: 'No network route' (205))'
Sep 28 21:39:08 homecontrol npm[581]: Zigbee2MQTT:info  2020-09-28 21:39:08: MQTT publish: topic 'zigbee2mqtt/bridge/log', payload '{"message":"Publish 'set' 'state' to '0x00158d00042af0fd' failed: 'Error: Command 0x00158d00042af0fd/1 genOnOff.on({}, {\"timeout\":10000,\"disableResponse\":false,\"disableDefaultResponse\":false,\"direction\":0,\"srcEndpoint\":null,\"reservedBits\":0,\"manufacturerCode\":null,\"transactionSequenceNumber\":null}) failed (Data request failed with error: 'No network route' (205))'","meta":{"friendly_name":"0x00158d00042af0fd"},"type":"zigbee_publish_error"}'


Zu dem Fehler 'No network route' (205))' bin ich dann auf folgenden Post gestoßen: https://github.com/Koenkk/zigbee2mqtt/issues/2227

Hab dann mal die Z-Stack_Home_1.2 (source_routing) Firmware auf den USB Stick (ein CC2531) gebügelt. Hat aber auch nix geholfen. Mit der Version 3.0.x ging es dann endlich, wobei ich jetzt erstmal alle anderen Devices wieder anlernen muss und hoffe, dass auch alle funkionieren. Die Einstellungen des Attributs "setList" hab ich wieder auf die "Werkseinstellungen" zurück gesetzt. Die Empfehlung von weiter oben hatte aber auch funktioniert.

Vermutlich gibt es am Template jetzt gar nichts zu ändern. Würde mich aber mal interessieren, ob es bei jemandem mit der 1.2 Version (default oder source_routing) funktioniert. Mein FHEM läuft übrigens auf einem Pi 3, Modell B, Version 1.2 und aktuellem Raspberry Pi OS und zigbee2mqtt ist auch aktuell.

Beta-User

Zitat von: achim-g am 30 September 2020, 21:27:02
[...] Vermutlich gibt es am Template jetzt gar nichts zu ändern. [...]
Danke auf jeden Fall für die Rückmeldung, ist wichtig zu wissen, dass das Problem "hinter dem (mehr oder weniger korrekten) set-Kommando" steckte.

Was das attrTemplate angeht, bin ich aber nach wie vor nicht so richtig sicher, ob die payload wirklich "gut" ist, sie entspricht nämlich hier nicht dem, was in der Doku bei z2mqtt steht. Wenn es "auch" mit der Klartext-Variante geht, werde ich das tendenziell umbauen.
Und weiter war da auch noch der Punkt offen, ob es korrekte bzw. separate Infos über Tastendrücke gibt.

Und zu guter letzt: ich habe auch so einen, den aber über deconz am laufen. Aber auch bei dem sind a) die Zuordnungen von den Tastern und den Ausgängen vertauscht, darüber hinaus sind b) die Messdaten für die Strommessung unbrauchbar. Ist das b) bei der Einbindung via z2mqtt auch so?
Und haben alle diesen Verkabelungs-bug lt. a)?
(Dann würde ich ggf. wenigstens beides in die desc: aufnehmen; das attrTemplate ist zwar universell auch für andere Typen nutzbar, aber der hier besprochene ist derzeit der Haupt-Vertreter...)
Server: HP-elitedesk@Debian 12, aktuelles FHEM@ConfigDB | CUL_HM (VCCU) | MQTT2: ZigBee2mqtt, MiLight@ESP-GW, BT@OpenMQTTGw | ZWave | SIGNALduino | MapleCUN | RHASSPY
svn: u.a Weekday-&RandomTimer, Twilight,  div. attrTemplate-files, MySensors

achim-g

Also das mit den Ausgängen passt bei mir. Strommessung hab ich noch nicht vorgenommen, weil das Relais noch nicht final installiert ist. Da brauche ich erst noch einen Signalverstärker, der ist aber schon unterwegs. Dann werde ich auch noch die Ausgänge S1 und S2 belegen. Hatte was gelesen, dass man da einen Schalter anschließen sollte und keinen Taster (was ich aber eher vermutet hätte). Werde ggf. beides testen, aber fange mit einem Taster an.