Hallo,
ich habe schon länger Plots am laufen, diese funktionieren einwandfrei.
Nun habe ich mein NetIO mit Ethersex und Onewire-Temperatursensoren umd BMP180 in Betrieb genommen.
Die Messungen funktionieren und werden regelmäßig mit Logfile geloggt.
Leider habe ich Probleme mit dem Plot:
Beim BMP funktioniert alles, bei den Onewire werden die Daten im Plot unregelmäßig angezeigt. D.h. irgendwann am Tag fängt die Kurve an und funktioniert dann bis Mitternacht, am nächsten Tag wieder dasselbe (Start der Kurve willkürlich). Wenn ich einen oder mehrere Tage zurück blättere sehe ich keine Daten, obwohl zuvor die Kurven vorhanden waren.
Die Log's habe ich kontrolliert, sie sind vollständig ohne Unterbrechung (Werte alle 5 Min). Fhem ist auf dem aktuellen Stand.
Hat jemand eine Idee. Habe schon mehrfach die Gplot-Config geändert ohne Ergebnis.
Gruß
Bernd
Ich kann mit der Beschreibung wenig anfangen.
Wo werden die Daten gespeichert (FileLog/DbLog)?
Noch wichtiger: sind die Daten in "Show Preprocessed Input" sinnvoll?
ZitatWenn ich einen oder mehrere Tage zurück blättere sehe ich keine Daten
Das ist normal, falls man komische FileLog-Dateinamen eingestellt hat (Tages-Aufloesung).
Die Daten werden mit FileLog geloggt.
In "Show Preprocessed Input" sind auch nur die Daten, die im Plot angezeigt werden.
Manchmal wird nur ein Wert am Tagesanfang um 00:00:00 gezeigt und sonst keiner. Oder es fängt z.B. um 08:00 oder 14:00 an und es funktioniert dann bis Mitternacht. Immer unterschiedlich, obwohl die Daten im Logfile alle (bis auf die Messwerte) gleich aussehen.
Was heißt komische Filelog-Dateinamen?
Meine Dateinamen sind einfach gehalten und mit monatlicher Auflösung.
Ich habe alle Plots automatisch erzeugt und mit der Plot-Editor vorkonfiguriert. Habe das auch nochmal neu getestet ohne Erfolg.
Hallo,
Kann mir keiner helfen?
Zitat von: frober am 12 April 2015, 10:12:52
Hallo,
Kann mir keiner helfen?
du solltest vielleicht ein paar infos liefern. das wäre sicher hilfreich. ;)
zb gplot-file, list vom svg, logfile-ausschnitt, screenshot vom svg, preprozessed-daten.
Hallo,
hier die Dateien und Screenshots:
Sorry, die Infos hätte ich gleich anhängen sollen. Das nächste Mal mache ich es besser.
Die beiden Bilder lassen sich nicht oeffnen.
Die Logdatei ist merkwuerdig, da jede zweite Zeile leer ist, vmtl. wurde sie nachtraeglich bearbeitet.
Weiterhin enthaelt sie Daten vom 10:56 bis 14:44, damit kann das SVG-Plot auch keine Daten vor 10:56 anzeigen.
Die Logdatei ist nur ein kleiner Ausschnitt um die Zeit als die Kurve im Plot laut Screenshot, bzw. "Show Preprocessed Input" startet.
Das Log wurde sonst nicht verändert, das jede 2. Zeile leer ist, ist mir auch aufgefallen.
Wenn ich meinen "Schalter", der mit geloggt wird, betätige, gibt es keine Leerzeile.
Der Logausschnitt beginnt um 10:56, das "Show Preprocessed Input" erst um 11:36.
Die original Logdatei, falls gewünscht, kann ich erst morgen anhängen, bin zur Zeit nicht zu hause.
Die Screenshots habe ich jetzt als jpg angehängt, hoffe sie lassen sich jetzt öffnen.
Schon mal Danke für die Hilfe.
ZitatDas Log wurde sonst nicht verändert, das jede 2. Zeile leer ist, ist mir auch aufgefallen.
Wenn ich meinen "Schalter", der mit geloggt wird, betätige, gibt es keine Leerzeile.
Leerzeilen in der Datei sind ein Problem, FileLog-Get kommt mit sowas nicht zurecht. Die Ursache sind vermutlich Events mit einem \n (NewLine) am Ende. Das muss im Erzeugermodul unterbunden werden.
Wie kann ich die Newline "\n" im Event unterbinden?
Ich habe alles durchsucht und finde meinen Fehler nicht.
Ich habe einen Ausschnitt meiner Config mit den betroffenen Devices und die classdef angehängt.
Vielleicht kann sich jemand das mal anschauen.
Auszug aus dem log:
2015.04.18 08:55:08 1: NETIO_01: unexpected answer "9.88\n" received (wrote "1w get 289f172c06000015\n", expected \d+.\d\n)
2015.04.18 08:55:12 1: NETIO_01: unexpected answer "9.88\n" received (wrote "1w get 289f172c06000015\n", expected \d+.\d\n)
2015.04.18 08:55:16 1: NETIO_01: unexpected answer "9.88\n" received (wrote "1w get 289f172c06000015\n", expected \d+.\d\n)
2015.04.18 08:56:38 1: NETIO_01: unexpected answer "10.75\n" received (wrote "1w get 289f172c06000015\n", expected \d+.\d\n)
2015.04.18 08:56:38 2: After sleep: temp 10.75
Danke
Wer kann mir helfen?
Ich habe alles was mir einfällt probiert.
Leider stehe ich mit Fhem, Perl usw. noch am Anfang.
Ich finde einfach nicht das entsprechende Newline (\n).
Vielen Dank schon einmal.
P.S. Im Event Monitor sehe ich keine Leerzeile. Ich vermute, es hängt an der Classdef, doch das übersteigt meine Programmierkenntnisse.
Ich habe den Fehler gefunden. :D :D
Es lag wirklich an der Classdef.
Ich hatte noch die "alte" Version aus dem Wiki.
Unter Ethersex fand ich eine angepasste Version, die die Leerzeile mit Hilfe von postproc und s/\n//g eleminiert.
Jetzt funktioniert wieder alles. :)
Freut mich.
Nur fuers Protokoll: welches FHEM-Modul ist der Erzeuger der Daten?
ECMDDevice gesteuert je nach Device über die verschiedenen classdef's.
Unter Ethersex (Nutzung in FHEM (Deutsch)) sind verschiedene Devices erklärt.
http://www.ethersex.de/index.php/Nutzung_in_FHEM_(Deutsch) (http://www.ethersex.de/index.php/Nutzung_in_FHEM_(Deutsch))
Das Fhemwiki für AVR NetIO sollte für 1W überarbeitet werden.
http://www.fhemwiki.de/wiki/AVR-NET-IO (http://www.fhemwiki.de/wiki/AVR-NET-IO)
Zitat von: frober am 22 April 2015, 11:57:41
Unter Ethersex (Nutzung in FHEM (Deutsch)) sind verschiedene Devices erklärt.
http://www.ethersex.de/index.php/Nutzung_in_FHEM_(Deutsch) (http://www.ethersex.de/index.php/Nutzung_in_FHEM_(Deutsch))
Danke. ::) Bei fertigen Lösungen, neuen Ideen und Verbesserungsvorschlägen bin ich dabei. Es ist leider nur sehr weinig zu ECMD/Ethersex/FHEM dokumentiert. Das war (ist!) mein Versuch, das zu ändern.
Zitat von: frober am 22 April 2015, 11:57:41
Das Fhemwiki für AVR NetIO sollte für 1W überarbeitet werden.
http://www.fhemwiki.de/wiki/AVR-NET-IO (http://www.fhemwiki.de/wiki/AVR-NET-IO)
Genau an der Stelle bin ich mir unsicher. Einerseits haben viele Anwender das 1W mit
convert und
sleep genutzt, weil es zum Zeitpunkt des Erstellens des Wiki-Beitrages in Ethersex nicht anders funktionierte, andererseits habe ich in dem Thread (http://forum.fhem.de/index.php/topic,21636.0.html) versucht, die Neue und aus meiner Sicht bessere Variante mit Polling in E6 zu favorisieren, was aber bedingt, das man nochmal E6 aktualisieren, kompilieren und flashen muss. Zudem gab es da noch einen Bug, der es etwas schwierig machte. >:(
Daher sah ich es als "Spagat": einerseits den Wiki Artikel zum Net-IO für bestehende Installationen anzupassen, andererseits jedoch meine eigenen Erkenntnisse und die genutzte Hardware zu dokumentieren. Für letztgenanntes taugt die Net-IO-Seite nicht, da zu sehr auf die Zielhardware festgelegt. Habe den Link im Wiki nun fett dargestellt, damit man auch dort nochmals ließt und sich frei entscheiden kann.
Viele Grüße, Ricardo
Vielleicht hilft es:
Ich habe kein polling, da ich Ethersex auch nicht neu kompilieren wollte.
Meine onewire.classdef: