Einbindung von Fernbedienung über Zigbee2MQTT in FHEM

Begonnen von matt_muc, 02 Januar 2026, 16:09:25

Vorheriges Thema - Nächstes Thema

matt_muc

Hallo zusammen,

ich hänge bei der Einbindung von zwei ZGRC-KEY-013 Sunricher (Zigbee remote control - 12 button) VES-ZB-REM-013 Fernsteuerungen in FHEM über MQTT. In Zigbee2MQTT werden sie erkannt und in der MQTT2_DEVICE Liste sind mehrere Einträge (Device Announce, Interview, Status, und ein Eintrag, wo die Inputs eingehen).

In zigbee2mqtt gehen die Nachrichten korrekt ein. z.B.

2026-01-02_15:55:51 zigbee2mqtt log_message: z2m:mqtt: MQTT publish: topic 'zigbee2mqtt/Fernbedienung 1', payload '{"action":"on_4","action_group":53332,"battery":200,"linkquality":134}'
2026-01-02_15:55:51 zigbee2mqtt log_level: info
2026-01-02_15:55:52 zigbee2mqtt log_message: z2m:mqtt: MQTT publish: topic 'zigbee2mqtt/Fernbedienung 1', payload '{"action":"off_1","battery":200,"linkquality":149}'
2026-01-02_15:55:52 zigbee2mqtt log_level: info
2026-01-02_15:55:52 zigbee2mqtt log_message: z2m:mqtt: MQTT publish: topic 'zigbee2mqtt/Fernbedienung 1', payload '{"action":"off_2","battery":200,"linkquality":149}'
2026-01-02_15:55:52 zigbee2mqtt log_level: info
2026-01-02_15:55:52 zigbee2mqtt log_message: z2m:mqtt: MQTT publish: topic 'zigbee2mqtt/Fernbedienung 1', payload '{"action":"off_3","battery":200,"linkquality":153}'
2026-01-02_15:55:52 zigbee2mqtt log_level: info
2026-01-02_15:55:52 zigbee2mqtt log_message: z2m:mqtt: MQTT publish: topic 'zigbee2mqtt/Fernbedienung 1', payload '{"action":"off_4","battery":200,"linkquality":153}'
2026-01-02_15:55:52 zigbee2mqtt log_level: info
2026-01-02_15:55:52 zigbee2mqtt log_message: z2m:mqtt: MQTT publish: topic 'zigbee2mqtt/Fernbedienung 1', payload '{"action":"off_1","action_group":53329,"battery":200,"linkquality":153}'
2026-01-02_15:55:52 zigbee2mqtt log_level: info
2026-01-02_15:55:52 zigbee2mqtt log_message: z2m:mqtt: MQTT publish: topic 'zigbee2mqtt/Fernbedienung 1', payload '{"action":"off_2","action_group":53330,"battery":200,"linkquality":153}'
2026-01-02_15:55:52 zigbee2mqtt log_level: info
2026-01-02_15:55:52 zigbee2mqtt log_level: info
2026-01-02_15:55:52 zigbee2mqtt log_message: z2m:mqtt: MQTT publish: topic 'zigbee2mqtt/Fernbedienung 1', payload '{"action":"off_3","action_group":53331,"battery":200,"linkquality":153}'
2026-01-02_15:55:52 zigbee2mqtt log_level: info
2026-01-02_15:55:52 zigbee2mqtt log_message: z2m:mqtt: MQTT publish: topic 'zigbee2mqtt/Fernbedienung 1', payload '{"action":"off_4","action_group":53332,"battery":200,"linkquality":153}'
2026-01-02_15:55:53 zigbee2mqtt log_message: z2m:mqtt: MQTT publish: topic 'zigbee2mqtt/Fernbedienung 1', payload '{"action":"on_4","battery":200,"linkquality":134}'
2026-01-02_15:55:53 zigbee2mqtt log_level: info
2026-01-02_15:55:54 zigbee2mqtt log_level: info
2026-01-02_15:55:54 zigbee2mqtt log_message: z2m:mqtt: MQTT publish: topic 'zigbee2mqtt/Fernbedienung 1', payload '{"action":"off_4","battery":200,"linkquality":131}'

Wie bekomme ich sie im entsprechenden MQTT2_DEVICE eingebunden?

define Fernbedienung_1_und_2 MQTT2_DEVICE mqttjs_5bf73015
attr Fernbedienung_1_und_2 autocreate 1
attr Fernbedienung_1_und_2 devicetopic zigbee2mqtt
attr Fernbedienung_1_und_2 room Rolladensteuerung
#   CID        mqttjs_5bf73015
#   DEF        mqttjs_5bf73015
#   FUUID      690730ca-f33f-4a16-8dad-0c7cea50b2ca6c35
#   IODev      MQTT2_FHEM_Server
#   NAME       Fernbedienung_1_und_2
#   NR         85
#   STATE      ???
#   TYPE       MQTT2_DEVICE
#   OLDREADINGS:
#   READINGS:
#

In alten Logfiles kommen die Befehle noch korrekt an.

2025-11-02_11:51:10 Fernbedienung_1_und_2 message: z2m:mqtt: MQTT publish: topic 'zigbee2mqtt/Fernbedienung 1', payload '{"action":"on_1","battery":200,"linkquality":163}'
2025-11-02_11:51:10 Fernbedienung_1_und_2 level: info
2025-11-02_11:51:10 Fernbedienung_1_und_2 action: on_1
2025-11-02_11:51:10 Fernbedienung_1_und_2 linkquality: 163
2025-11-02_11:51:10 Fernbedienung_1_und_2 battery: 200
2025-11-02_11:51:10 Fernbedienung_1_und_2 level: info
2025-11-02_11:51:10 Fernbedienung_1_und_2 message: z2m:mqtt: MQTT publish: topic 'zigbee2mqtt/Fernbedienung 1', payload '{"action":"on_1","action_group":53329,"battery":200,"linkquality":163}'
2025-11-02_11:51:10 Fernbedienung_1_und_2 action_group: 53329
2025-11-02_11:51:10 Fernbedienung_1_und_2 battery: 200
2025-11-02_11:51:10 Fernbedienung_1_und_2 action: on_1
2025-11-02_11:51:10 Fernbedienung_1_und_2 linkquality: 163

Neue Logfiles sind leer.

Seitdem habe ich unter anderem die zigbee2mqtt Bridge von einem generischen MQTT2_DEVICE Device zu zigbee2mqtt_bridge geändert.

Habt ihr eine Idee, an was es liegen könnte?

Danke vorab und viele Grüße

betateilchen

Dieser Krampf mit der zigbee2mqtt Bridge ist einfach unfassbar.

Eigentlich brauchst Du doch nur das reading 'action' für die Auswertung, wenn ich das richtig verstehe?
Schalte das autocreate ab und leg das reading selbst an.
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

Beta-User

...und vor allem: Vergib eine feste ClientID. Das schaut noch sehr nach "random" vergeben aus:
define Fernbedienung_1_und_2 MQTT2_DEVICE mqttjs_5bf73015
Und: "friendly names" sind MIST!
Server: HP-elitedesk@Debian 13, 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

betateilchen

ich wollte das gerade nachbauen, um ein mögliches MQTT2_DEVICE aufzuzeigen.
Aber topics mit Leerzeichen sind gruslig...

MQTT publish: topic 'zigbee2mqtt/Fernbedienung 1', payload ...
Da hat doch jemand im Frontend von zigbee2mqtt rumgepfuscht und die ID "bearbeitet"?
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

Nobbynews

attr Fernbedienung_1_und_2 devicetopic zigbee2mqttPasst auch nicht.

betateilchen

Mit Unterstrich statt Leerzeichen funktioniert folgendes:

defmod fb MQTT2_DEVICE
attr fb readingList zigbee2mqtt/Fernbedienung_1:.* {json2nameValue($EVENT)}

-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

matt_muc

Danke für die schnellen Rückmeldungen! Ohne das Leerzeichen habe ich jetzt zwei neue MQTT2_Devices Fernbedienung_1 und Fernbedienung_2 in FHEM.

Ich bekomme hier jetzt Readings, aber noch keine Events

define Fernbedienung1Schalter2off notify zigbee_Fernbedienung_1 {json2nameValue("action: off_2")} set Rolladen_SchlafZimmer "OFF"
#   CFGFN     
#   DEF        zigbee_Fernbedienung_1 {json2nameValue("action: off_2")} set Rolladen_SchlafZimmer "OFF"
#   FUUID      6957fc58-f33f-4a16-e3c6-2405d7ee2720ad10
#   NAME       Fernbedienung1Schalter2off
#   NOTIFYDEV  zigbee_Fernbedienung_1
#   NR         140
#   NTFY_ORDER 50-Fernbedienung1Schalter2off
#   REGEXP     zigbee_Fernbedienung_1
#   STATE      2026-01-02 18:12:10
#   TRIGGERTIME 1767373930.0685
#   TYPE       notify
#   eventCount 1
#   READINGS:
#     2026-01-02 18:11:52   state           active
#     2026-01-02 18:12:10   triggeredByDev  zigbee_Fernbedienung_1
#     2026-01-02 18:12:10   triggeredByEvent battery: 200
#
setstate Fernbedienung1Schalter2off 2026-01-02 18:12:10
setstate Fernbedienung1Schalter2off 2026-01-02 18:11:52 state active
setstate Fernbedienung1Schalter2off 2026-01-02 18:12:10 triggeredByDev zigbee_Fernbedienung_1
setstate Fernbedienung1Schalter2off 2026-01-02 18:12:10 triggeredByEvent battery: 200


Das hier ist die Gegenseite:

define Rolladen_SchlafZimmer ShellSwitch /opt/fhem/scripts/fernotron-control/FernotronRemote.sh 2 u d
attr Rolladen_SchlafZimmer cmdIcon on:black_up off:black_down
attr Rolladen_SchlafZimmer room Rolladensteuerung
#   CMD        /opt/fhem/scripts/fernotron-control/FernotronRemote.sh 2
#   DEF        /opt/fhem/scripts/fernotron-control/FernotronRemote.sh 2 u d
#   FUUID      694d16e9-f33f-4a16-3284-3ab2edadf7cb3eda
#   NAME       Rolladen_SchlafZimmer
#   NR         111
#   OFF        d
#   ON         u
#   STATE      on
#   TYPE       ShellSwitch
#   READINGS:
#     2025-12-25 11:50:35   state           on
#
setstate Rolladen_SchlafZimmer on
setstate Rolladen_SchlafZimmer 2025-12-25 11:50:35 state on


Was ist hier noch falsch?

Beta-User

...du wirfst da ziemlich viel durcheinander...

Mach doch erst mal ein sauberes MQTT2_DEVICE...
Server: HP-elitedesk@Debian 13, 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