NEWS
[gelöst] MQTT Objekt beschreiben
-
Ich habe einen Teilnehmer aus dem Netz den ich mit dem MQTT Adapter nutze.
Dort werden verschiedene Objekte ausgelesen.Ich habe nun in den Datenpunkt Max Power einen Wert geschrieben. Der kommt bei dem Empfänger an.
Nur bekomme ich parallel Meldungen im Protokoll Message 52 deleted after 11 retries.Nutze ich das falsch?
2025-02-22 15:00:10.742 - [32minfo[39m: mqtt.0 (32415) Client [SOYO_3b2107] connection closed: Error: read ECONNRESET 2025-02-22 15:00:11.561 - [32minfo[39m: mqtt.0 (32415) Client [SOYO_3b2107] connected with secret 1740232811560_6014 2025-02-22 15:00:11.573 - [32minfo[39m: mqtt.0 (32415) Client [SOYO_3b2107] subscribes on "mqtt.0.Soyosource.SOYO_3b2107.L1L2L3" 2025-02-22 15:00:11.583 - [32minfo[39m: mqtt.0 (32415) Client [SOYO_3b2107] subscribes on "mqtt.0.Soyosource.SOYO_3b2107.NotAus" 2025-02-22 15:00:11.590 - [32minfo[39m: mqtt.0 (32415) Client [SOYO_3b2107] subscribes on "mqtt.0.Soyosource.SOYO_3b2107.WaitSekunden" 2025-02-22 15:00:11.596 - [32minfo[39m: mqtt.0 (32415) Client [SOYO_3b2107] subscribes on "mqtt.0.Soyosource.SOYO_3b2107.MaxPower" 2025-02-22 15:00:11.773 - [32minfo[39m: mqtt.0 (32415) Client [SOYO_3b2107] publishOnSubscribe 2025-02-22 15:00:11.784 - [32minfo[39m: mqtt.0 (32415) Client [SOYO_3b2107] publishOnSubscribe 2025-02-22 15:00:11.791 - [32minfo[39m: mqtt.0 (32415) Client [SOYO_3b2107] publishOnSubscribe 2025-02-22 15:00:11.797 - [32minfo[39m: mqtt.0 (32415) Client [SOYO_3b2107] publishOnSubscribe 2025-02-22 15:00:22.514 - [33mwarn[39m: mqtt.0 (32415) Client [SOYO_3b2107] Message 52 deleted after 11 retries 2025-02-22 15:00:24.568 - [32minfo[39m: mqtt.0 (32415) Client [SOYO_3b2107] reconnected. Old secret 1740232811560_6014. New secret 1740232824567_1296 2025-02-22 15:00:24.579 - [32minfo[39m: mqtt.0 (32415) Client [SOYO_3b2107] subscribes on "mqtt.0.Soyosource.SOYO_3b2107.L1L2L3" 2025-02-22 15:00:24.588 - [32minfo[39m: mqtt.0 (32415) Client [SOYO_3b2107] subscribes on "mqtt.0.Soyosource.SOYO_3b2107.NotAus" 2025-02-22 15:00:24.595 - [32minfo[39m: mqtt.0 (32415) Client [SOYO_3b2107] subscribes on "mqtt.0.Soyosource.SOYO_3b2107.WaitSekunden" 2025-02-22 15:00:24.604 - [32minfo[39m: mqtt.0 (32415) Client [SOYO_3b2107] subscribes on "mqtt.0.Soyosource.SOYO_3b2107.MaxPower" 2025-02-22 15:00:24.779 - [32minfo[39m: mqtt.0 (32415) Client [SOYO_3b2107] publishOnSubscribe 2025-02-22 15:00:24.790 - [32minfo[39m: mqtt.0 (32415) Client [SOYO_3b2107] publishOnSubscribe 2025-02-22 15:00:24.795 - [32minfo[39m: mqtt.0 (32415) Client [SOYO_3b2107] publishOnSubscribe 2025-02-22 15:00:24.805 - [32minfo[39m: mqtt.0 (32415) Client [SOYO_3b2107] publishOnSubscribe
-
This post is deleted! -
This post is deleted! -
This post is deleted! -
@peter-c Das kommt beim MQTT-Adapter AFAIK immer, wenn die Gegenstelle nach einer Datenübertragung die Verbindung (Session) schließt und der MQTT-Adapter dann eine Zeitlang auf ein „Lebenszeichen“ wartet.
Das dem so ist, darauf weißt das im Log mit „old secret“ und „new secret“ hin. Dein Soyo (was auch immer das ist) sendet also seine Daten, schließt die Verbindung und macht für den nächsten Datenschub eine neue Verbindung auf. Der MQTT-Adapter meldet also, dass nach 11 vergeblichen Versuchen eben die alten Messages verworfen werden.
Ändern kannst Du das nur am Gerät selbst. Oder eben einen MQTT-Broker wie mosquitto verwenden und im iobroker dann den MQTT-Client dorthin auf die gewünschten Nachrichten abonnieren lassen.Gruss, Jürgen
-
This post is deleted! -
This post is deleted! -
@wildbill said in MQTT Objekt beschreiben:
Der MQTT-Adapter meldet also, dass nach 11 vergeblichen Versuchen eben die alten Messages verworfen werden.
Soweit verstanden. Es ist also erklärbarer Fehler, der aber keine Folgen hat, oder?
-
@peter-c Diesen Fehler habe ich schon vor 4-5 Jahren beschrieben und deshalb nutze ich den Adapter nicht als Broker, sondern als Client an einem mosquitto mqtt Broker
-
@peter-c doch die Folgen sind, dass nichts gepublished wird.
-
@mickym said in MQTT Objekt beschreiben:
die Folgen sind, dass nichts gepublished
Danke für die Antwort. Hab mir bisher darüber keine Gedanken gemacht. Das Programm das subscribes on macht kann ich nicht ändern. Nutzen tue ich zum verteilen der Nachricht node red . Kann man da dass subscriben zu einem bestimmten Topic abstellen?
-
@peter-c Nein - du kannst entweder beschreiben, was Du subscriben willst oder Du verhinderst, dass der Client was published.
Da gerade ein anderes Problem auftaucht - hier habe ich es das 1. Mal bemerkt: https://forum.iobroker.net/topic/32143/mqtt-problem/12?_=1740307705436
Da ich aber 3 Monate umsonst hier bei mir den Fehler gesucht habe, war das Betreiben des Adapters als Broker kein Thema mehr. Dafür hatte ich keinen Nerv mehr.
Wie gesagt, Du kannst ja ein Issue erstellen - ich hatte dazu bei einem Produktivsystem keine Energie mehr. Den Fehler hatten bis jetzt innerhalb dieser 4 Jahre schon viele - und ich sehe nicht ein warum ICH ein Issue erstellen soll. (siehe Thread von damals) -
@mickym said in MQTT Objekt beschreiben:
entweder beschreiben
Bin mir nicht ganz sicher ob ich das verstehe.
Bei node red steht: Tipp: Topic, QoS oder Retain leer lassen, um diese über die msg-Eigenschaften festzulegenDarauf bezog sich die Frage ob ich ggf. einzelne Werte aus dem Topic nur auslese und weiterleite...
Habe die mosquitto Sache mal angeschaut und soweit ich verstanden habe brauche ich dafür ja einen eigenen raspi neben dem iobroker raspi. Das erscheint mir übertrieben..
-
@peter-c Das ist alles OK auf der NodeRed Seite - aber das Problem ist der Adapter.
Es hängt weder am topic noch am Qos oder Retain. Ich hatte das auch alles nicht über das Nachrichtenobjekt gepublished und hatte trotzdem das Problem, dass dieses topic einfach gelöscht wurde.
-
@peter-c sagte in MQTT Objekt beschreiben:
Habe die mosquitto Sache mal angeschaut und soweit ich verstanden habe brauche ich dafür ja einen eigenen raspi neben dem iobroker raspi. Das erscheint mir übertrieben..
Nein das brauchst Du nicht. Habe ich doch auch nicht. Du installierst einfach mosquitto auf dem gleichen Raspi ganz easy und betreibst den Adapter als Client. - Ich such mal raus - hab sogar irgendeine Anleitung geschrieben.
-
@mickym said in MQTT Objekt beschreiben:
Ich such mal raus
Danke für die Nachricht. Mach Dir nicht die Arbeit. Ich muss meinen iobroker in der nächsten Zeit ja eh neu auflegen da man mir aufgrund meines alten setting (Bullseye) einen umstieg auf Bookworm nahegelegt hat. Dabei werde ich den Soyo Teilnehmen neu Resetten und dann ist der Eingriff den ich gemacht habe dann weg, Wollte bloß bis dahin eine einfache Lösung. Das Programm lief vorher schon geraume Zeit ohne Problem. Das hab ich halt erzeugt...
-
@peter-c Wie gesagt - die mosquitto installation ist super easy.
Einfach
sudo apt install mosquitto
Und dann ggf. erst mal ohne oder mit pw arbeiten und das dann in das conf File eintragen.
Ansonsten kannst Du hier (https://forum.iobroker.net/post/847655) einiges zu den Adaptern nachlesen, was ich soweit getestet habe.