Zigbee2mqtt

vielen Dank für die Unterstützung - bin jetzt weiter gekommen:

und danach muss ich es aus dem Backup wiederherstellen, weil die Installation fehlerhaft ist
kenn mich leider mit „npm“ und so gar nicht aus.

Tue mir bitte den gefallen und lese Dir die Anleitungen auf zigbee2mqtt.io nochmal genau durch und gehe sie bitte Schritt für Schritt durch.

Wenn Du pnpm installiert hast, warum nutzt Du dann noch das alte instalations/Update-Script mit npm?

Liebe Grüße
Burkhard.

hab mich hierbei am Github-Eintrag von Nall-chan orientiert und die dortige Anleitung befolgt.
aber dann wühle ich mich nochmals durch zigbee2mqtt.io - auch wenn dort zum Update nur 2 Sätze stehen.
Vielleicht finde ich den Fehler ja irgendwo anders

@sunnyww

hast Du es lösen können?

Und hast Du geprüft, ob Du die richtige update.sh nutzt. Mich macht es halt stutzig, dass in Deinem Screenshot NPM nen Fehler rausgibt. Deswegen läuft der Update-Prozess nicht sauber durch.

LG
Burkhard

1 „Gefällt mir“

Moin Burkhard,
danke der Nachfrage!
In Teilen konnte ich es lösen. Das Update läuft gemäß folgender Beschreibung durch und meldet ein erfolgreiches Update:

Bare-metal installations (no Docker/Home Assistant add-on)

For Git based installations: removed configuration.yaml from repo, this will result in the following error when updating:
error: Your local changes to the following files would be overwritten by merge:
  data/configuration.yaml

To fix this, update by executing:
git checkout data/configuration.example.yaml

mv data/configuration.yaml data/configuration.yaml.bak

./update.sh # (update as you usually do)

mv data/configuration.yaml.bak data/configuration.yaml

pnpm is now used instead of npm, the installation instructions and update.sh script has been updated accordingly. 
For existing installations you need to execute npm install -g pnpm before updating.

Before using the ./update.sh script, make sure you pull changes from git with git pull --no-rebase (after stopping Zigbee2MQTT).

If Zigbee2MQTT fails to start because of missing files after the update, run pnpm run clean, then start Zigbee2MQTT again.

vor allem die Anmerkungen sind zu beachten! (Quelle: Zigbee2MQTT 2.0.0 breaking changes · Koenkk/zigbee2mqtt · Discussion #24198 · GitHub)

Das Update läuft dann sauber durch, allerdings ist in Folge zigbee2mqtt per Oberfläche nicht mehr erreichbar.
Hatte danach keine Lust mehr und das Thema erstmal zu den Akten gelegt und bin aufs Sofa gewechselt :wink:

das ist noch die Installations-Ausgabe:

Checking Zigbee2MQTT status...
Updating...
Already up to date.
Installing dependencies...
Lockfile is up to date, resolution step is skipped
Packages: +368
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Progress: resolved 368, reused 0, downloaded 368, added 368, done
node_modules/.pnpm/unix-dgram@2.0.6/node_modules/unix-dgram: Running install script...
node_modules/.pnpm/unix-dgram@2.0.6/node_modules/unix-dgram: Running install script, done in 5.3s
node_modules/.pnpm/sd-notify@2.8.0/node_modules/sd-notify: Running install script, failed in 3.3s (skipped as optional)dules/.pnpm/@serialport+bindings-cpp@12.0.1/node_modules/@serialport/bindings-cpp: Running install script
, done in 243msnpm/esbuild@0.21.5/node_modules/esbuild: Running postinstall script, done in 153ms

dependencies:
+ ajv 8.17.1
+ bind-decorator 1.0.11
+ debounce 2.2.0
+ express-static-gzip 2.2.0
+ fast-deep-equal 3.1.3
+ finalhandler 1.3.1
+ git-last-commit 1.0.1
+ humanize-duration 3.32.1
+ js-yaml 4.1.0
+ json-stable-stringify-without-jsonify 1.0.1
+ jszip 3.10.1
+ moment 2.30.1
+ mqtt 5.10.3
+ object-assign-deep 0.4.0
+ rimraf 6.0.1
+ semver 7.6.3
+ source-map-support 0.5.21
+ throttleit 2.1.0
+ winston 3.17.0
+ winston-syslog 2.7.1
+ winston-transport 4.9.0
+ ws 8.18.0
+ zigbee-herdsman 3.2.1
+ zigbee-herdsman-converters 21.12.0
+ zigbee2mqtt-frontend 0.9.4

optionalDependencies:
+ sd-notify 2.8.0

devDependencies:
+ @eslint/core 0.9.1
+ @eslint/js 9.17.0
+ @ianvs/prettier-plugin-sort-imports 4.4.0
+ @types/eslint__js 8.42.3
+ @types/finalhandler 1.2.3
+ @types/humanize-duration 3.27.4
+ @types/js-yaml 4.0.9
+ @types/node 22.10.2
+ @types/object-assign-deep 0.4.3
+ @types/readable-stream 4.0.18
+ @types/sd-notify 2.8.2
+ @types/serve-static 1.15.7
+ @types/ws 8.5.13
+ @vitest/coverage-v8 2.1.8
+ eslint 9.17.0
+ eslint-config-prettier 9.1.0
+ prettier 3.4.2
+ tmp 0.2.3
+ typescript 5.7.2
+ typescript-eslint 8.18.2
+ vitest 2.1.8

Done in 9.9s
Building...

> zigbee2mqtt@2.0.0 build /opt/zigbee2mqtt
> tsc && node index.js writehash

Done!

und dann der Fehler, wenn der Service gestartet werden soll:

root@zigbee2mqtt:/opt/zigbee2mqtt# systemctl status zigbee2mqtt.service
× zigbee2mqtt.service - zigbee2mqtt
     Loaded: loaded (/etc/systemd/system/zigbee2mqtt.service; enabled; preset: enabled)
     Active: failed (Result: exit-code) since Wed 2025-01-15 07:57:00 CET; 1s ago
   Duration: 550ms
    Process: 652 ExecStart=/usr/bin/npm start (code=exited, status=1/FAILURE)
   Main PID: 652 (code=exited, status=1/FAILURE)
        CPU: 765ms

Jan 15 07:57:00 zigbee2mqtt systemd[1]: zigbee2mqtt.service: Scheduled restart job, restart counter is at 5.
Jan 15 07:57:00 zigbee2mqtt systemd[1]: Stopped zigbee2mqtt.service - zigbee2mqtt.
Jan 15 07:57:00 zigbee2mqtt systemd[1]: zigbee2mqtt.service: Start request repeated too quickly.
Jan 15 07:57:00 zigbee2mqtt systemd[1]: zigbee2mqtt.service: Failed with result 'exit-code'.
Jan 15 07:57:00 zigbee2mqtt systemd[1]: Failed to start zigbee2mqtt.service - zigbee2mqtt.

ich führe dann gemäß Anleitung noch

pnpm run clean

aus mit folgender Ausgabe:

root@zigbee2mqtt:/opt/zigbee2mqtt# pnpm run clean

> zigbee2mqtt@2.0.0 clean /opt/zigbee2mqtt
> rimraf coverage dist tsconfig.tsbuildinfo

Fehler bleibt aber bestehen und die Oberfläche ist logischerweise nicht erreichbar.
Wobei ich den Fehler schon äußerst seltsam finde

Jan 15 07:57:00 zigbee2mqtt systemd[1]: zigbee2mqtt.service: Start request repeated too quickly.

Ich werde den LXC jetzt mal 30 Minuten abschalten und schauen, ob es dann startet - kann mir aber nicht vorstellen, dass das tatsächlich das Problem sein sollte.

Was sagt das log ?

# View the log of Zigbee2MQTT
sudo journalctl -u zigbee2mqtt.service -f

Und wenn du es einfach mal nicht als Dienst, sondern per pnpm start startest?

Michael

1 „Gefällt mir“

das Log ist aus meiner Sicht Käse:

root@zigbee2mqtt:/opt/zigbee2mqtt# sudo journalctl -u zigbee2mqtt.service -f
Jan 15 08:55:29 zigbee2mqtt npm[456]:     at Object.reRead (/opt/zigbee2mqtt/lib/util/settings.ts:640:5)
Jan 15 08:55:29 zigbee2mqtt npm[456]:     at start (/opt/zigbee2mqtt/index.js:130:14)
Jan 15 08:55:29 zigbee2mqtt npm[456]:     at processTicksAndRejections (node:internal/process/task_queues:95:5)
Jan 15 08:55:29 zigbee2mqtt systemd[1]: zigbee2mqtt.service: Main process exited, code=exited, status=1/FAILURE
Jan 15 08:55:29 zigbee2mqtt systemd[1]: zigbee2mqtt.service: Failed with result 'exit-code'.
Jan 15 08:55:29 zigbee2mqtt systemd[1]: zigbee2mqtt.service: Scheduled restart job, restart counter is at 6.
Jan 15 08:55:29 zigbee2mqtt systemd[1]: Stopped zigbee2mqtt.service - zigbee2mqtt.
Jan 15 08:55:29 zigbee2mqtt systemd[1]: zigbee2mqtt.service: Start request repeated too quickly.
Jan 15 08:55:29 zigbee2mqtt systemd[1]: zigbee2mqtt.service: Failed with result 'exit-code'.
Jan 15 08:55:29 zigbee2mqtt systemd[1]: Failed to start zigbee2mqtt.service - zigbee2mqtt.

der manuelle Start per pnpm start zeigt folgendes Verhalten:

root@zigbee2mqtt:/opt/zigbee2mqtt/data# pnpm start

> zigbee2mqtt@2.0.0 start /opt/zigbee2mqtt
> node index.js

Starting Zigbee2MQTT without watchdog.
Migration notes written in /opt/zigbee2mqtt/data/migration-1-to-2.log
Migration notes written in /opt/zigbee2mqtt/data/migration-2-to-3.log
Migration notes written in /opt/zigbee2mqtt/data/migration-3-to-4.log
[2025-01-15 10:48:52] info:     z2m: Logging to console, file (filename: log.log)
[2025-01-15 10:48:52] info:     z2m: Starting Zigbee2MQTT version 2.0.0 (commit #060ae99)
[2025-01-15 10:48:52] info:     z2m: Starting zigbee-herdsman (3.2.1)
[2025-01-15 10:48:52] error:    z2m: Error while starting zigbee-herdsman
[2025-01-15 10:48:52] error:    z2m: Failed to start zigbee-herdsman
[2025-01-15 10:48:52] error:    z2m: Check https://www.zigbee2mqtt.io/guide/installation/20_zigbee2mqtt-fails-to-start_crashes-runtime.html for possible solutions
[2025-01-15 10:48:52] error:    z2m: Exiting...
[2025-01-15 10:48:52] error:    z2m: Error: Cannot discover TCP adapters at this time. Specify valid 'adapter' and 'port' in your configuration.
    at findTCPAdapter (/opt/zigbee2mqtt/node_modules/.pnpm/zigbee-herdsman@3.2.1/node_modules/zigbee-herdsman/src/adapter/adapterDiscovery.ts:470:15)
    at discoverAdapter (/opt/zigbee2mqtt/node_modules/.pnpm/zigbee-herdsman@3.2.1/node_modules/zigbee-herdsman/src/adapter/adapterDiscovery.ts:496:26)
    at Function.create (/opt/zigbee2mqtt/node_modules/.pnpm/zigbee-herdsman@3.2.1/node_modules/zigbee-herdsman/src/adapter/adapter.ts:68:54)
    at Controller.start (/opt/zigbee2mqtt/node_modules/.pnpm/zigbee-herdsman@3.2.1/node_modules/zigbee-herdsman/src/controller/controller.ts:132:38)
    at Zigbee.start (/opt/zigbee2mqtt/lib/zigbee.ts:69:47)
    at Controller.start (/opt/zigbee2mqtt/lib/controller.ts:142:13)
    at start (/opt/zigbee2mqtt/index.js:161:5)
 ELIFECYCLE  Command failed with exit code 1.

meine configuration.yaml sieht wie folgt aus:

homeassistant:
  enabled: true
mqtt:
  base_topic: zigbee2mqtt
  server: mqtt://192.168.178.4:1884
  user: admin
  password: '****'
  keepalive: 60
  version: 4
serial:
  port: tcp://192.168.178.110:6638
frontend:
  enabled: true
  auth_token: '****'

genutzt wird ein SLZB-06 per PoE
der Adapter ist gemäß Vorgabe des Herstellers in der configuration.yaml eingerichtet. Muss hier eine Anpassung stattfinden?

Ja.

Also it is recommended to explicitly add a serial.adapter to your configuration.yaml, see #24364 for more info.

zu finden in
Zigbee2MQTT 2.0.0 breaking changes
Michael

1 „Gefällt mir“

kleine Ursache große Wirkung :wink:
jetzt läuft es wieder.

Ich habe in der configuration.yaml folgende Zeile unter serial ergänzt:

adapter: zstack 

somit sieht die configuration.yaml jetzt wie folgt aus:

homeassistant:
  enabled: true
mqtt:
  base_topic: zigbee2mqtt
  server: mqtt://192.168.178.4:1884
  user: admin
  password: '****'
  keepalive: 60
  version: 4
serial:
  adapter: zstack 
  port: tcp://192.168.178.110:6638
frontend:
  enabled: true
  auth_token: '****'

Müssen alle mit SLZB-06 eingeben, da der Adapter nicht automatisch erkannt wird.

Vielen Dank für eure Unterstützung!

1 „Gefällt mir“

Den Teil der Konfiguration kannst Du beim SLZB-06 ja einfach aus der Weboberfläche rüberkopieren. Bei meinem SLZB-06M muss es dann nämlich z.B. „Ember“ heissen (anderer Chipsatz)

wobei das ‚zstack‘ der neutrale Eintrag für zigbee2mqtt darstellt, welcher wie eine Art generischer Eintrag fungiert.

bei mir zeigt der SLZB-06:

Das stimmt so nicht. Zstack ist für die TI Chips. Früher gab es Auto als neutralen Eintrag, aber der ist auch weg mit 2.0.
Michael

so war die Rückmeldung im Discord-Support - ich selbst hab davon keine Ahnung und gebe es nur weiter, wie es mir mitgeteilt wurde :slight_smile:

Frage zu einem Aqara Vibrationssensor.

Er meldete plötzlich Batterie 0%.
Ich hatte ihn mehrfach neu angelernt. Blink Blink aber Keine Änderung.
Batterie natürlich auch gewechselt, falls ihm 2,8V nicht reichen. Nix

Plötzlich geht die blaue LED nicht mehr. Egal was ich tue.
Er meldet sich fleißig (Last Seen) ohne Daten zu liefern.
Aber ich bekomme ihn auch nicht aus ZigBee2MQTT abgelernt.

Reicht es, wenn ich ihn aus der configuration.yaml rauswerfe oder wie ist der korrekte Schritt?

Entfernen erzwingen in Z2M aktivieren.
image

Dann Den Vibrationssensor resetten.

LG
Burkhard

1 „Gefällt mir“

Beides ohne Erfolg schon getestet.

Stopp. Erzwingen noch nicht.

Ok, hatte übersehen, dass man da umschalten muss. Danke. Ist raus.

BTW: Temperatur zeigen die Teile Phantasiewerte

Noch was, das ich nach 2.0 ständig sehe. Muss ich mir da Gedanken machen?

1 „Gefällt mir“

Welche Version der FW hast Du auf Deinem Ember-Stick?

LG
Burkhard

Die Aquara Dinger sollen glaube ich alle die Geräte Temperatur zeigen bin ich der Meinung. Es ist nicht explizit gesagt das es die Raumtemperatur sein soll. Außer natürlich bei den Temperatur Sensoren die das machen sollen…