# Verstümmelte MQTT Topics

**URL:** <https://community.symcon.de/t/verstuemmelte-mqtt-topics/133628>\
**Category:** Mikrocontroller\
**Created:** [8. Juni 2023 um 08:05 UTC](https://community.symcon.de/t/verstuemmelte-mqtt-topics/133628 "2023-06-08T08:05:43Z")\
**Posts on this page:** 9\
**Page:** 1

<div class="post-metadata">

**Author:** ![bbernhard](https://community.symcon.de/letter_avatar_proxy/v4/letter/b/48db29/32.png) [@bbernhard](https://community.symcon.de/u/bbernhard)\
**Post date:** [8. Juni 2023 um 08:05 UTC](https://community.symcon.de/t/verstuemmelte-mqtt-topics/133628/1 "2023-06-08T08:05:43Z")

</div>

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

---

<div class="post-metadata">

**Author:** ![hfichtinger](https://community.symcon.de/user_avatar/community.symcon.de/hfichtinger/32/79362_2.png) [@hfichtinger](https://community.symcon.de/u/hfichtinger)\
**Post date:** [8. Juni 2023 um 08:21 UTC](https://community.symcon.de/t/verstuemmelte-mqtt-topics/133628/2 "2023-06-08T08:21:50Z")

</div>

Ä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.

---

<div class="post-metadata">

**Author:** ![cebra](https://community.symcon.de/user_avatar/community.symcon.de/cebra/32/205_2.png) [@cebra](https://community.symcon.de/u/cebra)\
**Post date:** [8. Juni 2023 um 09:23 UTC](https://community.symcon.de/t/verstuemmelte-mqtt-topics/133628/3 "2023-06-08T09:23:00Z")

</div>

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.

---

<div class="post-metadata">

**Author:** ![hfichtinger](https://community.symcon.de/user_avatar/community.symcon.de/hfichtinger/32/79362_2.png) [@hfichtinger](https://community.symcon.de/u/hfichtinger)\
**Post date:** [8. Juni 2023 um 16:07 UTC](https://community.symcon.de/t/verstuemmelte-mqtt-topics/133628/4 "2023-06-08T16:07:48Z")

</div>

> [@sokkederheld](#):
>
> Edit: Wäre interessant, zu erfahren, welche Betriebssysteme ihr nutzt.

Microsoft Windows 10 😉

---

<div class="post-metadata">

**Author:** ![bbernhard](https://community.symcon.de/letter_avatar_proxy/v4/letter/b/48db29/32.png) [@bbernhard](https://community.symcon.de/u/bbernhard)\
**Post date:** [8. Juni 2023 um 19:27 UTC](https://community.symcon.de/t/verstuemmelte-mqtt-topics/133628/5 "2023-06-08T19:27:02Z")

</div>

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

---

<div class="post-metadata">

**Author:** ![cebra](https://community.symcon.de/user_avatar/community.symcon.de/cebra/32/205_2.png) [@cebra](https://community.symcon.de/u/cebra)\
**Post date:** [8. Juni 2023 um 20:09 UTC](https://community.symcon.de/t/verstuemmelte-mqtt-topics/133628/6 "2023-06-08T20:09:00Z")

</div>

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.

---

<div class="post-metadata">

**Author:** ![bbernhard](https://community.symcon.de/letter_avatar_proxy/v4/letter/b/48db29/32.png) [@bbernhard](https://community.symcon.de/u/bbernhard)\
**Post date:** [8. Juni 2023 um 21:24 UTC](https://community.symcon.de/t/verstuemmelte-mqtt-topics/133628/7 "2023-06-08T21:24:29Z")

</div>

> [@sokkederheld](#):
>
> 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

---

<div class="post-metadata">

**Author:** ![cebra](https://community.symcon.de/user_avatar/community.symcon.de/cebra/32/205_2.png) [@cebra](https://community.symcon.de/u/cebra)\
**Post date:** [9. Juni 2023 um 07:06 UTC](https://community.symcon.de/t/verstuemmelte-mqtt-topics/133628/8 "2023-06-09T07:06:34Z")

</div>

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… 🤷‍♀️

---

<div class="post-metadata">

**Author:** ![paresy](https://community.symcon.de/user_avatar/community.symcon.de/paresy/32/29554_2.png) [@paresy](https://community.symcon.de/u/paresy)\
**Post date:** [11. Juni 2023 um 07:09 UTC](https://community.symcon.de/t/verstuemmelte-mqtt-topics/133628/9 "2023-06-11T07:09:46Z")

</div>

> [@bbernhard](#):
>
> Daten sind auch beim MQTT sauber - glaube ich zumindest. Nur die hinichen Topics merkt sich IPS bis zum Neustart und damit bleibens halt sichtbar.

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
