ZigBee nicht verfügbar beim Starten / BT nicht verfügbar

Hallo,
Ich habe seit kurzem ein kleines Problem, das ich Ihnen gerne vorstellen möchte.
Beim Starten des Pi startet das ZigBee-Modul nicht. Ich muss es manuell aktivieren.
In den Logs habe ich dies kurz nach dem Start gefunden:

<warn> init.js:41 (Zigbee2mqttManager.init) Zigbee2mqtt USB Dongle detached to /dev/ttyUSB0

Warum? Wie kann ich das beheben?
Gleichzeitig habe ich dies entdeckt, aber ich hatte die Verwendung meines Bluetooth-Tags bereits aufgegeben, weil es zu instabil war…

2022-12-11T20:27:44+0100 <info> index.js:15 (Object.start) Bluetooth-Dienst wird gestartet
2022-12-11T20:27:44+0100 <warn> service.start.js:44 (Service.start) Bluetooth-Dienst kann nicht gestartet werden Fehler: Modul '@abandonware/bluetooth-hci-socket' nicht gefunden
Require-Stack:
- /src/server/services/bluetooth/node_modules/@abandonware/noble/lib/hci-socket/hci.js
- /src/server/services/bluetooth/node_modules/@abandonware/noble/lib/hci-socket/bindings.js
- /src/server/services/bluetooth/node_modules/@abandonware/noble/lib/resolve-bindings.js
- /src/server/services/bluetooth/node_modules/@abandonware/noble/index.js
- /src/server/services/bluetooth/lib/commands/bluetooth.start.js
- /src/server/services/bluetooth/lib/index.js
- /src/server/services/bluetooth/index.js
- /src/server/services/index.js
- /src/server/lib/index.js
- /src/server/index.js
    at Function.Module._resolveFilename (node:internal/modules/cjs/loader:995:15)
    at Function.Module._load (node:internal/modules/cjs/loader:841:27)
    at Module.require (node:internal/modules/cjs/loader:1061:19)
    at require (node:internal/modules/cjs/helpers:103:18)
    at Object.<anonymous> (/src/server/services/bluetooth/node_modules/@abandonware/noble/lib/hci-socket/hci.js:6:28)
    at Module._compile (node:internal/modules/cjs/loader:1159:14)
    at Object.Module._extensions..js (node:internal/modules/cjs/loader:1213:10)
    at Module.load (node:internal/modules/cjs/loader:1037:32)    at Function.Module._load (node:internal/modules/cjs/loader:878:12)
    at Module.require (node:internal/modules/cjs/loader:1061:19)
    at require (node:internal/modules/cjs/helpers:103:18)
    at Object.<anonymous> (/src/server/services/bluetooth/node_modules/@abandonware/noble/lib/hci-socket/bindings.js:7:13)    at Module._compile (node:internal/modules/cjs/loader:1159:14)
    at Object.Module._extensions..js (node:internal/modules/cjs/loader:1213:10)
    at Module.load (node:internal/modules/cjs/loader:1037:32)    at Function.Module._load (node:internal/modules/cjs/loader:878:12)
    at Module.require (node:internal/modules/cjs/loader:1061:19)
    at require (node:internal/modules/cjs/helpers:103:18)
    at module.exports (/src/server/services/bluetooth/node_modules/@abandonware/noble/lib/resolve-bindings.js:13:12)
    at Object.<anonymous> (/src/server/services/bluetooth/node_modules/@abandonware/noble/index.js:2:49)
    at Module._compile (node:internal/modules/cjs/loader:1159:14)
    at Object.Module._extensions..js (node:internal/modules/cjs/loader:1213:10)
    at Module.load (node:internal/modules/cjs/loader:1037:32)    at Function.Module._load (node:internal/modules/cjs/loader:878:12)
    at Module.require (node:internal/modules/cjs/loader:1061:19)
    at require (node:internal/modules/cjs/helpers:103:18)
    at BluetoothManager.start (/src/server/services/bluetooth/lib/commands/bluetooth.start.js:16:20)
    at Object.start (/src/server/services/bluetooth/index.js:16:28)
    at Service.start (/src/server/lib/service/service.start.js:33:21) {
  code: 'MODULE_NOT_FOUND',
  requireStack: [
    '/src/server/services/bluetooth/node_modules/@abandonware/noble/lib/hci-socket/hci.js',
    '/src/server/services/bluetooth/node_modules/@abandonware/noble/lib/hci-socket/bindings.js',
    '/src/server/services/bluetooth/node_modules/@abandonware/noble/lib/resolve-bindings.js',
    '/src/server/services/bluetooth/node_modules/@abandonware/noble/index.js',
    '/src/server/services/bluetooth/lib/commands/bluetooth.start.js',
    '/src/server/services/bluetooth/lib/index.js',
    '/src/server/services/bluetooth/index.js',
    '/src/server/services/index.js',
    '/src/server/lib/index.js',
    '/src/server/index.js'
  ]
}

Der Bluetooth-Dienst wird daher als „fehlerhaft“ gemeldet
Vielen Dank für Ihre Hilfe

Ach, äh, für den BT, ich sehe gerade, dass das schon gemeldet wurde… Entschuldigung für die Wiederholung.

Laut dem Code der Integration bedeutet das, dass der USB-Port, den du in Zigbee2mqtt angegeben hast, nicht verfügbar ist (wenn man die Ports auflistet):

Der Code:

Ist es möglich, dass sich dein USB-Port beim Neustart geändert hat?

Kein Problem, tkt, wir sind dran! :smiley:

Hallo
Ich habe gerade Gladys neu installiert, alles scheint zu funktionieren, außer Z2M, das gestartet hat, aber immer noch das rote Kreuz seit heute Nachmittag um 16 Uhr, keine Veränderung

Zur Information habe ich eine vollständige Untersuchung an einer frischen Installation durchgeführt.

Ich habe einen Raspberry Pi 3 B+ über das Raspberry Pi OS 64-Bit-Bild installiert (von Grund auf neu).

USB-Scan ohne Probleme:

Verbindung ohne Probleme:

Zigbee funktioniert:

Ich starte Docker neu und Zigbee funktioniert weiterhin:

2022-12-13T08:00:01+0100 <info> init.js:38 (Zigbee2mqttManager.init) Zigbee2mqtt USB-Dongle an /dev/ttyUSB0 angeschlossen
2022-12-13T08:00:01+0100 <info> installMqttContainer.js:104 (Zigbee2mqttManager.installMqttContainer) MQTT-Broker-Container erfolgreich gestartet
2022-12-13T08:00:02+0100 <info> installZ2mContainer.js:56 (Zigbee2mqttManager.installZ2mContainer) Vorbereitung der Zigbee2mqtt-Umgebung...
2022-12-13T08:00:02+0100 <info> installZ2mContainer.js:75 (Zigbee2mqttManager.installZ2mContainer) Zigbee2mqtt-Container erfolgreich gestartet
2022-12-13T08:00:02+0100 <info> connect.js:14 (Zigbee2mqttManager.connect) Verbindung von Gladys zum MQTT-Broker mqtt://localhost:1884 herstellen...
2022-12-13T08:00:02+0100 <info> connect.js:24 (MqttClient.<anonymous>) Verbindung zum MQTT-Container mqtt://localhost:1884 hergestellt
2022-12-13T08:00:02+0100 <info> subscribe.js:12 (Zigbee2mqttManager.subscribe) Abonnieren des MQTT-Themas zigbee2mqtt/#

Installation von MQTT ohne Probleme:

Danach

docker restart gladys

Und Z2M + MQTT funktionieren weiterhin:

Ich denke, es gibt ein Problem mit Ihren Installationen, aber auf jeden Fall bricht das letzte Update weder MQTT noch Zigbee2mqtt…

Ich würde gerne mehr Informationen haben, um Ihnen helfen zu können :slight_smile:

Also, ich habe es gefunden!
Ich habe den USB-Dongle gewechselt. Und jetzt habe ich kein Problem mehr…
Um genau zu sein, ist mir klar geworden, dass das Problem aufgetreten ist, seit ich meine Konfiguration auf dem RPi geändert habe. Ich habe zwei USB-Laufwerke durch ein einziges ersetzt…
Vielleicht habe ich den Dongle nicht wieder in denselben Port gesteckt, aber warum sollte das ein Problem sein? Das sollte doch von Mal zu Mal gespeichert werden?
Auf jeden Fall vielen Dank an @pierre-gilles für den vollständigen Test und die Zeit, die du investiert hast!

Schön, dass du es gefunden hast!

Das ist ein Problem, weil Zigbee2mqtt den USB-Port speichert :smiley: Wenn du also den Port wechselst, findet es den Dongle nicht mehr ^^

Das Problem ist vor allem, dass die lib usb keine udev-Regeln verwaltet, daher kann man den Port nicht festlegen.

Aber wenn ich auf „Konfiguration speichern“ klicke, sollte das nicht den Port aktualisieren und ihn für den nächsten Neustart speichern?

Aber das ist doch nervig, der Sinn von udev-Regeln ist doch, dass mein Sonoff-Dongle immer auf /dev/tty-zigbee liegt, egal an welchem USB-Port. Aber die lib usb-serial listet sie nicht auf. :neutral_face:

Ok, ich habe verstanden…
Beim nächsten Mal, wenn ich die USB-Ports anrühre, klebe ich vorher bunte Aufkleber drauf :smiley:
Schönen Abend/Tag!

Hallo, ich habe gerade mit MQTT Explorer getestet, scheinbar sehe ich den Schlüssel und das Gespräch, also liegt das Problem woanders, auf der Seite von Gladys, aber wo?

Das ist kein Zigbee, das ist klassisches MQTT/Tasmota.

ach Mist, immer noch kein Zigbee

Wie bereits in einem anderen Post erwähnt, liegt dein Problem entweder an deinem Schlüssel oder an deiner Stromversorgung.
Hast du diese beiden Punkte überprüft?

naja, ich weiß nicht mehr weiter, ich habe es zwar geschafft, den Stick zu flashen, aber er funktioniert trotzdem nicht. Ich habe alle anderen Methoden ausprobiert. Ich denke, ich werde es mit einer kompletten Neuinstallation versuchen, die ich schon einmal gemacht habe, aber damals hatte ich die Festplatte nicht formatiert, ich habe einfach das Gladys-Image geschrieben und alles neu konfiguriert. Könnte es sein, dass alte Konfigurationsreste übrig geblieben sind?

ansonsten wird mein Ziegbee-Stick nicht mehr warm, früher gab es zumindest ein kleines Zeichen, dass er funktioniert, aber jetzt bleibt er kalt.

Du kannst es immer noch testen, aber ich würde mich wundern, wenn sich etwas ändert.

Ich weiß nicht, ob du gut Englisch sprichst, aber wenn ich du wäre, würde ich mich sehr in der Zigbee2mqtt-Community umsehen, denn es ist ein ziemlich häufiger Bug mit vielen verschiedenen Ursachen (manchmal Stromversorgung, manchmal defekter Dongle, manchmal Bug im Firmware des Dongles, manchmal OS-Problem usw.)

Zum Beispiel gibt es auf ihrem Forum viele Diskussionen, wenn man nach dem Bug sucht: