FHEM Forum

FHEM - Hausautomations-Systeme => Zigbee => Thema gestartet von: Wernieman am 26 Juli 2025, 18:21:38

Titel: [Gelöst] ZigBee2MQTT Befehle senden funktioniert nicht
Beitrag von: Wernieman am 26 Juli 2025, 18:21:38
Hallo Freunde,

habe jetzt einen ZigBee2MQTT Container und einer Teststeckdose installiert.

Die Steckdose ist mit dem ZigBee2MQTT Container verbunden (also im ZigBee-Netzwerk vorhanden) und ich kann sie per Oberfläche des ZigBee2MQTT schalten.

Dann habe ich den MQTT Server in FHEM eingetragen.
-> ZigBee2MQTT wurde in FHEM angelegt.
-> Template zigbee2mqtt_bridge ausgewählt
Sieht erstmal gut aus

Steckdose wurde auch automatisch angelegt
-> Werte zeigen die Richtigen Werte
-> Template zigbee2mqtt_plug ausgewählt
Alle Werte kommen gut rein. Auch wenn ich sie Schalte (Manuell oder per ZigBee2MQTT-Oberfläche) wird alles richtig aktualisiert

ABER .. ich kann nicht per FHEM schalten. Es steht als status nur set-on, aber sonst ändert sich nichts. Ich vermute, der Kanal FHEM->ZigBee2MQTT funktioniert nicht, aber ich weiß nicht wieso und kriege es nicht raus.
Hinweis: Beide Container sind im Gleichen docker-compose definiert, und zigbee->fhem funktioniert ja.

Hat jemand eine Idee, wo ich suchen kann? Config in FHEM habe ich beigelegt, andere kann ich gerne nachliefern.

Bridge Config:
define zigbee2mqtt MQTT2_DEVICE mqttjs_b1d3a38d
attr zigbee2mqtt bridgeRegexp zigbee2mqtt/((?!bridge)[A-Za-z0-9._]+)/?.*:.* "zigbee_$1"
attr zigbee2mqtt comment To check for new updates of the deamon software, you might want to use a separate HTTPMOD device. See HTTPMOD template zigbee2mqtt_daemon_updates for further details.
attr zigbee2mqtt devicetopic zigbee2mqtt
attr zigbee2mqtt getList networkmap_raw:noArg raw $DEVICETOPIC/bridge/request/networkmap raw\
  networkmap_graphviz:noArg graphviz $DEVICETOPIC/bridge/request/networkmap graphviz
attr zigbee2mqtt model zigbee2mqtt_bridge
attr zigbee2mqtt readingList $DEVICETOPIC/bridge/state:.* state\
  $DEVICETOPIC/bridge/config/devices:.* {}\
  $DEVICETOPIC/bridge/config/log_level:.* log_level\
  $DEVICETOPIC/bridge/config/permit_join:.* permit_join\
  $DEVICETOPIC/bridge/config/rename:.* { json2nameValue($EVENT, 'rename_') }\
  $DEVICETOPIC/bridge/config:.* { json2nameValue($EVENT) }\
  $DEVICETOPIC/bridge/log:.*\"type\".\"devices\".\"message\".* devices\
  $DEVICETOPIC/bridge/log:.* log\
  $DEVICETOPIC/bridge/logging:.* { json2nameValue($EVENT,'log_') }\
  $DEVICETOPIC/bridge/response/networkmap:.* { my $type = $EVENT =~ m/.*,"type":"(raw|graphviz)",.*/ ? $1 : 'networkmap';; $EVENT =~ m/{"data":\{.*"value":"?(.*[^"])"?\},"status":"ok"\}/ ? { $type=>$1 } : {} }\
  $DEVICETOPIC/bridge/devices:.* devices\
  $DEVICETOPIC/bridge/info:.* info\
  $DEVICETOPIC/bridge/groups:.* groups\
  $DEVICETOPIC/bridge/event:.* { json2nameValue($EVENT) }\
  $DEVICETOPIC/bridge/extensions:.* extensions\
  $DEVICETOPIC/bridge/response/permit_join:.* { json2nameValue($EVENT) }\
  $DEVICETOPIC/bridge/definitions:.* {}\
mqttjs_b1d3a38d:zigbee2mqtt/bridge/health:.* { json2nameValue($EVENT) }
attr zigbee2mqtt room IO,Log
attr zigbee2mqtt setList log_level:debug,info,warn,error $DEVICETOPIC/bridge/config/log_level $EVTPART1\
  permit_join:true,false $DEVICETOPIC/bridge/request/permit_join $EVTPART1\
  remove:textField $DEVICETOPIC/bridge/config/remove $EVTPART1\
  ota_update:textField $DEVICETOPIC/bridge/ota_update/update $EVTPART1\
  ota_update_check:textField $DEVICETOPIC/bridge/ota_update/check $EVTPART1\
  y_device_setting:textField $DEVICETOPIC/$EVTPART1/set {"$EVTPART2": "$EVTPART3"}\
  x_bind:textField $DEVICETOPIC/bridge/bind/$EVTPART1 $EVTPART2\
  x_bind_unbind:textField $DEVICETOPIC/bridge/unbind/$EVTPART1 $EVTPART2\
  x_device_options:textField $DEVICETOPIC/bridge/config/device_options {"friendly_name":"$EVTPART1","options": {"$EVTPART2": "$EVTPART3"}}\
  x_group_add_to:textField $DEVICETOPIC/bridge/group/$EVTPART1/add $EVTPART2\
  x_group_rm_from:textField $DEVICETOPIC/bridge/group/$EVTPART1/remove $EVTPART2\
  x_group_rm_from_all:textField $DEVICETOPIC/bridge/group/$EVTPART1/remove_all $EVTPART2\
  x_group_add_group:textField $DEVICETOPIC/bridge/config/add_group $EVTPART1\
  x_group_rm_group:textField $DEVICETOPIC/bridge/config/remove_group $EVTPART1\
  z_elapsed:textField $DEVICETOPIC/bridge/config/elapsed $EVTPART1\
  z_last_seen:disable,ISO_8601,epoch,ISO_8601_local $DEVICETOPIC/bridge/config/last_seen $EVTPART1\
  z_ban:textField $DEVICETOPIC/bridge/config/ban $EVTPART1\
  z_rename:textField $DEVICETOPIC/bridge/config/rename  {"old":"$EVTPART1","new":"$EVTPART2"}\
  z_reset_CC:noArg $DEVICETOPIC/bridge/config/reset
attr zigbee2mqtt setStateList on off
#   CFGFN     
#   CID        mqttjs_b1d3a38d
#   DEF        mqttjs_b1d3a38d
#   FUUID      6884faf0-f33f-a76c-31bd-2a81ded2b2e76a03
#   IODev      mqtt2s
#   LASTInputDev mqtt2s
#   MSGCNT     18
#   NAME       zigbee2mqtt
#   NR         762
#   STATE      ON
#   TYPE       MQTT2_DEVICE
#   eventCount 32
#   mqtt2s_CONN mqtt2s_172.28.5.1_53866
#   mqtt2s_MSGCNT 18
#   mqtt2s_TIME 2025-07-26 18:18:03
#   .DT:
#     DEVICETOPIC zigbee2mqtt
#   .attraggr:
#   .attrminint:
#   OLDREADINGS:
#   READINGS:
#     2025-07-26 17:58:12   attrTemplateVersion 20240628
#     2025-07-26 18:17:36   devices_0x70b3d52b6014f121_leave_count 0
#     2025-07-26 18:17:36   devices_0x70b3d52b6014f121_messages 40
#     2025-07-26 18:17:36   devices_0x70b3d52b6014f121_messages_per_sec 0.046
#     2025-07-26 18:17:36   devices_0x70b3d52b6014f121_network_address_changes 0
#     2025-07-26 18:18:03   log_level       info
#     2025-07-26 18:18:03   log_message     z2m:mqtt: MQTT publish: topic 'zigbee2mqtt/ZigBee Steckdose 1', payload '{"current":0,"energy":0,"linkquality":255,"power":0,"state":"ON","voltage":228}'
#     2025-07-26 18:17:36   mqtt_connected  true
#     2025-07-26 18:17:36   mqtt_published  64
#     2025-07-26 18:17:36   mqtt_queued     0
#     2025-07-26 18:17:36   mqtt_received   8
#     2025-07-26 18:17:36   os_load_average_1 1.13
#     2025-07-26 18:17:36   os_load_average_2 0.96
#     2025-07-26 18:17:36   os_load_average_3 0.83
#     2025-07-26 18:17:36   os_memory_percent 53.75
#     2025-07-26 18:17:36   os_memory_used_mb 7323.98
#     2025-07-26 18:17:36   process_memory_percent 0.7282
#     2025-07-26 18:17:36   process_memory_used_mb 115.31
#     2025-07-26 18:17:36   process_uptime_sec 1207
#     2025-07-26 18:17:36   response_time   1753546656944
#     2025-07-26 18:03:06   subscriptions   zigbee2mqtt/#
#   hmccu:
#
setstate zigbee2mqtt ON
setstate zigbee2mqtt 2025-07-26 17:58:12 attrTemplateVersion 20240628
setstate zigbee2mqtt 2025-07-26 18:17:36 devices_0x70b3d52b6014f121_leave_count 0
setstate zigbee2mqtt 2025-07-26 18:17:36 devices_0x70b3d52b6014f121_messages 40
setstate zigbee2mqtt 2025-07-26 18:17:36 devices_0x70b3d52b6014f121_messages_per_sec 0.046
setstate zigbee2mqtt 2025-07-26 18:17:36 devices_0x70b3d52b6014f121_network_address_changes 0
setstate zigbee2mqtt 2025-07-26 18:18:03 log_level info
setstate zigbee2mqtt 2025-07-26 18:18:03 log_message z2m:mqtt: MQTT publish: topic 'zigbee2mqtt/ZigBee Steckdose 1', payload '{"current":0,"energy":0,"linkquality":255,"power":0,"state":"ON","voltage":228}'
setstate zigbee2mqtt 2025-07-26 18:17:36 mqtt_connected true
setstate zigbee2mqtt 2025-07-26 18:17:36 mqtt_published 64
setstate zigbee2mqtt 2025-07-26 18:17:36 mqtt_queued 0
setstate zigbee2mqtt 2025-07-26 18:17:36 mqtt_received 8
setstate zigbee2mqtt 2025-07-26 18:17:36 os_load_average_1 1.13
setstate zigbee2mqtt 2025-07-26 18:17:36 os_load_average_2 0.96
setstate zigbee2mqtt 2025-07-26 18:17:36 os_load_average_3 0.83
setstate zigbee2mqtt 2025-07-26 18:17:36 os_memory_percent 53.75
setstate zigbee2mqtt 2025-07-26 18:17:36 os_memory_used_mb 7323.98
setstate zigbee2mqtt 2025-07-26 18:17:36 process_memory_percent 0.7282
setstate zigbee2mqtt 2025-07-26 18:17:36 process_memory_used_mb 115.31
setstate zigbee2mqtt 2025-07-26 18:17:36 process_uptime_sec 1207
setstate zigbee2mqtt 2025-07-26 18:17:36 response_time 1753546656944
setstate zigbee2mqtt 2025-07-26 18:03:06 subscriptions zigbee2mqtt/#

Steckdose Config:
define zigbee_1 MQTT2_DEVICE zigbee_ZigBee
attr zigbee_1 devicetopic zigbee2mqtt/ZigBee\x20Steckdose\x201
attr zigbee_1 icon hue_filled_outlet
attr zigbee_1 model zigbee2mqtt_plug
attr zigbee_1 readingList $DEVICETOPIC:.* { my $ret=json2nameValue($EVENT);; $ret->{state}=lc($ret->{state}) if defined $ret->{state};; return $ret }
attr zigbee_1 room Strom
attr zigbee_1 setList on:noArg $DEVICETOPIC/set {"state":"ON"}\
  off:noArg $DEVICETOPIC/set {"state":"OFF"}\
  toggle:noArg $DEVICETOPIC/set {"state":"TOGGLE"}
attr zigbee_1 setStateList on off toggle
#   CFGFN     
#   CID        zigbee_ZigBee
#   DEF        zigbee_ZigBee
#   FUUID      6884fc3a-f33f-a76c-bc28-ded139360d5a08a7
#   IODev      mqtt2s
#   LASTInputDev mqtt2s
#   MSGCNT     38
#   NAME       zigbee_1
#   NR         764
#   STATE      on
#   TYPE       MQTT2_DEVICE
#   eventCount 45
#   mqtt2s_CONN mqtt2s_172.28.5.1_53866
#   mqtt2s_MSGCNT 38
#   mqtt2s_TIME 2025-07-26 18:18:03
#   .DT:
#     DEVICETOPIC zigbee2mqtt/ZigBee\x20Steckdose\x201
#   .attraggr:
#   .attrminint:
#   READINGS:
#     2025-07-26 18:03:06   IODev           mqtt2s
#     2025-07-26 18:03:06   associatedWith  zigbee2mqtt
#     2025-07-26 18:06:01   attrTemplateVersion 20220909
#     2025-07-26 18:18:03   current         0
#     2025-07-26 18:18:03   energy          0
#     2025-07-26 18:18:03   linkquality     255
#     2025-07-26 18:18:03   power           0
#     2025-07-26 18:18:03   state           on
#     2025-07-26 18:18:03   voltage         228
#   hmccu:
#
setstate zigbee_1 on
setstate zigbee_1 2025-07-26 18:03:06 IODev mqtt2s
setstate zigbee_1 2025-07-26 18:03:06 associatedWith zigbee2mqtt
setstate zigbee_1 2025-07-26 18:06:01 attrTemplateVersion 20220909
setstate zigbee_1 2025-07-26 18:18:03 current 0
setstate zigbee_1 2025-07-26 18:18:03 energy 0
setstate zigbee_1 2025-07-26 18:18:03 linkquality 255
setstate zigbee_1 2025-07-26 18:18:03 power 0
setstate zigbee_1 2025-07-26 18:18:03 state on
setstate zigbee_1 2025-07-26 18:18:03 voltage 228
Titel: Aw: ZigBee2MQTT Befehle senden funktioniert nicht
Beitrag von: Beta-User am 26 Juli 2025, 18:25:16
devicetopic scheint ein Problem zu haben.

"friendly namens" zum Einstieg vermeiden.

Sonst: IODev paßt?
Titel: Aw: ZigBee2MQTT Befehle senden funktioniert nicht
Beitrag von: Wernieman am 26 Juli 2025, 18:31:44
IODev ist der interne MQTT-Server. Habe andere MQTT-Device die Funktionieren. Also sollte Grundsätzlich MQTT O.K. sein.

Zitat"friendly namens" zum Einstieg vermeiden.
Wie meinst Du das?
Titel: Aw: ZigBee2MQTT Befehle senden funktioniert nicht
Beitrag von: Beta-User am 26 Juli 2025, 18:33:34
Zitat von: Wernieman am 26 Juli 2025, 18:31:44
Zitat"friendly namens" zum Einstieg vermeiden.
Wie meinst Du das?
Du scheinst das Ding in z2m umbenannt zu haben, vermutlich was mit Leerzeichen.

MAn keine gute Idee...
Titel: Aw: ZigBee2MQTT Befehle senden funktioniert nicht
Beitrag von: Wernieman am 26 Juli 2025, 18:41:54
Nein, das z2m hat er selber gemacht. Ich habe nur den Anzeigename in FHEM geändert.

Edit:
Meinst Du jetzt in FHEM oder in ZigBee2MQTT?

Edit2:
Wenn in FHEM, die zigbee2mqtt Bridge oder die Steckdose?
Titel: Aw: ZigBee2MQTT Befehle senden funktioniert nicht
Beitrag von: Wernieman am 26 Juli 2025, 18:52:49
O.K. jetzt habe ich es Verstanden:
Ich habe den Namen der Steckdose bei zigbe2mqtt geändert. Dort gelöscht, neu angelernt und es funzt. Abgesehen vom Template auswählen sogar automatisch.

Also merken: Keine Leerzeichen im ZigBee-Namen

Danke für die Denkanstöße!
Titel: Aw: [Gelöst] ZigBee2MQTT Befehle senden funktioniert nicht
Beitrag von: Beta-User am 26 Juli 2025, 18:56:42
Zitat von: Wernieman am 26 Juli 2025, 18:52:49O.K. jetzt habe ich es Verstanden:
Ich habe den Namen der Steckdose bei zigbe2mqtt geändert. Dort gelöscht, neu angelernt und es funzt. Abgesehen vom Template auswählen sogar automatisch.

Also merken: Keine Leerzeichen im ZigBee-Namen

Danke für die Denkanstöße!
Gar keine Umbenennung in z2m ist mAn besser....
Der technische Name ist und bleibt eindeutig.
Titel: Aw: [Gelöst] ZigBee2MQTT Befehle senden funktioniert nicht
Beitrag von: Wernieman am 26 Juli 2025, 18:59:06
Also ob eine "Wilde Nummer" so eundeutig für den Menschen zuordbar ist .. das ist die gute Frage ;o)

Auf jedem Fall habe ich heute einiges über ZigBee, ZigBee2MQTT, MQTT und FHEM dazugelernt ... man lernt nicht aus
Titel: Aw: [Gelöst] ZigBee2MQTT Befehle senden funktioniert nicht
Beitrag von: TomLee am 26 Juli 2025, 19:35:51
Zitat von: Wernieman am 26 Juli 2025, 18:59:06Also ob eine "Wilde Nummer" so eundeutig für den Menschen zuordbar ist .. das ist die gute Frage ;o)
...

In FHEM kannst Du nach dem Anlegen das Device ja nennen, wie Du magst. Und im Frontend kann man zur Unterscheidung einen Beschreibungstext angeben.
Titel: Aw: [Gelöst] ZigBee2MQTT Befehle senden funktioniert nicht
Beitrag von: Wernieman am 26 Juli 2025, 19:37:39
Stimmt ... bauf jedem falle funktioniert es jetzt und ich kann weiter "Testen". Nur habe ich aktuell eine Batterie fürs 2. Gerät vergessen zu kaufen ...
Titel: Aw: [Gelöst] ZigBee2MQTT Befehle senden funktioniert nicht
Beitrag von: TomLee am 26 Juli 2025, 21:18:29
Präventiv, am Rande...

Wir reden hier von der Anwendung der Templates, tun kann jeder was er will. ;D