[gelöst] Anfängerfrage Installation zigbee2mqtt / Einrichtung in FHEM (Step by Step)

Begonnen von Fabiango, 27 September 2023, 22:25:07

Vorheriges Thema - Nächstes Thema

TomLee

Ja es sollte ein zweites Device in dem Raum angelegt werden.
Wie sieht das Bridge-Device jetzt aus, zeig mal ein List.

Fabiango

List vom MQTT2 Server
Internals:
   CONNECTS   3
   Clients    :MQTT2_DEVICE:MQTT_GENERIC_BRIDGE:
   ClientsKeepOrder 1
   DEF        1883 global
   FD         13
   FUUID      65154010-f33f-c1dd-c02c-4b566da5f3e1c86a
   NAME       myBroker
   NR         367
   PORT       1883
   STATE      Initialized
   TYPE       MQTT2_SERVER
   eventCount 5
   MatchList:
     1:MQTT2_DEVICE ^.
     2:MQTT_GENERIC_BRIDGE ^.
   READINGS:
     2023-09-28 18:48:16   nrclients       1
     2023-09-28 18:46:41   state           Initialized
   clients:
     myBroker_127.0.0.1_59522 1
   retain:
Attributes:

List vom einzigen Device (Vermutlich die Bridge wo du meinst?)
Internals:
   CFGFN     
   CID        zigbee_pi
   DEF        zigbee_pi
   FUUID      6515adc0-f33f-c1dd-1b0e-de8e7b96f6922ac0
   IODev      myBroker
   LASTInputDev myBroker
   MSGCNT     105
   NAME       MQTT2_zigbee_pi
   NR         375
   STATE      OFF
   TYPE       MQTT2_DEVICE
   eventCount 117
   myBroker_CONN myBroker_127.0.0.1_59522
   myBroker_MSGCNT 105
   myBroker_TIME 2023-09-28 19:48:14
   OLDREADINGS:
   READINGS:
     2023-09-28 18:49:02   attrTemplateVersion 20220328
     2023-09-28 19:48:14   log_level       debug
     2023-09-28 19:48:14   log_message     Saving state to file /opt/zigbee2mqtt/data/state.json
   hmccu:
Attributes:
   bridgeRegexp zigbee2mqtt/([A-Za-z0-9._]+)[/]?.*:.* "zigbee_$1"
   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.
   devicetopic zigbee2mqtt
   getList    networkmap_raw:noArg raw $DEVICETOPIC/bridge/request/networkmap raw
  networkmap_graphviz:noArg graphviz $DEVICETOPIC/bridge/request/networkmap graphviz
   icon       mqtt
   model      zigbee2mqtt_bridge
   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
   room       MQTT2_DEVICE
   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
   setStateList on off

TomLee

Ich sehe das Problem, warum kein Device angelegt wird, erstmal nicht, Vlt. hat wer anderes ja mehr Durchblick.

Fabiango

Hab nun nochmals beides neu gestartet und nun kam auch die einzelne Lampe als Device.
Ein grosses DANKESCHÖN für euren Support.

Noch eine letzte Frage.
Es wurde nun ebenfalls ein Device Namens zigbee_bridge angelegt automatisch und den Status zeigt ???
Braucht es das Device?
Internals:
   CID        zigbee_bridge
   DEF        zigbee_bridge
   FUUID      6515beb1-f33f-c1dd-7fc0-fbfc2568a4bb6600
   IODev      myBroker
   NAME       MQTT2_zigbee_bridge
   NR         77
   STATE      ???
   TYPE       MQTT2_DEVICE
   READINGS:
     2023-09-28 20:33:23   IODev           myBroker
     2023-09-28 19:59:54   associatedWith  MQTT2_zigbee_pi
     2023-09-28 19:59:54   data_id         FL_Kugel
     2023-09-28 19:59:54   error           Update of 'FL_Kugel' failed (Device didn't respond to OTA request)
     2023-09-28 19:59:54   status          error
     2023-09-28 19:59:54   transaction     ikkbz-2
Attributes:
   readingList zigbee2mqtt/bridge/response/restart:.* { json2nameValue($EVENT) }
zigbee2mqtt/bridge/response/device/ota_update/update:.* { json2nameValue($EVENT) }
   room       MQTT2_DEVICE

TomLee

Die readingList-Einträge dieses Devices

zigbee2mqtt/bridge/response/restart:.* { json2nameValue($EVENT) }
zigbee2mqtt/bridge/response/device/ota_update/update:.* { json2nameValue($EVENT) }

ergänzt du einfach in der readingList des Bridge-Device, die gehören da hin.

Das zusätzlich erstellte Device kannst du dann löschen, das wird dann nicht mehr angelegt.

Fabiango

Perfekt. Hat ebenfalls geklappt.
(Gibt noch viel zum lernen  ;D )

Wenn ich FHEM neu starte (bsp. nach update) muss ich manuell den Zigbee2mqtt Dienst auf dem Raspberry neu starten damit alles wieder geht.

Gibt es eine Möglichkeit den Dienst automatisch neustarten zu lassen nach dem Start von FHEM ?


TomLee

Zur eigentlichen Frage:

ZitatGibt es eine Möglichkeit den Dienst automatisch neustarten zu lassen nach dem Start von FHEM ?

Ich weiß auf Anhieb nicht wie man das in FHEM umsetzt, in den Ordner zigbee zu "gehen" und dann das npm Start auszuführen, ich hab einen Verdacht müsste mich aber mit beschäftigen.

Fabiango

systemctl hab ich im Raspberry eingerichtet damit der Dienst Zigbee2MQTT beim Hochfahren oder bei einem Neustart vom Raspberry startet. Das klappt.

Ich suche die Möglichkeit das FHEM einen Befehl absetzt und den Dienst neustarten lässt.

TomLee


Fabiango

Wenn ich FHEM neustarte (ohne den ganzen Raspberry) dann verliert Zigbee2MQTT die Verbindung und funkioniert dann nichr mehr. Erst wenn ich den Dienst neustarte geht es wieder

TomLee

Dann muss man den Grund suchen warum das so ist, das ist ja nicht "normal", eine Idee hab ich aber erstmal nicht.

MadMax-FHEM

Es gibt das Modul servicd (oder so ähnlich), damit lassen sich services aus fhem steuern/überwachen...
EDIT: https://forum.fhem.de/index.php?topic=79952.msg719659#msg719659

Bei fhem Start gibt es das Event global:INITIALIZED darauf ein notify was den Dienst neu startet...

Andere Lösung: in der Service Datei von zigbee2mqtt eine Abhängigkeit zu fhem, dann wird (sollte) der Dienst auch mit/nach fhem neu gestartet werden...

Gruß, Joachim
FHEM PI3B+ Bullseye: HM-CFG-USB, 40x HM, ZWave-USB, 13x ZWave, EnOcean-PI, 15x EnOcean, HUE/deCONZ, CO2, ESP-Multisensor, Shelly, alexa-fhem, ...
FHEM PI2 Buster: HM-CFG-USB, 25x HM, ZWave-USB, 4x ZWave, EnOcean-PI, 3x EnOcean, Shelly, ha-bridge, ...
FHEM PI3 Buster (Test)

MadMax-FHEM

Zitat von: TomLee am 28 September 2023, 22:03:28Dann muss man den Grund suchen warum das so ist, das ist ja nicht "normal", eine Idee hab ich aber erstmal nicht.

Das ist natürlich das was man machen sollte!

Kann mich nicht mehr erinnern, ob das bei mir auch der Fall war, dazu hab ich zu kurz mit zigbee2mqtt rumgespielt...

Gruß, Joachim
FHEM PI3B+ Bullseye: HM-CFG-USB, 40x HM, ZWave-USB, 13x ZWave, EnOcean-PI, 15x EnOcean, HUE/deCONZ, CO2, ESP-Multisensor, Shelly, alexa-fhem, ...
FHEM PI2 Buster: HM-CFG-USB, 25x HM, ZWave-USB, 4x ZWave, EnOcean-PI, 3x EnOcean, Shelly, ha-bridge, ...
FHEM PI3 Buster (Test)

TomLee

Beobachte mal das Log in der Oberfläche von z2m während du FHEM neu startest, vlt. steht da was weshalb der Dienst sich nicht wieder mit dem MQTT2_SERVER verbindet.