Verstümmelte MQTT Topics

Hallo zusammen
Je länger mien IPS läuft desto mehr MQTT Topics mit offensichtlich verstümmelten Namen sammeln sich im Konfigurator.
An sich kein Problem, aber halt auch nicht sauber.

Da frage ich mich wo kommt das her ? Welche Ebene ist hier eigentlich zuständig das die Daten konsistent übertragen werden. Ich sehe es nicht nur bei selbstgebauten ESP (PubSubClient) basierenden Nodes, sondern bspw. auch beim HeishaMon oder dem Cam für den Wasserzähler.
Allerdings nur bei Wifi Geräten. LAN Geräte (hab aber nur 2) sind sauber.

Auf Anwenderseite (PubSubClient für die ESP) sehe ich keine Option da irgendwo einen CRC für die Topics reinzukompiliern. Eine Inetsuche hat auch nichts verwertbares ergeben.
Kennt sich da jemand aus wie MQTT die Datenintegrität garantiert ?

  • oder ist es ein „Feature“ des IPS MQTT Brokers das er auch und nicht zu vermeidende kaputte Topics speichert und man sie so überhaupt zu Gesicht bekommt ?

Wie gesagt, kein Problem, nur nicht schön und ich würds gerne verstehen.

gruß
bb

Ähnliches sehe ich bei meinem Teil für den Smartmeter. Hab da auch schon etliche Topics. War mir bisher egeal. Ich denke das kommt vom Sender bzw. kommen Daten nicht vollständig oder richtig an.

Da ich das gleiche Phänomen bei allen seriellen und UDP-Verbindungen habe, dachte ich mir nichts dabei. Interessant wäre, ob nur bei den Topics mal Bytes fehlen oder auch bei der Payload.

Edit: Wäre interessant, zu erfahren, welche Betriebssysteme ihr nutzt.

Microsoft Windows 10 :wink:

Hier auch Win10.
Aber was hat das damit zu tun ? Das BS wird schon alles richtig machen, sonst wären ja ganz andere Probleme da.
bb

Weiß nicht, ich jage da auch schon länger einem Phantom nach. Auch Win10 und habe das Problem wie gesagt nicht nur bei MQTT sondern auch bei anderen seriellen und UDP Verbindungen.

Nö, das sehe ich so nicht. Hab auch noch ein paar Serielle und Telnet jeweils plain Ascii ohne CRC. Kann natürlich sein das allfälliger Quatsch beim Cutter oder Parsen rausfliegt. Ist ja alles über lange Zeit gewachsen. Zumindest sind in der Datenbank keine kaputten Daten.

Daten sind auch beim MQTT sauber - glaube ich zumindest. Nur die hinichen Topics merkt sich IPS bis zum Neustart und damit bleibens halt sichtbar.

gute Nacht wünscht
bb

Ich sehe Parallelen, aber wie schon angedeutet, vielleicht sehe ich auch Gespenster.

Fällt vor allem auf bei numerischen Werten, die plötzlich auffällig „springen“. Habe etliche zusätzliche Plausibilitätschecks eingebaut und nehme das Problem nach erfolgloser Fehlersuche hin… :woman_shrugging:

Das einzige was du (glaube ich) machen kannst, wäre den ClientSocket/ServerSocket mitzuloggen und dann zu suchen, ob die Daten schon verstümmelt vom gegenüber kommen (halte ich für sehr wahrscheinlich). Einen CRC gibt es nicht. Aber da die Länge der Strings immer angegeben wird, würde es auffallen, wenn das MQTT Paket unvollständig ist. Dann gibt es diese schönen roten Fehlermeldungen, dass das MQTT Paket defekt ist.

Fürs System ist dies aber nur ein optischer Makel im Konfigurator - solange du im Payload nicht mist empfängt, passiert zumindest kein Fehler beim Auswerten. Dies wäre ja der schlimmere Fall.

paresy