Übertragungsfehler - SW-Niko/OpenDTU-OnBattery GitHub Wiki
Problem: Übertragungsfehler auf der VE.Direct Schnittstelle
Auf der VE.Direct Schnittstelle werden die Daten zusammen mit einer Checksumme übertragen. Dadurch ist es möglich Übertragungsfehler zu erkennen. Einige Übertragungsfehler sind kein Problem aber wenn zu viele auftreten kann es zu Problemen führen.
Übertragungsfehler können durch folgende Ursachen produziert werden:
- Zu lange Verbindungsleitung zwischen dem Gerät und dem ESP32.
- Verbindungsleitung ungenügend geschirmt.
- Störquellen in der Nähe der Verbindungsleitung.
- Keine galvanische Trennung (parallele Massen)
Die Schnittstelle ist nun mit einer Fehlerprotokollierung erweitert worden, damit die Übertragungsqualität der Schnittstelle überprüft werden kann.
Beispiel: Auf meinem System habe ich drei VE.Direct Verbindungen (2xSolarregler, 1xSmartShunt). Im Durchschnitt komme bei den Verbindungen auf 2-3 Übertragungsfehler am Tag. Das ist ein guter Wert und zeigt das hier prinzipiell kein Hardwareproblem existiert.
Ausführung der Verbindungen:
- Leitungslänge ca. 1m.
- Die Leitung ist nicht geschirmt aber hat verdrillte Adern.
- Galvanische Trennung über Isolator-IC ADuM 1201.
- Leitung nicht zusammen mit anderen Leitungen verlegt, die ein hohes Störpotential aufweisen.
Lösung
Übertragungsfehler kann man bereits über die Protokollierung erkennen. Allerdings ist das etwas mühsam die Daten zu loggen und dann auszuwerten. Einfacher geht es jetzt über eine automatische Fehlersummierung und einer Anzeige der "Übertragungsfehler pro Tag" bei den einzelnen Geräten auf der WebUI.
Konfiguration
Eine Konfiguration ist nicht erforderlich.
Informationen
Die durchschnittlichen Übertragungsfehler pro Tag werden in der Live-Ansicht bei den Geräten mit VE.Direct Schnittstelle angezeigt.
Hinweis: Ein Zurücksetzen des Fehlerzählers auf 0 ist nur über einen Software Neustart möglich.
Protokollierung
Über die Protokollierung werden noch genauere Informationen ausgegeben. Dazu muss die Protokollierung von "VE.Direct" auf "Info" oder höher eingestellt werden.
Beispiel: veDirect: [MPPT 10/9] Average transmit errors per day: 3.2 1/d veDirect: [MPPT 10/9] Frame Timeout: 0, Text Checksum: 1, Hex Checksum: 0 veDirect: [MPPT 10/9] Hex Buffer: 0, Nested Hex: 0, Debug Buffer: 0 veDirect: [MPPT 10/9] Invalid Char: 3