[Erledigt] Fehlende Werte bei OpenWeatherMap im Modul

Begonnen von Marko1976, 20 April 2026, 10:54:49

Vorheriges Thema - Nächstes Thema

Marko1976

Hallo, offenbar wird im weather-modul mit der OpenWeatherMapAPI keine Werte für die Regenwahrscheinlichkeit mit in Fhem übernommen.

Wenn man sich die gelieferten Werte der Api ansieht existieren dort sowohl Werte für pop als auch precidition, die normalerweise ja die Wahrscheinlichkeit angeben.
Da es innerhalb von Fhem nicht wirklich Attribute zum setzen gibt (zumindest im Device sichtbare) ist die Frage ob man das Modul entsprechend anpassen müsste oder ob es eine andere Möglichkeit gibt die Werte von OpenWeatherMap auch in Fhem als Reading zu übernehmen.

Wenn ich mit einer entsprechenden Anleitung helfend beitragen kann stehe ich auch gerne für irgendwleche Arbeiten zur Verfügung, habe allerdings bisher wenig Ahnung von der Materie der Module, daher müsste mir jemand sagen was und wie ich es ändern müsste.

JoWiemann

Hallo,

die Frage ist, wie weit im Voraus möchtest Du die Regenwahrscheinlichkeit sehen? Es gibt ja auch noch das Modul CDCOpenData.

Grüße Jörg
Jörg Wiemann

RPi 4 B mit 4 GByte bookworm, COC (868 MHz), CUL V3 (433.92MHz SlowRF); FHEMduino, Aktuelles FHEM; zigbee2mqtt

ioBroker als Datenlieferant für z.B. Anker, Samsung

Marko1976

Die Datrn sind ja offenbar vorhande. Wenn ich die URL mit Position und meinem Key eingebe, kommen ja alle Daten undxda sieht man soweit ichces gesehen habe für jeden forecast-termin auch eine Wahrscheinlichkeit.

Der Fehler liegt ja offenbar einzig darin, dass sas Modul die Werte nicht in entsprechende Readings schreibt.
Darum habe ich ja geschrieben, wenn mir jemand hilft und sagt was undxwie ich es machen muss, passe ich selbst gerne das Modul an.

Mich wundert nur, dassxsas bisher nie aufgefallen ist, da die Regenwahrscheinlichkeit doch ein sehr interessanter Wert für Tagesplanungen etc. ist.

rabehd

Zitat von: JoWiemann am 20 April 2026, 20:48:31Hallo,

die Frage ist, wie weit im Voraus möchtest Du die Regenwahrscheinlichkeit sehen? Es gibt ja auch noch das Modul CDCOpenData.

Grüße Jörg
Welches ich für meine Beregnung als Prognose nutze.
Auch funktionierende Lösungen kann man hinterfragen.

Marko1976

Also ich habe mal in die Doku der One Call API reingeschaut und da wird auch folgendes angegeben:
hourly.pop Niederschlagswahrscheinlichkeit. Die Werte des Parameters variieren zwischen 0 und 1, wobei 0 gleich 0 % und 1 gleich 100 % ist
hourly.rain
     hourly.rain.1h (wo verfügbar) Niederschlag, mm/h. Bitte beachten Sie, dass für diesen Parameter nur mm/h als Maßeinheiten verfügbar sind
und
daily.pop Niederschlagswahrscheinlichkeit. Die Werte des Parameters variieren zwischen 0 und 1, wobei 0 gleich 0 % und 1 gleich 100 % ist
daily.rain (wo verfügbar) Niederschlagsvolumen, mm. Bitte beachten Sie, dass für diesen Parameter nur mm als Maßeinheiten verfügbar sind
Das bedeutet, das zumindest im Forecast für Stündlich und Täglich ejweils eine Regenwahrscheinlichkeit und eine Regenmenge (parallel Scneemenge) angegeben werden.

Ich habe mir das Modul mal in Notepad++ angesehen, kann auch einiges ableiten, doch wie die gelieferten Werten den Readings zugeordnet werden ist mir nicht klar.
Bräuchte da mal Hilfe von jemandem der sich mit dieser Thematik genau auskennt.

CoolTux

Ich kann mal schauen das ich es die Tage einbauen.
Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://www.paypal.com/paypalme/MOldenburg
My FHEM Git: https://git.cooltux.net/FHEM/
Das TuxNet Wiki:
https://www.cooltux.net

Marko1976

Das wäre sehr nett, ich finde gerade diesen Wert mit am wichtigsten, da man sich ja bei Ausflügen oder vielen anderen Dingen im Leben orientiert.

Wenn du es dir anschaust könntest du eventuell auch mal folgendes prüfen:
Die OpenWeatherMapAPI liefert einzelne Niederschlagswerte für Regen und Schnee. Falls das technisch geht, wäre es gut wenn man zusätzlich zu den Einzelwerten ein Reading mit einem kombinierten Wert pro Vorhersagestunde/-tag hätte. Ich weiß nicht ob sowas direkt im Modul berechnet werden kann.

CoolTux

#7
Ich habe da mal was versucht ein zu bauen.



https://git.cooltux.net/FHEM/mod-Weather/src/branch/testing/
Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://www.paypal.com/paypalme/MOldenburg
My FHEM Git: https://git.cooltux.net/FHEM/
Das TuxNet Wiki:
https://www.cooltux.net

Marko1976

Reicht eswenn ich die beiden .pm-Dateien austausche oder muss da noch mehr gewechselt werden? Anach dem Austauschen muss Fhem vermutlich einmal komplett neu gestartet werden, richtig?

CoolTux

Es reicht nur die API Datei zu tauschen. Du kannst auch die control.txt hinzufügen als update channel

update add https://git.cooltux.net/FHEM/mod-Weather/raw/branch/testing/controls_Weather.txt
Danach noch mal update ausführen und dann shutdown restart
Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://www.paypal.com/paypalme/MOldenburg
My FHEM Git: https://git.cooltux.net/FHEM/
Das TuxNet Wiki:
https://www.cooltux.net

Marko1976

Also ich habe jetzt die 4 .pm-Dateien einzeln ausgetauscht (mache ich lieber, da ich dann die alten Dateien umbenennen und als Backup behalten kann).

Im kurzen überfliegen eines Device für einen meiner Orte wird jetzt überall ein pop-Reading geschrieben, sowohl für die aktuellen Daten, als auch für die stündliche und tägliche Vorhersage (forecastLimit habe ich auf 18 stehen, also nicht bis aufs Maximum ausgereizt).
Was mir aber jetzt auf die Schnelle aufgefallen ist, alle Readings für pop stehen auf 0. Das gleiche gilt auch für die rain und snow-Readings. Das müsste ich mir mal in Ruhe für verschiedene Orte und über ängere Zeiträume ansehen. Allerdings ist es schon etwas seltsam, dass in 8 Tagen kein einziger Tag da ist wo etwas Regen fallen soll, also die Regenmenge größer 0 sein müsste. Gleiches gillt ja für die Regenwahrscheinlichkeit eigentlich auch - möglich aber untypisch.
Schaue ich mir aber in den kommenden Tagen mal genauer an - auch im Vergleich mit anderen Wetterquellen.

Danke erstmal.

Marko1976

Wie versprochen habe ich es mir mal in verschiedenen Orten und zu verschiedenen Daten angeschaut und so unglaublich es klingt, aber rein zufällig ist für meine Heimatlocation tatsächlich für die nächsten 5 Tage Regen weder wahrscheinlich noch ein offensichtlicher Niederschlag erwartet. Darum all diese Nullen in den Readings. Konnte ich anhand anderer Wetterdienste sogar bestätigen.

Alternativ habe ich mir noch 5 andere Locations angeschaut, zwei davon in Mittelamerica und Ostafrika wo zur Zeit Regenzeit herrscht. Bei allen Locations waren unterschiedliche Werte angegeben, die auch wahrscheinlich zutreffend sind und mit anderen Wetterdiensten ungefähr bestätigt werden konnten.

Sowohl die alten Readings für rain und snow als auch das neue Reading für die Wahrscheinlichkeit funktionieren also. Man muss bei der Wahrscheinlichkeit lediglich den Wert mal 100 rechnen um einen Prozentwert zu erhalten, da OpenWeatherMap lediglich eine Gleitzahl zwischen 0 und 1 angibt, aber das ist ja kein großes Problem.

Danke @CoolTux, werden den Beitrag damit dann auch schließen und als erledigt kennzeichnen.

Ich gehe davon aus, dass du es so gebaut hast, dass die neuen pm's beim nächsten Update automatisch an alle verteilt werden?

CoolTux

Ich kann da gerne noch versuchen eine x100 ein zu bauen   ;D
Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://www.paypal.com/paypalme/MOldenburg
My FHEM Git: https://git.cooltux.net/FHEM/
Das TuxNet Wiki:
https://www.cooltux.net

Marko1976

Da die einzelnen Wetterdienste unterschiedlich bei der Angabe sind (Proplanta zb gibt direkt Prozent aus) wäre eine Berechnung im Modul m. M. n. gefährlich, solange nicht garantiert werden kann, dass dies nur bei OpenWeatherMap angewendet wird. Das Weather-Modul selbst unterstützt ja mehrere API's.

Wenn man garantieren kann, dass es nur bei OpenWeatherMap angewendet wird wäre das natürlich die einfachste Lösung.
Alternativ fände ich einen einfach Texthinweis als eine Lösung, in dem steht in welchem Datenformat der Wert vorliegt.

CoolTux

Da ich die commandref eh noch anpassen muss und das zusammenstellen der Readings immer in den API Modulen passiert können wir hier gerne das ganze in Prozent machen.
Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://www.paypal.com/paypalme/MOldenburg
My FHEM Git: https://git.cooltux.net/FHEM/
Das TuxNet Wiki:
https://www.cooltux.net