NEWS
Einbinden einer TFA-Wetterstation oder Weewx in iobroker
-
Hallo zusammen,
bin neu in dem Forum und bei iobroker, nachdem die Installation mit den vorhandenen Anleitungen problemlos geklappt hat und ich schnell schon einiges hinbekommen habe, wachsen gerade die Ansprüche… Leider bin ich bei Google nicht so richtig fündig geworden, vielleicht kann mir hier jemand helfen?
Also ich betreibe seit Jahren eine TFA Nexus und speichere die Daten mit Weewx auf einem RaspberryPi. Das würde ich jetzt gerne auf iobroker migrieren, da die Klimadaten ja auch für die ein oder andere "Automation" interessant sein könnten. Die Wetterstation ist per USB am Raspi angeschlossen und die Daten werden aktuell alle 5 Minuten in eine Sqlite-DB geschrieben. Bin bei beiden Wegen, direktes einlesen in iobroker oder einlesen der SQL-Datenbank nicht weitergekommen...
Über Unterstützung würde ich mich freuen!
Danke & Gruß
Markus
-
Hi,
bei mir läuft ebenfalls eine TFA Nexus, allerdings in einer der zahlreichen VMs. Ich lasse von weewx einfach eine abgespeckte Site mit den benötigten Daten erstellen und lese die dann mit dem Parser-Adapter des iobroker aus.
In weewx habe ich dazu einen separaten Skin mit folgendem Inhalt.
fhem.txt.tmpl:
#set $fhem_dateformat = "%Y%m%d%H%M" time: $current.dateTime.format($fhem_dateformat) #if $Extras.schema == 'wview' inTemp: $current.inTemp.raw outTemp: $current.outTemp.raw windChill: $current.windchill.raw heatIndex: $current.heatindex.raw dewPoint: $current.dewpoint.raw barometer: $current.barometer.raw barotrend: $trend.barometer.raw windSpeed: $current.windSpeed.raw windGust: $current.windGust.raw windDir: $current.windDir.raw inHumidity: $current.inHumidity.raw outHumidity: $current.outHumidity.raw rainRate: $current.rainRate.raw #end if
skin.conf:
# configuration file for fhem # The skin for klimalogg was created by Luc Heijst and Matthew Wall. # # This skin can be copied, modified, and distributed as long as this notice # is included in any derivative work. [Extras] # known schemas are wview and klimalogg schema = wview [Units] [[Groups]] group_altitude = meter group_degree_day = degree_C_day group_direction = degree_compass group_moisture = centibar group_percent = percent group_pressure = mbar group_radiation = watt_per_meter_squared group_rain = mm group_rainrate = mm_per_hour group_speed = meter_per_second group_speed2 = meter_per_second2 group_temperature = degree_C group_uv = uv_index group_volt = volt [[StringFormats]] # This section sets the string formatting for each type of unit. centibar = %.0f cm = %.2f cm_per_hour = %.2f degree_C = %.1f degree_F = %.1f degree_compass = %.0f foot = %.0f hPa = %.0f hour = %.1f inHg = %.3f inch = %.2f inch_per_hour = %.2f km_per_hour = %.0f km_per_hour2 = %.1f knot = %.0f knot2 = %.1f mbar = %.0f meter = %.0f meter_per_second = %.1f meter_per_second2 = %.1f mile_per_hour = %.0f mile_per_hour2 = %.1f mm = %.1f mmHg = %.1f mm_per_hour = %.1f percent = %.0f second = %.0f uv_index = %.0f volt = %.1f watt_per_meter_squared = %.0f NONE = " N/A" [[Labels]] # This section sets a label to be used for each type of unit. centibar = " cb" cm = " cm" cm_per_hour = " cm/h" degree_C = °C degree_F = °F degree_compass = ° foot = " feet" hPa = " hPa" inHg = " inHg" inch = " in" inch_per_hour = " in/h" km_per_hour = " km/h" km_per_hour2 = " km/h" knot = " knoten" knot2 = " knoten" mbar = " mbar" meter = " meter" meter_per_second = " m/s" meter_per_second2 = " m/s" mile_per_hour = " mph" mile_per_hour2 = " mph" mm = " mm" mmHg = " mmHg" mm_per_hour = " mm/h" percent = % volt = " V" watt_per_meter_squared = " W/m²" day = " Tag", " Tage" hour = " Stunde", " Stunden" minute = " Minute", " Minuten" second = " Sekunde", " Sekunden" NONE = "" [CheetahGenerator] encoding = html_entities [[ToDate]] [[[fhem]]] template = fhem.txt.tmpl [Generators] generator_list = weewx.cheetahgenerator.CheetahGenerator
Im Parser-Adapter dann bei URL den Link zur Site und dann eben per regulären Ausdrücken das heraussuchen, was man möchte. Wenn Du mal bei Google nach fhem und weewx suchst landest Du auf einer Github-Site, von der ich die beiden Dateien habe. Da steht auch, wo sie hin müssen.
Gruss, Jürgen
EDIT. Eben vergessen. So sieht die erzeugte Site aus:
time: 201801302040 inTemp: 22.4 outTemp: 5.1 windChill: 3.1 heatIndex: 5.1 dewPoint: 2.28316699347 barometer: 1025.1875 barotrend: -0.625 windSpeed: 0.223520000179 windGust: 0.581152000465 windDir: 315.0 inHumidity: 52.0 outHumidity: 82.0 rainRate: 0.0
-
Super, vielen Dank, das hat gut geklappt!
Etwas basteln musste ich mit den "." als Dezimaltrenner, aber bei Typ "Number" eingetragen und in den RegEx diese beispielhafte Formel "inTemp: (-?\d.+)" dann hat es funktioniert…
Danke
Markus
-
Freut mich, wenn ich helfen konnte. Ich musste anfangs auch etwas mit den Formatierungen und Formeln spielen, aber letztendlich ging es dann. Seitdem keine Probleme.
Ach ja, ich habe in weewx den Intervall auf 1min/60sek gestellt, damit auch Böen einigermaßen zeitnah angezeigt werden. Ich habe dafür auf dem Tablet für die Visualisierung extra eine Ecke, in der mir live die Wetterdaten angezeigt werden. Nur so als Anregung, man ist ja eh nie fertig mit sowas… :mrgreen:
Gruss, Jürgen