Es scheint aber nur Temperaturen zu betreffen. Andere Daten werden in Variablen geschrieben (zumindest wird der Timestamp aktualisiert), Temperaturen nicht. 1Wire DS1820.
Im Config-Tool von ESERA werden die Temperaturen aktualisiert.
Hallo
wir haben den Fehler bei uns nachvollziehen können und ein Update erstellt. Es wird ein paar Tage dauern, bis es von IPS freigegeben wird.
Grüße
Andreas Geisler, ESERA GmbH
Mit Änderung der module.php liest er die Temperatursensoren wieder aus.
Es gibt aber noch ein zweites Problem. Immer Mitternacht 0Uhr hängt sich der 1-Wire Bus auf und lässt sich nur mit Stromabschalten reseten.
In dem Statusprotokoll ist zu sehen, dass der Buffer ‘DataBuffer’ überläuft.
Bei der Kommunikation werden die Informationen zeilenweise vom 1-Wire Controller an IP-Symcon übergeben, diese Zeilen können jedoch timing-bedingt unvollständig sein. Deshalb speichern wir die unvollständige Zeile temporär in ‘DataBuffer’ bis die Zeile vollständig ist (bis ein Zeilenumbruch kommt).
Ich hab mir den Code angeschaut und kann erstmal keine Verhaltensabweichung erkennen. Solange ein Zeilenumbruch in den Daten auftaucht, konsumiert das Modul diese Zeile auch. Das Verhalten ist für mich hier nur plausibel, wenn der DataBuffer voll ist und keinen Zeilenumbruch enthält.
In dem Log ist in der letzten Zeile zu sehen dass der Buffer etwas geleert wurde und zeitgleich die Temperaturwerte wieder plausibel erscheinen.
Taucht das Verhalten regelmäßig auf? Man könnte noch einen Filter einbauen, wenn der Buffer über eine plausible Größe wächst. Dies würde jedoch nur das Symptom aber nicht die Ursache beheben.
In dem Modul ist eine Debug-Ausgabe des Buffers an dieser Stelle enthalten. Mich würde interessieren welcher Typ an Datenleiche in dem Buffer liegt, bzw. wo der her kommt, bzw. was dazu führt.
Danek für die schnelle Antwort @simoni.esera Ich habe die Debug Ausgabe in eine Datei gestartet.
Das Problem ist erstmals im Januar aufgetaucht nachdem Update. und seither passiert es immer wieder. Fast jeden Tag →