NEWS
Nuki Ultra per MQTT received pubrec for unknown messageId 0
-
Hi Leute,
ich habe eine Nuki Ultra per MQTT in iobroker hängen.
Das funktioniert in 9 von 10 Fällen eigentlich ganz gut.Leider bekomme ich sporadisch immer folgende Meldungen ins Log:
mqtt.0 2026-02-18 19:13:19.257 info Client [Nuki_4A15AAE7] Received pubrec on Nuki_4A15AAE7 for unknown messageId 0 mqtt.0 2026-02-18 19:13:18.257 info Client [Nuki_4A15AAE7] Received pubrec on Nuki_4A15AAE7 for unknown messageId 26927 mqtt.0 2026-02-18 19:12:48.256 info Client [Nuki_4A15AAE7] Received pubrec on Nuki_4A15AAE7 for unknown messageId 0 mqtt.0 2026-02-18 19:12:47.256 info Client [Nuki_4A15AAE7] Received pubrec on Nuki_4A15AAE7 for unknown messageId 26927 mqtt.0 2026-02-18 19:01:25.664 info Client [Nuki_4A15AAE7] Received pubrec on Nuki_4A15AAE7 for unknown messageId 0 mqtt.0 2026-02-18 19:01:24.665 info Client [Nuki_4A15AAE7] Received pubrec on Nuki_4A15AAE7 for unknown messageId 26927 mqtt.0 2026-02-18 19:01:19.865 warn Client [Nuki_4A15AAE7] Message 1 deleted after 11 retries mqtt.0 2026-02-18 19:01:17.864 warn Client [Nuki_4A15AAE7] Message 1 deleted after 11 retries mqtt.0 2026-02-18 19:00:55.192 info Client [Nuki_4A15AAE7] Received pubrec on Nuki_4A15AAE7 for unknown messageId 0 mqtt.0 2026-02-18 19:00:54.154 info Client [Nuki_4A15AAE7] Received pubrec on Nuki_4A15AAE7 for unknown messageId 26927usw.
Sobald diese Meldungen im Log auftreten, lässt sich das Nuki per MQTT nicht mehr ansteuern.
Erst ein Neustart des MQTT Adapters ermöglicht dann wieder eine Kommunikation per MQTT.Hat jemand eine Idee wo das Problem liegen und wie man es lösen könnte ?
Beste Grüße
-
dieses Problem mit dem MQTT Adapter als Broker habe ich schon seit 2020 festgestellt: https://forum.iobroker.net/post/593972
Ich kann Dir nur empfehlen, mosquitto als externen Broker einzusetzen und den mqtt- Adapter als Client zu nutzen, der den gesamten mosquitto Broker subscribed.
-
Danke für den Hinweis.
Besteht dieses Problem also seit mehr als 5 Jahren in einer so zentralen Komponente wie MQTT und es gibt keine Lösung dafür?
Bzw. die einzige Lösung ist auf externe Software auszuweichen ? :-/Eventuell kann @apollon77 das Thema lösen ? (Die Hoffnung stirbt zuletzt =) )
-
Ich hatte mich vor einiger Zeit schon mal mit dem Thema beschäftigt, der MQTT Adapter verhält sich an einer Stelle nicht nach den MQTT Spezifikationen und beantwortet für ihn unbekannte "PUBREC" NAchrichten einfach nicht mit einer "PUBREL" Nachricht. (sondern loggt sie nur).
Der Fix dafür war jetzt relativ simpel, ich habe einen PR dafür erstellt:
-
Vielen Dank für die Info und den PR.
d.h. jetzt heißts nur noch abwarten und teetrinken, bis es der PR in eine neue Adapterversion schafft, verstehe ich das richtig ? -
Vielen Dank für die Info und den PR.
d.h. jetzt heißts nur noch abwarten und teetrinken, bis es der PR in eine neue Adapterversion schafft, verstehe ich das richtig ?@Qlink sagte in Nuki Ultra per MQTT received pubrec for unknown messageId 0:
jetzt heißts nur noch abwarten und teetrinken, bis es der PR in eine neue Adapterversion schafft, verstehe ich das richtig ?
Du kannst dir die von mir angepasste Version installieren (Expertenmodus --> Adapter --> Katze --> Benutzerdefiniert --> "https://github.com/Marc-Berg/ioBroker.mqtt/tree/fix/qos-retry-reliability")
Bei noch genauerer Betrachtung führten zwei Fehler in deiner Konstellation zum Fehler:
-
Der Adapter/Broker verwirft Messages einfach, nachdem der Client 11x nicht geantwortet hat. (nicht MQTT Protokoll konform)
-
Kommt der Client mit den nun unbekannten Message-IDs vorbei, reagiert der Broker nicht adäquat und schickt den Client in einen Endlos-Loop. (ebenfalls nicht MQTT Protokoll konform)
Ich nehme an, dass die Nuki-Stromsparmaßnahmen (WLAN würde sonst die Batterien in kurzer Zeit leersaugen) der Trigger des Ganzen sind. Der Broker sollte nun aber in meiner Version besser damit umgehen können.
-