Zigbee2MQTT configuration is not valid

Hallo Community,
ich habe heute das Z2M auf Version 2.4.0-1 aktualisiert. Seit dem habe ich folgende Fehlermeldung:

Zigbee2MQTT configuration is not valid

Found the following errors:

  • MQTT retention requires protocol version 5

Zu der Fehlermeldung steht einiges geschrieben aber vielleicht bin ich zu blöd…

im Editor sieht das so im Original aus:

Version: 4
mqtt:
  base_topic: zigbee2mqtt
  server: mqtt://core-mosquitto:1883
  user: addons
  password: keeWeiSeenahv1oot5kah8eir8ahk9Rahveihae9eezidae1lae9geimohj8Oeri
serial:
  port: /dev/ttyUSB0
advanced:
  log_level: info
  channel: 11
  network_key:
    - 9
    - 102
    - 94
    - 0
    - 110
    - 123
    - 19
    - 191
    - 190
    - 170
    - 31
    - 158
    - 94
    - 151
    - 100
    - 234
  pan_id: 26243
  ext_pan_id:
    - 9
    - 21
    - 134
    - 17
    - 84
    - 24
    - 157
    - 173
frontend:
  enabled: true
  port: 8099
homeassistant:
  enabled: true
devices:
  '0x08ddebfffea437d0':
    friendly_name: Bewegungsmelder Bad
    homeassistant:
      name: Bewegungsmelder Bad
    optimistic: true
    retain: true
    retention: 60
version: 4

Wenn ich die Version auf “5” ändere, dann will das Ding auch nicht laufen.
Protokoll:

[18:21:43] INFO: Preparing to start…
[18:21:43] INFO: Socat not enabled
[18:21:43] INFO: Starting Zigbee2MQTT…
Starting Zigbee2MQTT without watchdog.
Error: Your configuration.yaml has an unsupported version 5, expected one of undefined,2,3,4.
at migrateIfNecessary (/app/lib/util/settingsMigration.ts:497:15)
at onboard (/app/lib/util/onboarding.ts:534:9)
at start (/app/index.js:137:25)
[18:24:36] INFO: Preparing to start…
[18:24:36] INFO: Socat not enabled
[18:24:36] INFO: Starting Zigbee2MQTT…
Starting Zigbee2MQTT without watchdog.
!!!
READ THIS CAREFULLY
Refusing to start because configuration is not valid, found the following errors:

Dann habe ich noch versucht ein Rollback auf die alte Version zu machen und auch ein komplettes Backup. Das Ergebnis ist unverändert.

Hardware ist bei mir eine Lenovo ThinkCentre mit Proxmox.

Kleiner Nachtrag. Ja, ich habe das System auch mehrfach (nach jeder Aktion) neu gestartet, inklusive Proxmox.

Ich hoffe auf Eure Ideen!
Vielen Dank!

Moin,

das geht so auch nicht, das ist eine interne Nummer, die Z2M braucht um zu erkennen ob Du noch eine Version < 2.x nutzt und deswegen migriert werden muss, aus meiner configuration.yaml mit Beschreibung

# Indicates the configuration version (used by configuration migrations)
version: 4

Nicht an etwas herumschrauben, wenn das Wissen fehlt :wink:

Das Protokoll, Log gehört in Code-Tags </>

Zu dem Problem

Das steht im Log, doch ganz deutlich :wink:

READ THIS CAREFULLY
Refusing to start because configuration is not valid, found the following errors:

MQTT retention requires protocol version 5

Du musst das MQTT Add-on, auf MQTT Version 5 konfigurieren :wink:

VG
Bernd

P.S.: ich müsste mir erst das Add-on installieren, um Dir den entsprechenden Punkt in der Konfiguration zu zeigen, versuch es mal selbst.
Ansonsten melde Dich noch einmal.
P.P.S.: ich habe mich da wohl geirrt, der MQTT ist schon korrekt eingerichtet, habe ich gerade mal getestet.

Also liegt es doch nur an der schlechten configuration.yaml wie @maxe ja auch schon ausgeführt hat.

Ich sehe 2x den Eintrag “Version: 4” in deiner Config. Lösch den oberen Entrag mal.

Außerdem hat du “retention: 60” drin stehen, lösch das auch mal.

1 „Gefällt mir“

Danke Dir für die schnelle Antwort Bernd!

Ich habe HA & Co. erst am Wochenende angefangen, weil mir Homematic langsam auf den Keks geht. Daher probiere ich erstmal viel, habe noch nicht so viel zu verlieren.

Das mit dem “herumschrauben” habe ich in diversen Foren gesehen, auch hier gibt es so eine Info…

QUOTE

Das selbe Problem habe ich auch. Und wird sich mit dem nächsten HA-core-Update wiederholen…
Lösung:
Ergänze in der configuration.yaml im HA Verzeichnis
/config/zigbee2mqtt/configuration.yaml
unter mqtt die Zeile: version: 5

mqtt:
server: mqtt://core-mosquitto:1883
version: 5

Mein MQTT Broker ist bereits bei Version 6.5.1. Ich habe ihn aber zur Sicherheit noch einmal deinstalliert und neu installiert.
Mit dem Z2M habe ich das auch noch gemacht.

Das Protokoll sieht noch immer so aus:

[21:09:00] INFO: Preparing to start...
[21:09:00] INFO: Socat not enabled
[21:09:01] INFO: Starting Zigbee2MQTT...
Starting Zigbee2MQTT without watchdog.
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
            READ THIS CAREFULLY
Refusing to start because configuration is not valid, found the following errors:
- MQTT retention requires protocol version 5
If you don't know how to solve this, read https://www.zigbee2mqtt.io/guide/configuration
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
Failure page is available at http://0.0.0.0:8099/```

Cool! Danke maxe!

Beides gelöscht und jetzt läuft es wieder.

Moin,

Ja so ist es auch korrekt, in deiner configuration.yaml war das so nicht und es gab ein Durcheinander, daher war der Hinweis von @maxe genau richtig.
Ich meinte auch das, mit dem Eintrag unter mqtt in der Z2M Konfiguration, habe mich nur im Add-on geirrt :slight_smile:

Gut, jetzt läuft es ja :slight_smile:

VG
Bernd

1 „Gefällt mir“

Sehr gut!

Die Fehlermeldung sagte, dass “retention” die MQTT Version 5 braucht. Deshalb löschen.

1 „Gefällt mir“

Hallo zusammen, ich habe dasselbe Problem jetzt auch. Hatte vorgestern auf Z2M 2.8.0 upgedated. Habe eben wieder das Backup (2.7.2-1) eingespielt. Leider startet das Adon, bzw. die App nicht mehr. Ich habe denselben Eintrag im Log, wie Borni. Allerdings gibt es in meiner configuration.yaml gar keinen Eintrag zu MQTT.

[10:22:06] INFO: Starting Zigbee2MQTT...
Starting Zigbee2MQTT without watchdog.
Error: Your configuration.yaml has an unsupported version 5, expected one of undefined,2,3,4.
    at migrateIfNecessary (/app/lib/util/settingsMigration.ts:497:15)
    at onboard (/app/lib/util/onboarding.ts:571:9)
    at start (/app/index.js:137:25)

Bin etwas ratlos.

Wenn es den nicht gebe gebe es auch diese Meldung nicht. :slightly_smiling_face:

Das diese configuration.yaml /homeassistant/zigbee2mqtt/configuration.yaml gemeint ist ist aber schon klar, oder?

Falls Du wirklich die /homeassistant/zigbee2mqtt/configuration.yaml meinen solltest dann poste hier mal bitte den kompl. Inhalt davon.

VG Jim

Oh ja, Danke Jim. War in der falschen configuration.yaml. Hier steht ganz unten schon Version: 5

homeassistant:
  enabled: true
mqtt:
  server: mqtt://core-mosquitto:1883
  user: yyy
  password: xxx
serial:
  port: /dev/ttyAMA1
  adapter: ezsp
  baudrate: 115200
  rtscts: true
frontend:
  enabled: true
  port: 8099
advanced:
  log_syslog:
    app_name: Zigbee2MQTT
    eol: /n
    host: localhost
    localhost: localhost
    path: /dev/log
    pid: process.pid
    port: 514
    protocol: udp4
    type: '5424'
  last_seen: ISO_8601_local
  log_level: error
device_options: {}
devices:

#Devices spare ich mal hier

availability:
  enabled: true
blocklist: []
ota:
  disable_automatic_update_check: true
version: 5

Sehe aber eben, dass bei mir die Version 5 nicht erwartet wird. Komisch.

Ich habe nun mal im Editor auf Version 4 geändert. Neustart HA brachte neue Fehlermeldungen. Habe wieder geändert auf Version 5. Neustart war diesmal erfolgreich, Z2M läuft wieder - warum auch immer es nun wieder läuft.

Danke nochmals, Jim. Ich beobachte mal, was passiert. Achso, und ich bin aber immer noch auf der “alten” Z2M Version 2.7.2-1

Ich tippe mal darauf das bei Dir jetzt durch Deine Restore-Versuche irgendetwas durcheinander ist, denn mit version: 5 müsste es wieder, bzw. weiterhin zu der Fehlermeldung kommen. Richtig wäre halt ein version: 4 Eintrag.

Aber ok wenn es im Moment so funktioniert kannst Du es so ja auch erst einmal b.a.W. weiterlaufen lassen. :slightly_smiling_face: Auch wenn ich befürchte das Dich das Problem dann irgendwann noch wieder einholen wird.

VG Jim

1 „Gefällt mir“

Ich muss die Aussage von mir noch revidieren/korrigieren. :slightly_smiling_face: Ich habe heute das Z2M Update von Version 2.7.2-1 auf Version 2.8.0-1 gemacht und danach ist mir ein Eintrag im Z2M Protokoll aufgefallen.

Starting Zigbee2MQTT without watchdog.
[15:37:17] INFO: Preparing to start...
[15:37:17] INFO: Socat not enabled
[15:37:18] INFO: Starting Zigbee2MQTT...
Starting Zigbee2MQTT without watchdog.
Migration notes written in /config/zigbee2mqtt/migration-4-to-5.log

In der migration-4-to-5.log steht dann:

[CHANGE] Migrated settings to version 5
[SPECIAL] Reset all cached OTA states due to internal changes.
For more details, see https://github.com/Koenkk/zigbee2mqtt/discussions/24198

und in meiner Z2M configuration.yaml wurde dann auch automatisch der Eintrag von bisher

version: 4

auf

version: 5

geändert. Zumindest bin ich mir recht sicher das vor dem heutigen Update da noch ein version: 4 stand.

Warum da in der migration-4-to-5.log auf einen Github Diskussion von Oct 3, 2024 verwiesen wird und wo es darin dann genau um das Thema Version geht, habe ich irgendwie noch nicht so ganz kapiert. :laughing: Aber ehrlicherweise habe ich mir diese lange Diskussion dort auch erst gar nicht weiter angeschaut. :slightly_smiling_face:

Anm.: Dieses version: 5 hat aber nichts mit dem Eintrag bei/für MQTT zu tun, sondern betrifft Z2M.

VG Jim

2 „Gefällt mir“

Ich bleibe vorerst auf Version 2.7.2-1, läuft erstmal (noch) stabil.