Klimalogg mit HTTPD bei Minusgraden

Begonnen von privat58, 26 März 2015, 07:52:49

Vorheriges Thema - Nächstes Thema

Forty

Hallo zusammen,

über die Suchfunktion bin ich auf diesen Thread gestoßen.

Vor ca. 2 Wochen habe ich mir ein Raspberry Pi 3 zugelegt, um einige einfache Automatisierungen in meiner Wohnung durchzuführen. (Und auch um etwas Einblick in die Programmierung zu erhalten. Ich bin absoluter Anfänger in Sachen Linux, Programmieren und Co. - war bisher eher einfacher Office-Anwender). Nach einigen Fehlversuchen habe ich es dann doch geschafft das RasPi einzurichten und fhem zu installieren. Mit Anleitung hat es auch funktioniert einige Dummys zu installieren.

Als erstes echtes Gerät wollte ich dann die Temperatur- und Feuchtesensoren meines TFA Klimalogg pro einbinden, da diese schon vorhanden waren. Nach der ersten Internetrecherche stellte ich aber fest, dass diese nicht in fehm eingebunden werden können.

Umso größer war die Freude als ich diesen Thread gefunden habe :-). Bald stellte sich allerdings Ernüchterung ein, da ich feststellte, dass mir diese Hose einige Nummern zu groß ist.......... Mittlerweile musste ich drei mal mein Raspberry neu aufsetzen, da ich dem Gerät nach meinen unzähligen Fehleingaben nicht mehr vertraute....

Ich hoffe, dass mir hier jemand helfen kann, evtl. mit einer Schritt-für-Schritt-Anleitung für hoffnungslose Fälle :-)?

Vielen Dank schon Mal

MfG
Forty

Syrex-o

Hatte dazu mal einen kurzen Guide geschrieben, der in meinem GitHub ist. Mustt du mal gucken ob das für dich am Raspberry Pi 3 auch funktioniert.
Hier zu finden: https://github.com/Syrex-o/weewx-klimalogg
Einfach mal bei guide.md gucken
Ich würde dir auch die Versionen empfehlen die ich verlinkt habe, da sich seid dem etwas in der Datenstruktur geändert hat.

Falls du fragen hast kannst du mir auch einfach ne direkte nachricht schicken. Hab eigentlich bis heute immer noch regen Kontakt mit dem Entwickler des Klimalogg Treibers.

Grüße

Forty

Hallo,

vielen Dank, Syrex-o. Mit der Anleitung guide.md habs sogar ich geschafft weewx und den Driver für den Klimalogg zu installieren.

In weewx.conf ist weder ein Absatz Standard, noch Simulator vorhanden und data_binding ist zwei mal auf kl_binding gesetzt. Habe deshalb an der Datei nichts verändert.

Ich habe jetzt allerdings noch das Problem, den Klimalogg mit dem Raspberry zu verbinden. Nachdem ich die USB-Taste gedrückt habe (bis zum Piepton) blinkt die Anzeige am Klimalogg kurze Zeit und verschwindet dann wieder.

Muss ich evtl. doch noch etwas an der Datei weewx.conf ändern? Oder muss ich noch einen Befehl ausführen (Zusätzlich zu sudo /etc/init.d/weewx start)?

MfG
Forty

Syrex-o

ZitatHallo,

vielen Dank, Syrex-o. Mit der Anleitung guide.md habs sogar ich geschafft weewx und den Driver für den Klimalogg zu installieren.

In weewx.conf ist weder ein Absatz Standard, noch Simulator vorhanden und data_binding ist zwei mal auf kl_binding gesetzt. Habe deshalb an der Datei nichts verändert.

Ich habe jetzt allerdings noch das Problem, den Klimalogg mit dem Raspberry zu verbinden. Nachdem ich die USB-Taste gedrückt habe (bis zum Piepton) blinkt die Anzeige am Klimalogg kurze Zeit und verschwindet dann wieder.

Muss ich evtl. doch noch etwas an der Datei weewx.conf ändern? Oder muss ich noch einen Befehl ausführen (Zusätzlich zu sudo /etc/init.d/weewx start)?

MfG
Forty

Also zur Zeit habe ich auch einige Probleme, wenn ich es in eine MySql Datenbank schreiben lasse. Ich hoffe das machst du nicht, sondern nutzt wie standardmäßig ausgewählt SQLite?!

Um dein Gerät nun zu pairen, musst du: sudo /etc/init.d/weewx restart gleichzeitig ausführen und die USB Tase bis zum Signalton festhalten. Dann müsste das Gerät sich pairen. Falls dann USB im Display erscheint ist es eine Frage der Zeit, bis alle Werte in die Datenbank geschrieben sind. Kannst du dir live angucken dann: sudo tail -f /var/log/syslog

Wenn es noch ein Problem gibt schreib einfach  ;)

Grüße

Forty

Also Klimalogg und Raspberry sind verbunden, Speicher wird ausgelesen und ich sehe auch, dass sich in der "syslog"-Datei etwas tut  :)

Vielen Dank dafür!

Jetzt versuche ich mal die Daten irgendwie in fhem einzubinden. Habe mir vorsichtshalber gleich ein Image vom aktuellen Stand erstellt  :)

An der Einstellung für die Datenbank habe ich nichts verändert. Gehe deshalb davon aus, dass ich weiterhin die Standard-Einstellung verwende.

MfG
Forty

Syrex-o

ZitatJetzt versuche ich mal die Daten irgendwie in fhem einzubinden

Sollte ja jetzt auch kein Problem mehr sein.

Gibt einen netten guide, damit weewx die daten in eine txt schreibt. Damit kannst du dann einfach per httpmod drauf zugreifen.

Grüße

bull1t

Nach längerer Pause zurück...
Hallo Lion und privat58 - der Tip mit dem Treiber war Goldrichtig. Danke dafür.
Sitze jetzt wieder daran die Station einzubinden. Verbindung steht. Werte werden übertragen.
Allerdings bekomme ich das nicht im FHEM zum anzeigen.
Wo finde ich den Guide zum exportieren in eine Textdatei für FHEM.
Noch für das Grundverständnis.
Dieses 98_KLW.pm hab ich angelegt. Auch bei mir stürzt FHEM sofort nach dem Define ab.
SQ3Lite ist installiert. Brauche ich Apache ect. ebenfalls (hab ich irgendwo gelesen)?
Denn Apache beisst sich mit der installieren HA Bridge.
Hab mir die Finger wund gesucht seit 3 Tagen. Hoffe jemand hat den eintscheidenden Tip.
Danke bUll1t

Syrex-o

ZitatWo finde ich den Guide zum exportieren in eine Textdatei für FHEM.

Das sollte es sein: https://github.com/matthewwall/weewx-fhem

Grüße

bull1t

#53
Danke Syrex-o,
jetzt passiert wenigstens was in FHEM.
Jetzt steht im FHEM-Logfile:

WEEWX: Read callback: Error: localhost: Connection refused

...das gleiche stand auch davor da mit der Adresse des Pi statt "localhost"...

Hat jemand ne Idee warum die Verbindung zurückgewiesen wird?
Gehe mal davon aus das die Rechte fehlen!?

Vielleicht kann mir auch mal wer erklären was in Reihenfolge zu tun ist.
Bei den ganzen Versuchen hab ich am Ende keinerlei reproduzierbare Vorgehensweise, falls mal eine Neuinstallation ansteht.
Stufe 1:weewx installieren & Klimalogg Pro mit Pi verbinden # das hab ich hinbekommen # Werte werden ausgelesen
Stufe 2:die Daten in FHEM einbinden:
- wird dieses KLW Modul nun benötigt oder nicht
- wo gebe ich exakt ein an welchem Ort weewx die Daten ablegen soll
- wird die Datenbank ausgelesen von FHEM oder wird die Datenbank in eine Textdatei exportiert die ausgelesen wird
- wo gebe ich in FHEM an welche Datei mit den Daten eingelesen werden soll und wo liegt diese Datei nun
- müssen Passwörter oder Berechtigungen gesetzt werden

Mein Pi benutzt FHEM 5.8 / Raspian Stretch und aktuell sowohl Filelog als auch dblog mit sq3lite
Folgende Dinge habe ich bereits umgesetzt:
DHT22, 1wire Sensoren für Heizungsvorlauf/Rücklauf, Ultraschall Ölstandsmessung, Milight Licht, Yamaha ARV, HA Bridge für Amazon Alexa
Das alles passiert ausschließlich auf diesem Pi.
Aber bei dem Klimalogg komme ich nicht weiter. Mir fehlt hier leider grundsätzliches Verständnis zum Ablauf.
Ich muss gestehen ich blicke hier aktuell nicht durch.

Gruß bUll1t

Syrex-o

ZitatWEEWX: Read callback: Error: localhost: Connection refused
Logischer Weise kannst du nicht auf Ordner zugreifen, die keine Rechte haben Daten preiszugeben.
Daher muss dein Verzeichnis in dem du die Txt ablegst eines sein, welches schon im Netzwerk agiert.
Da WEEWX die daten selbst in einenm Ordner speichert der gesehen wird sollte die txt auch dort landen.
Das ist bei mir: /var/www/html/weewx/kl

Dort liegen auch die Bilder, welche auf der Seite angezeigt werden, die von WEEWX geschrieben werden.

Zitatwird dieses KLW Modul nun benötigt oder nicht
Nein brauchst du nicht. Die Daten greifst du dann einfach über HTTPMOD ab
sieht dann so aus:

define KLIMALOGG HTTPMOD http://192.168.178.48/weewx/kl/fhem.txt 300
attr KLIMALOGG userattr reading01OExpr reading01OName reading01ORegex reading02OExpr reading02OName reading02ORegex reading03OExpr reading03OName reading03ORegex reading04OExpr reading04OName reading04ORegex reading05OExpr reading05OName reading05ORegex reading06OExpr reading06OName reading06ORegex reading07OExpr reading07OName reading07ORegex reading08OExpr reading08OName reading08ORegex reading09OExpr reading09OName reading09ORegex reading10OExpr reading10OName reading11OExpr reading11OName reading12OExpr reading12OName
attr KLIMALOGG reading01OExpr {sprintf("%.1f", $val)}
attr KLIMALOGG reading01OName TempStation
attr KLIMALOGG reading01ORegex temp0: ([\d\.-]+)
attr KLIMALOGG reading02OExpr {sprintf("%.1f", $val)}
attr KLIMALOGG reading02OName "Name des Sensors den Du vergibst"
attr KLIMALOGG reading02ORegex temp1: ([\d\.-]+)
attr KLIMALOGG reading03OExpr {sprintf("%.1f", $val)}
attr KLIMALOGG reading03OName "Name des Sensors den Du vergibst"
attr KLIMALOGG reading03ORegex temp2: ([\d\.-]+)
attr KLIMALOGG reading04OExpr {sprintf("%.1f", $val)}
attr KLIMALOGG reading04OName "Name des Sensors den Du vergibst"
attr KLIMALOGG reading04ORegex temp3: ([\d\.-]+)
attr KLIMALOGG reading05OExpr {sprintf("%.1f", $val)}
attr KLIMALOGG reading05OName "Name des Sensors den Du vergibst"
attr KLIMALOGG reading05ORegex temp4: ([\d\.-]+)
attr KLIMALOGG reading06OExpr {sprintf("%.1f", $val)}
attr KLIMALOGG reading06OName "Name des Sensors den Du vergibst"
attr KLIMALOGG reading06ORegex temp5: ([\d\.-]+)
attr KLIMALOGG reading07OExpr {sprintf("%.1f", $val)}
attr KLIMALOGG reading07OName "Name des Sensors den Du vergibst"
attr KLIMALOGG reading07ORegex temp6: ([\d\.-]+)
attr KLIMALOGG reading08OExpr {sprintf("%.1f", $val)}
attr KLIMALOGG reading08OName "Name des Sensors den Du vergibst"
attr KLIMALOGG reading08ORegex temp7: ([\d\.-]+)
attr KLIMALOGG reading09OExpr {sprintf("%.1f", $val)}
attr KLIMALOGG reading09OName "Name des Sensors den Du vergibst"
attr KLIMALOGG reading09ORegex temp8: ([\d\.-]+)
attr KLIMALOGG reading10OExpr {sprintf("%.1f", $val)}
attr KLIMALOGG reading10OName "Name des Sensors den Du vergibst"
attr KLIMALOGG reading11OExpr {sprintf("%i", $val)}
attr KLIMALOGG reading11OName "Name des Sensors den Du vergibst"
attr KLIMALOGG reading12OExpr {sprintf("%i", $val)}
attr KLIMALOGG reading12OName "Name des Sensors den Du vergibst"
attr KLIMALOGG room Wetter

Wichtig: "Name des Sensors den Du vergibst" ohne Anführungszeichen

Zitatwo gebe ich exakt ein an welchem Ort weewx die Daten ablegen soll
/etc/weewx/weewx.conf
In der Datei findest du folgendes:

[StdReport]
   
    # Where the skins reside, relative to WEEWX_ROOT
    SKIN_ROOT = /etc/weewx/skins/
   
    # Where the generated reports should go, relative to WEEWX_ROOT
    HTML_ROOT = /var/www/html/weewx
   
    # The database binding indicates which data should be used in reports.
    data_binding = kl_binding
    [[kl]]
        skin = kl
        HTML_ROOT = /var/www/html/weewx/kl

Wichtig ist, dass der HTML_ROOT der öffentliche Ordner ist. Bei mir: /var/www/html/weewx/kl

Zitatwird die Datenbank ausgelesen von FHEM oder wird die Datenbank in eine Textdatei exportiert die ausgelesen wird
Die Datenbank wird von der FHEM Extension ausgelesen und dann in eine txt geschrieben, damit fhem sie lesen kann.

Grüße

bull1t

Vielen Dank für die geduldige Beantwortung meiner Fragen.
Werde es zeitnah ausprobieren und Rückmeldung geben.
Nochmals Danke