Hallo zusammen,
Dieser Fehler
Can't use string ("0") as a HASH ref while "strict refs" in use at lib/FHEM/APIs/Weather/OpenWeatherMapAPI.pm line 698.
hindert FHEM am Neustart nach Update.
LG,
Heiko
Kann ich bei mir nicht nachvollziehen. Schaue ich mir genauer an.
Sehr seltsam. Das ist Schneeanzeige. Der Code dafür ist 3 Jahre alt. Hast Du bei Dir gerade Schnee?
Nein,bestimmt nicht :)
Gleiches Problem bei mir nach heutigem Update! Nach Restauration des Moduls läuft FHEM wieder.
Grüße,
Seli
Hast Du bei Dir für Regen und Schnee eine 3 Stunden Vorhersage oder nur für 1 Stunde?
Könnt Ihr mir bitte einmal ein list von Euren Device geben?
Hier meins, natürlich mit der lauffähigen Version vor dem Update:
Internals:
API OpenWeatherMapAPI
APIKEY xxxxxxxxx
APIOPTIONS cachemaxage:600
DEF API=OpenWeatherMapAPI,cachemaxage:600 apikey=xxxxxxxxx location=xxxxxxxxx,xxxxxxxxx interval=1800 language=de
FUUID 64292534-f33f-1c47-327d-4d7cb310065b3942
FVERSION 59_Weather.pm:v2.3.3-s30437/2025-10-23
INTERVAL 1800
LANG de
MODEL OpenWeatherMapAPI
NAME MyWetter
NOTIFYDEV global
NR 1973
NTFY_ORDER 50-MyWetter
STATE T: 32 °C F: 33 % W: 2 km/h P: 1015 hPa
TYPE Weather
VERSION v2.3.3
eventCount 4
Helper:
DBLOG:
humidity:
LogDBShort:
TIME 1786273086.95672
VALUE 33
pressure:
LogDBShort:
TIME 1786273086.95672
VALUE 1015
temperature:
LogDBShort:
TIME 1786273086.95672
VALUE 32
wind:
LogDBShort:
TIME 1786273086.95672
VALUE 2
READINGS:
2026-08-09 12:58:06 apiMaintainer Marko Oldenburg <fhemdevelopment@cooltux.net>
2026-08-09 12:58:06 apiVersion v3.2.8-stable
2024-08-12 15:33:56 city xxxxxxxxx
2026-08-09 12:58:06 cloudCover 26
2026-08-09 12:58:06 code 26
2026-08-09 12:58:06 condition Mäßig bewölkt
2024-08-12 15:33:56 country DE
2026-08-09 12:58:06 current_date_time So, 9 Aug 2026 12:58
2026-08-09 12:58:06 hfc10_cloudCover 81
2026-08-09 12:58:06 hfc10_code 35
2026-08-09 12:58:06 hfc10_condition Leichter Regen
2026-08-09 12:58:06 hfc10_day_of_week Mo, 17:00
2026-08-09 12:58:06 hfc10_high_c 32
2026-08-09 12:58:06 hfc10_humidity 28
2026-08-09 12:58:06 hfc10_icon heavyrain
2026-08-09 12:58:06 hfc10_iconAPI 10d
2026-08-09 12:58:06 hfc10_low_c 32
2026-08-09 12:58:06 hfc10_owmAPICode 500
2026-08-09 12:58:06 hfc10_pressure 1013
2026-08-09 12:58:06 hfc10_pubDate Mo, 10 Aug 2026 17:00
2026-08-09 12:58:06 hfc10_rain1h 0
2026-08-09 12:58:06 hfc10_rain3h 0.18
2026-08-09 12:58:06 hfc10_snow1h 0
2026-08-09 12:58:06 hfc10_snow3h 0
2026-08-09 12:58:06 hfc10_tempHigh 32
2026-08-09 12:58:06 hfc10_tempLow 32
2026-08-09 12:58:06 hfc10_temp_c 32
2026-08-09 12:58:06 hfc10_temperature 32
2026-08-09 12:58:06 hfc10_wind 25
2026-08-09 12:58:06 hfc10_wind_gust 33
2026-08-09 12:58:06 hfc10_wind_speed 25
2026-08-09 12:58:06 hfc11_cloudCover 47
2026-08-09 12:58:06 hfc11_code 26
2026-08-09 12:58:06 hfc11_condition Mäßig bewölkt
2026-08-09 12:58:06 hfc11_day_of_week Mo, 20:00
2026-08-09 12:58:06 hfc11_high_c 26
2026-08-09 12:58:06 hfc11_humidity 45
2026-08-09 12:58:06 hfc11_icon cloudy
2026-08-09 12:58:06 hfc11_iconAPI 03d
2026-08-09 12:58:06 hfc11_low_c 26
2026-08-09 12:58:06 hfc11_owmAPICode 802
2026-08-09 12:58:06 hfc11_pressure 1016
2026-08-09 12:58:06 hfc11_pubDate Mo, 10 Aug 2026 20:00
2026-08-09 12:58:06 hfc11_rain1h 0
2026-08-09 12:58:06 hfc11_rain3h 0
2026-08-09 12:58:06 hfc11_snow1h 0
2026-08-09 12:58:06 hfc11_snow3h 0
2026-08-09 12:58:06 hfc11_tempHigh 26
2026-08-09 12:58:06 hfc11_tempLow 26
2026-08-09 12:58:06 hfc11_temp_c 26
2026-08-09 12:58:06 hfc11_temperature 26
2026-08-09 12:58:06 hfc11_wind 25
2026-08-09 12:58:06 hfc11_wind_gust 41
2026-08-09 12:58:06 hfc11_wind_speed 25
2026-08-09 12:58:06 hfc12_cloudCover 6
2026-08-09 12:58:06 hfc12_code 32
2026-08-09 12:58:06 hfc12_condition Klarer Himmel
2026-08-09 12:58:06 hfc12_day_of_week Mo, 23:00
2026-08-09 12:58:06 hfc12_high_c 22
2026-08-09 12:58:06 hfc12_humidity 63
2026-08-09 12:58:06 hfc12_icon sunny
2026-08-09 12:58:06 hfc12_iconAPI 01n
2026-08-09 12:58:06 hfc12_low_c 22
2026-08-09 12:58:06 hfc12_owmAPICode 800
2026-08-09 12:58:06 hfc12_pressure 1019
2026-08-09 12:58:06 hfc12_pubDate Mo, 10 Aug 2026 23:00
2026-08-09 12:58:06 hfc12_rain1h 0
2026-08-09 12:58:06 hfc12_rain3h 0
2026-08-09 12:58:06 hfc12_snow1h 0
2026-08-09 12:58:06 hfc12_snow3h 0
2026-08-09 12:58:06 hfc12_tempHigh 22
2026-08-09 12:58:06 hfc12_tempLow 22
2026-08-09 12:58:06 hfc12_temp_c 22
2026-08-09 12:58:06 hfc12_temperature 22
2026-08-09 12:58:06 hfc12_wind 9
2026-08-09 12:58:06 hfc12_wind_gust 10
2026-08-09 12:58:06 hfc12_wind_speed 9
2026-08-09 12:58:06 hfc13_cloudCover 52
2026-08-09 12:58:06 hfc13_code 26
2026-08-09 12:58:06 hfc13_condition Überwiegend bewölkt
2026-08-09 12:58:06 hfc13_day_of_week Di, 02:00
2026-08-09 12:58:06 hfc13_high_c 18
2026-08-09 12:58:06 hfc13_humidity 69
2026-08-09 12:58:06 hfc13_icon cloudy
2026-08-09 12:58:06 hfc13_iconAPI 04n
2026-08-09 12:58:06 hfc13_low_c 18
2026-08-09 12:58:06 hfc13_owmAPICode 803
2026-08-09 12:58:06 hfc13_pressure 1021
2026-08-09 12:58:06 hfc13_pubDate Di, 11 Aug 2026 02:00
2026-08-09 12:58:06 hfc13_rain1h 0
2026-08-09 12:58:06 hfc13_rain3h 0
2026-08-09 12:58:06 hfc13_snow1h 0
2026-08-09 12:58:06 hfc13_snow3h 0
2026-08-09 12:58:06 hfc13_tempHigh 18
2026-08-09 12:58:06 hfc13_tempLow 18
2026-08-09 12:58:06 hfc13_temp_c 18
2026-08-09 12:58:06 hfc13_temperature 18
2026-08-09 12:58:06 hfc13_wind 14
2026-08-09 12:58:06 hfc13_wind_gust 25
2026-08-09 12:58:06 hfc13_wind_speed 14
2026-08-09 12:58:06 hfc14_cloudCover 91
2026-08-09 12:58:06 hfc14_code 28
2026-08-09 12:58:06 hfc14_condition Bedeckt
2026-08-09 12:58:06 hfc14_day_of_week Di, 05:00
2026-08-09 12:58:06 hfc14_high_c 14
2026-08-09 12:58:06 hfc14_humidity 75
2026-08-09 12:58:06 hfc14_icon mostlycloudy
2026-08-09 12:58:06 hfc14_iconAPI 04n
2026-08-09 12:58:06 hfc14_low_c 14
2026-08-09 12:58:06 hfc14_owmAPICode 804
2026-08-09 12:58:06 hfc14_pressure 1023
2026-08-09 12:58:06 hfc14_pubDate Di, 11 Aug 2026 05:00
2026-08-09 12:58:06 hfc14_rain1h 0
2026-08-09 12:58:06 hfc14_rain3h 0
2026-08-09 12:58:06 hfc14_snow1h 0
2026-08-09 12:58:06 hfc14_snow3h 0
2026-08-09 12:58:06 hfc14_tempHigh 14
2026-08-09 12:58:06 hfc14_tempLow 14
2026-08-09 12:58:06 hfc14_temp_c 14
2026-08-09 12:58:06 hfc14_temperature 14
2026-08-09 12:58:06 hfc14_wind 13
2026-08-09 12:58:06 hfc14_wind_gust 28
2026-08-09 12:58:06 hfc14_wind_speed 13
2026-08-09 12:58:06 hfc1_cloudCover 38
2026-08-09 12:58:06 hfc1_code 26
2026-08-09 12:58:06 hfc1_condition Mäßig bewölkt
2026-08-09 12:58:06 hfc1_day_of_week So, 14:00
2026-08-09 12:58:06 hfc1_high_c 32
2026-08-09 12:58:06 hfc1_humidity 33
2026-08-09 12:58:06 hfc1_icon cloudy
2026-08-09 12:58:06 hfc1_iconAPI 03d
2026-08-09 12:58:06 hfc1_low_c 32
2026-08-09 12:58:06 hfc1_owmAPICode 802
2026-08-09 12:58:06 hfc1_pressure 1014
2026-08-09 12:58:06 hfc1_pubDate So, 9 Aug 2026 14:00
2026-08-09 12:58:06 hfc1_rain1h 0
2026-08-09 12:58:06 hfc1_rain3h 0
2026-08-09 12:58:06 hfc1_snow1h 0
2026-08-09 12:58:06 hfc1_snow3h 0
2026-08-09 12:58:06 hfc1_tempHigh 32
2026-08-09 12:58:06 hfc1_tempLow 32
2026-08-09 12:58:06 hfc1_temp_c 32
2026-08-09 12:58:06 hfc1_temperature 32
2026-08-09 12:58:06 hfc1_wind 15
2026-08-09 12:58:06 hfc1_wind_gust 24
2026-08-09 12:58:06 hfc1_wind_speed 15
2026-08-09 12:58:06 hfc2_cloudCover 59
2026-08-09 12:58:06 hfc2_code 26
2026-08-09 12:58:06 hfc2_condition Überwiegend bewölkt
2026-08-09 12:58:06 hfc2_day_of_week So, 17:00
2026-08-09 12:58:06 hfc2_high_c 33
2026-08-09 12:58:06 hfc2_humidity 31
2026-08-09 12:58:06 hfc2_icon cloudy
2026-08-09 12:58:06 hfc2_iconAPI 04d
2026-08-09 12:58:06 hfc2_low_c 32
2026-08-09 12:58:06 hfc2_owmAPICode 803
2026-08-09 12:58:06 hfc2_pressure 1014
2026-08-09 12:58:06 hfc2_pubDate So, 9 Aug 2026 17:00
2026-08-09 12:58:06 hfc2_rain1h 0
2026-08-09 12:58:06 hfc2_rain3h 0
2026-08-09 12:58:06 hfc2_snow1h 0
2026-08-09 12:58:06 hfc2_snow3h 0
2026-08-09 12:58:06 hfc2_tempHigh 33
2026-08-09 12:58:06 hfc2_tempLow 32
2026-08-09 12:58:06 hfc2_temp_c 32
2026-08-09 12:58:06 hfc2_temperature 32
2026-08-09 12:58:06 hfc2_wind 20
2026-08-09 12:58:06 hfc2_wind_gust 24
2026-08-09 12:58:06 hfc2_wind_speed 20
2026-08-09 12:58:06 hfc3_cloudCover 79
2026-08-09 12:58:06 hfc3_code 26
2026-08-09 12:58:06 hfc3_condition Überwiegend bewölkt
2026-08-09 12:58:06 hfc3_day_of_week So, 20:00
2026-08-09 12:58:06 hfc3_high_c 30
2026-08-09 12:58:06 hfc3_humidity 38
2026-08-09 12:58:06 hfc3_icon cloudy
2026-08-09 12:58:06 hfc3_iconAPI 04d
2026-08-09 12:58:06 hfc3_low_c 29
2026-08-09 12:58:06 hfc3_owmAPICode 803
2026-08-09 12:58:06 hfc3_pressure 1013
2026-08-09 12:58:06 hfc3_pubDate So, 9 Aug 2026 20:00
2026-08-09 12:58:06 hfc3_rain1h 0
2026-08-09 12:58:06 hfc3_rain3h 0
2026-08-09 12:58:06 hfc3_snow1h 0
2026-08-09 12:58:06 hfc3_snow3h 0
2026-08-09 12:58:06 hfc3_tempHigh 30
2026-08-09 12:58:06 hfc3_tempLow 29
2026-08-09 12:58:06 hfc3_temp_c 30
2026-08-09 12:58:06 hfc3_temperature 30
2026-08-09 12:58:06 hfc3_wind 14
2026-08-09 12:58:06 hfc3_wind_gust 22
2026-08-09 12:58:06 hfc3_wind_speed 14
2026-08-09 12:58:06 hfc4_cloudCover 98
2026-08-09 12:58:06 hfc4_code 35
2026-08-09 12:58:06 hfc4_condition Leichter Regen
2026-08-09 12:58:06 hfc4_day_of_week So, 23:00
2026-08-09 12:58:06 hfc4_high_c 24
2026-08-09 12:58:06 hfc4_humidity 47
2026-08-09 12:58:06 hfc4_icon heavyrain
2026-08-09 12:58:06 hfc4_iconAPI 10n
2026-08-09 12:58:06 hfc4_low_c 24
2026-08-09 12:58:06 hfc4_owmAPICode 500
2026-08-09 12:58:06 hfc4_pressure 1013
2026-08-09 12:58:06 hfc4_pubDate So, 9 Aug 2026 23:00
2026-08-09 12:58:06 hfc4_rain1h 0
2026-08-09 12:58:06 hfc4_rain3h 0.25
2026-08-09 12:58:06 hfc4_snow1h 0
2026-08-09 12:58:06 hfc4_snow3h 0
2026-08-09 12:58:06 hfc4_tempHigh 24
2026-08-09 12:58:06 hfc4_tempLow 24
2026-08-09 12:58:06 hfc4_temp_c 24
2026-08-09 12:58:06 hfc4_temperature 24
2026-08-09 12:58:06 hfc4_wind 11
2026-08-09 12:58:06 hfc4_wind_gust 13
2026-08-09 12:58:06 hfc4_wind_speed 11
2026-08-09 12:58:06 hfc5_cloudCover 94
2026-08-09 12:58:06 hfc5_code 35
2026-08-09 12:58:06 hfc5_condition Leichter Regen
2026-08-09 12:58:06 hfc5_day_of_week Mo, 02:00
2026-08-09 12:58:06 hfc5_high_c 20
2026-08-09 12:58:06 hfc5_humidity 52
2026-08-09 12:58:06 hfc5_icon heavyrain
2026-08-09 12:58:06 hfc5_iconAPI 10n
2026-08-09 12:58:06 hfc5_low_c 20
2026-08-09 12:58:06 hfc5_owmAPICode 500
2026-08-09 12:58:06 hfc5_pressure 1013
2026-08-09 12:58:06 hfc5_pubDate Mo, 10 Aug 2026 02:00
2026-08-09 12:58:06 hfc5_rain1h 0
2026-08-09 12:58:06 hfc5_rain3h 0.45
2026-08-09 12:58:06 hfc5_snow1h 0
2026-08-09 12:58:06 hfc5_snow3h 0
2026-08-09 12:58:06 hfc5_tempHigh 20
2026-08-09 12:58:06 hfc5_tempLow 20
2026-08-09 12:58:06 hfc5_temp_c 20
2026-08-09 12:58:06 hfc5_temperature 20
2026-08-09 12:58:06 hfc5_wind 1
2026-08-09 12:58:06 hfc5_wind_gust 2
2026-08-09 12:58:06 hfc5_wind_speed 1
2026-08-09 12:58:06 hfc6_cloudCover 2
2026-08-09 12:58:06 hfc6_code 32
2026-08-09 12:58:06 hfc6_condition Klarer Himmel
2026-08-09 12:58:06 hfc6_day_of_week Mo, 05:00
2026-08-09 12:58:06 hfc6_high_c 19
2026-08-09 12:58:06 hfc6_humidity 55
2026-08-09 12:58:06 hfc6_icon sunny
2026-08-09 12:58:06 hfc6_iconAPI 01n
2026-08-09 12:58:06 hfc6_low_c 19
2026-08-09 12:58:06 hfc6_owmAPICode 800
2026-08-09 12:58:06 hfc6_pressure 1014
2026-08-09 12:58:06 hfc6_pubDate Mo, 10 Aug 2026 05:00
2026-08-09 12:58:06 hfc6_rain1h 0
2026-08-09 12:58:06 hfc6_rain3h 0
2026-08-09 12:58:06 hfc6_snow1h 0
2026-08-09 12:58:06 hfc6_snow3h 0
2026-08-09 12:58:06 hfc6_tempHigh 19
2026-08-09 12:58:06 hfc6_tempLow 19
2026-08-09 12:58:06 hfc6_temp_c 19
2026-08-09 12:58:06 hfc6_temperature 19
2026-08-09 12:58:06 hfc6_wind 10
2026-08-09 12:58:06 hfc6_wind_gust 10
2026-08-09 12:58:06 hfc6_wind_speed 10
2026-08-09 12:58:06 hfc7_cloudCover 1
2026-08-09 12:58:06 hfc7_code 32
2026-08-09 12:58:06 hfc7_condition Klarer Himmel
2026-08-09 12:58:06 hfc7_day_of_week Mo, 08:00
2026-08-09 12:58:06 hfc7_high_c 23
2026-08-09 12:58:06 hfc7_humidity 49
2026-08-09 12:58:06 hfc7_icon sunny
2026-08-09 12:58:06 hfc7_iconAPI 01d
2026-08-09 12:58:06 hfc7_low_c 23
2026-08-09 12:58:06 hfc7_owmAPICode 800
2026-08-09 12:58:06 hfc7_pressure 1014
2026-08-09 12:58:06 hfc7_pubDate Mo, 10 Aug 2026 08:00
2026-08-09 12:58:06 hfc7_rain1h 0
2026-08-09 12:58:06 hfc7_rain3h 0
2026-08-09 12:58:06 hfc7_snow1h 0
2026-08-09 12:58:06 hfc7_snow3h 0
2026-08-09 12:58:06 hfc7_tempHigh 23
2026-08-09 12:58:06 hfc7_tempLow 23
2026-08-09 12:58:06 hfc7_temp_c 23
2026-08-09 12:58:06 hfc7_temperature 23
2026-08-09 12:58:06 hfc7_wind 11
2026-08-09 12:58:06 hfc7_wind_gust 23
2026-08-09 12:58:06 hfc7_wind_speed 11
2026-08-09 12:58:06 hfc8_cloudCover 16
2026-08-09 12:58:06 hfc8_code 30
2026-08-09 12:58:06 hfc8_condition Ein paar Wolken
2026-08-09 12:58:06 hfc8_day_of_week Mo, 11:00
2026-08-09 12:58:06 hfc8_high_c 33
2026-08-09 12:58:06 hfc8_humidity 30
2026-08-09 12:58:06 hfc8_icon partly_cloudy
2026-08-09 12:58:06 hfc8_iconAPI 02d
2026-08-09 12:58:06 hfc8_low_c 33
2026-08-09 12:58:06 hfc8_owmAPICode 801
2026-08-09 12:58:06 hfc8_pressure 1013
2026-08-09 12:58:06 hfc8_pubDate Mo, 10 Aug 2026 11:00
2026-08-09 12:58:06 hfc8_rain1h 0
2026-08-09 12:58:06 hfc8_rain3h 0
2026-08-09 12:58:06 hfc8_snow1h 0
2026-08-09 12:58:06 hfc8_snow3h 0
2026-08-09 12:58:06 hfc8_tempHigh 33
2026-08-09 12:58:06 hfc8_tempLow 33
2026-08-09 12:58:06 hfc8_temp_c 33
2026-08-09 12:58:06 hfc8_temperature 33
2026-08-09 12:58:06 hfc8_wind 17
2026-08-09 12:58:06 hfc8_wind_gust 24
2026-08-09 12:58:06 hfc8_wind_speed 17
2026-08-09 12:58:06 hfc9_cloudCover 27
2026-08-09 12:58:06 hfc9_code 26
2026-08-09 12:58:06 hfc9_condition Mäßig bewölkt
2026-08-09 12:58:06 hfc9_day_of_week Mo, 14:00
2026-08-09 12:58:06 hfc9_high_c 34
2026-08-09 12:58:06 hfc9_humidity 35
2026-08-09 12:58:06 hfc9_icon cloudy
2026-08-09 12:58:06 hfc9_iconAPI 03d
2026-08-09 12:58:06 hfc9_low_c 34
2026-08-09 12:58:06 hfc9_owmAPICode 802
2026-08-09 12:58:06 hfc9_pressure 1012
2026-08-09 12:58:06 hfc9_pubDate Mo, 10 Aug 2026 14:00
2026-08-09 12:58:06 hfc9_rain1h 0
2026-08-09 12:58:06 hfc9_rain3h 0
2026-08-09 12:58:06 hfc9_snow1h 0
2026-08-09 12:58:06 hfc9_snow3h 0
2026-08-09 12:58:06 hfc9_tempHigh 34
2026-08-09 12:58:06 hfc9_tempLow 34
2026-08-09 12:58:06 hfc9_temp_c 34
2026-08-09 12:58:06 hfc9_temperature 34
2026-08-09 12:58:06 hfc9_wind 17
2026-08-09 12:58:06 hfc9_wind_gust 38
2026-08-09 12:58:06 hfc9_wind_speed 17
2026-08-09 12:58:06 high_c 32
2026-08-09 12:58:06 humidity 33
2026-08-09 12:58:06 icon cloudy
2026-08-09 12:58:06 iconAPI 03d
2026-08-09 12:58:06 lastError
2026-08-09 12:58:06 lat xxxxxxxxx
2026-08-09 12:58:06 long xxxxxxxxx
2026-08-09 12:58:06 low_c 31
2026-08-09 12:58:06 owmAPICode 802
2026-08-09 12:58:06 pressure 1015
2026-08-09 12:58:06 pubDate So, 9 Aug 2026 12:58
2026-08-09 12:58:06 state T: 32 °C F: 33 % W: 2 km/h P: 1015 hPa
2026-08-09 12:58:06 status ok
2026-08-09 12:58:06 sunriseTime So, 9 Aug 2026 05:48
2026-08-09 12:58:06 sunsetTime So, 9 Aug 2026 20:46
2026-08-09 12:58:06 tempFeelsLike_c 31
2026-08-09 12:58:06 tempHigh 32
2026-08-09 12:58:06 tempLow 31
2026-08-09 12:58:06 temp_c 32
2026-08-09 12:58:06 temperature 32
2026-08-09 12:58:06 validity up-to-date
2026-08-09 12:58:06 visibility 10000
2026-08-09 12:58:06 wind 2
2026-08-09 12:58:06 wind_condition Wind: NNW 2 km/h
2026-08-09 12:58:06 wind_direction 337
2026-08-09 12:58:06 wind_gust 3
2026-08-09 12:58:06 wind_speed 2
fhem:
LOCATION xxxxxxx
allowCache 1
interfaces temperature;humidity;wind
Attributes:
alerts 1
alias Wettervorhersage
event-on-update-reading wind,temperature,pressure,humidity
forecast hourly
forecastLimit 14
group Wettervorhersage
icon scene_day
room Dienste->Wetter
sortby 1
verbose 2
Ich habe einen Verdacht. Die Behandlung von $data->{list}->[$i]->...irgendwas... scheint nicht robust genug.
Wenn $data die Referenz aus main ist (habe es nicht gecheckt), können die Werte intern leicht überschrieben werden, besser wäre $data->{$name}->{list}->[$i]->...irgendwas...
Außerdem wäre wahrscheinlich ein Guard am Anfang gut, etwa (ungetestet):
my $i = 0;
for ( @{ $data->{list} } ) {
next unless defined $data->{list}->[$i];
push(
@{ $self->{cached}->{forecast}->{hourly} },
{
'pubDate' => _strftimeWrapper(
"%a, %e %b %Y %H:%M",
localtime( $data->{list}->[$i]->{dt} )
),
'day_of_week' => strftime(
"%a, %H:%M", localtime( $data->{list}->[$i]->{dt} )
),
'temperature' =>
int( sprintf( "%.0f", $data->{list}->[$i]->{main}->{temp} ) ),
'temp_c' =>
int( sprintf( "%.0f", $data->{list}->[$i]->{main}->{temp} ) ),
'low_c' => int(
sprintf( "%.0f", $data->{list}->[$i]->{main}->{temp_min} )
),
'high_c' => int(
sprintf( "%.0f", $data->{list}->[$i]->{main}->{temp_max} )
),
'tempLow' => int(
sprintf( "%.0f", $data->{list}->[$i]->{main}->{temp_min} )
),
'tempHigh' => int(
sprintf( "%.0f", $data->{list}->[$i]->{main}->{temp_max} )
),
'humidity' => $data->{list}->[$i]->{main}->{humidity},
'condition' => encode_utf8(
$data->{list}->[$i]->{weather}->[0]->{description}
),
'pressure' => int(
sprintf( "%.1f", $data->{list}->[$i]->{main}->{pressure} )
+ 0.5
),
'wind' => int(
sprintf( "%.1f",
( $data->{list}->[$i]->{wind}->{speed} * 3.6 ) ) + 0.5
),
'wind_speed' => int(
sprintf( "%.1f",
( $data->{list}->[$i]->{wind}->{speed} * 3.6 ) ) + 0.5
),
'wind_gust' => int(
sprintf( "%.1f",
( $data->{list}->[$i]->{wind}->{gust} * 3.6 ) ) + 0.5
),
'cloudCover' => $data->{list}->[$i]->{clouds}->{all},
'code' => $codes{ $data->{list}->[$i]->{weather}->[0]->{id} },
'owmAPICode' => $data->{list}->[$i]->{weather}->[0]->{id},
'iconAPI' => $data->{list}->[$i]->{weather}->[0]->{icon},
'rain1h' => (
$data->{list}->[$i]->{rain}->{'1h'}
? $data->{list}->[$i]->{rain}->{'1h'}
: 0
),
'rain3h' => (
$data->{list}->[$i]->{rain}->{'3h'}
? $data->{list}->[$i]->{rain}->{'3h'}
: 0
),
'pop1h' => (
$data->{list}->[$i]->{pop}->{'1h'}
? $data->{list}->[$i]->{pop}->{'1h'}
: 0
),
'pop3h' => (
$data->{list}->[$i]->{pop}->{'3h'}
? $data->{list}->[$i]->{pop}->{'3h'}
: 0
),
'snow1h' => (
$data->{list}->[$i]->{snow}->{'1h'}
? $data->{list}->[$i]->{snow}->{'1h'}
: 0
),
'snow3h' => (
$data->{list}->[$i]->{snow}->{'3h'}
? $data->{list}->[$i]->{snow}->{'3h'}
: 0
),
}
);
$i++;
}
Ich versuche auch mal auf meiner Testinstanz ...
Internals:
API OpenWeatherMapAPI
APIKEY 0718769ca0289bb483efee96ae555941
APIOPTIONS cachemaxage:600
DEF API=OpenWeatherMapAPI,cachemaxage:600 apikey=xxxx location=48.x,8.x interval=3600 lang=de
FUUID 63bacd19-f33f-1af2-9e43-8d6b24efedbd0c04
FVERSION 59_Weather.pm:v2.3.3-s30437/2025-10-23
INTERVAL 3600
LANG de
MODEL OpenWeatherMapAPI
NAME OpenWetter
NOTIFYDEV global
NR 1184
NTFY_ORDER 50-OpenWetter
STATE T: 32 °C F: 32 % W: 8 km/h P: 1015 hPa
TYPE Weather
VERSION v2.3.3
eventCount 1
READINGS:
2026-08-09 13:14:56 apiMaintainer Marko Oldenburg <fhemdevelopment@cooltux.net>
2026-08-09 13:14:56 apiVersion v3.2.8-stable
2026-06-28 09:23:25 city xxxxxx
2026-08-09 13:14:56 cloudCover 67
2026-08-09 13:14:56 code 26
2026-08-09 13:14:56 condition Überwiegend bewölkt
2026-06-28 09:23:25 country DE
2026-08-09 13:14:56 current_date_time So, 9 Aug 2026 13:14
2026-08-09 13:14:56 high_c 32
2026-08-09 13:14:56 humidity 32
2026-08-09 13:14:56 icon cloudy
2026-08-09 13:14:56 iconAPI 04d
2026-08-09 13:14:56 lastError
2026-08-09 13:14:56 lat 48.xxx
2026-08-09 13:14:56 long 8.xxx
2026-08-09 13:14:56 low_c 32
2026-08-09 13:14:56 owmAPICode 803
2026-08-09 13:14:56 pressure 1015
2026-08-09 13:14:56 pubDate So, 9 Aug 2026 13:08
2026-08-09 13:14:56 state T: 32 °C F: 32 % W: 8 km/h P: 1015 hPa
2026-08-09 13:14:56 status ok
2026-08-09 13:14:56 sunriseTime So, 9 Aug 2026 06:10
2026-08-09 13:14:56 sunsetTime So, 9 Aug 2026 20:53
2026-08-09 13:14:56 tempFeelsLike_c 31
2026-08-09 13:14:56 tempHigh 32
2026-08-09 13:14:56 tempLow 32
2026-08-09 13:14:56 temp_c 32
2026-08-09 13:14:56 temperature 32
2026-08-09 13:14:56 validity up-to-date
2026-08-09 13:14:56 visibility 10000
2026-08-09 13:14:56 wind 8
2026-08-09 13:14:56 wind_condition Wind: WNW 8 km/h
2026-08-09 13:14:56 wind_direction 292
2026-08-09 13:14:56 wind_gust 11
2026-08-09 13:14:56 wind_speed 8
fhem:
LOCATION 48.xxxx,8.xxxx
allowCache 1
interfaces temperature;humidity;wind
Attributes:
event-on-change-reading state,temperature,high_c,low_c,tempLow,tempHigh,wind_condition
forecast daily
forecastLimit 8
group Wetter
icon weather_sun
room Wetter
Also bei läuft es jetzt.
Ich habe $data gedumpt:
Zitatbless $data;
main::Log3 ('MyWetter', 1, "MyWetter - Problemhash: \n". main::Dumper $data->{list});
my $i = 0;
for ( @{ $data->{list} } ) {
next unless defined $data->{list}->[$i];
push(
@{ $self->{cached}->{forecast}->{hourly} },
{
'pubDate' => _strftimeWrapper(
"%a, %e %b %Y %H:%M",
localtime( $data->{list}->[$i]->{dt} )
),
'day_of_week' => strftime(
"%a, %H:%M", localtime( $data->{list}->[$i]->{dt} )
),
'temperature' =>
int( sprintf( "%.0f", $data->{list}->[$i]->{main}->{temp} ) ),
'temp_c' =>
int( sprintf( "%.0f", $data->{list}->[$i]->{main}->{temp} ) ),
'low_c' => int(
sprintf( "%.0f", $data->{list}->[$i]->{main}->{temp_min} )
),
'high_c' => int(
sprintf( "%.0f", $data->{list}->[$i]->{main}->{temp_max} )
),
'tempLow' => int(
sprintf( "%.0f", $data->{list}->[$i]->{main}->{temp_min} )
),
'tempHigh' => int(
sprintf( "%.0f", $data->{list}->[$i]->{main}->{temp_max} )
),
'humidity' => $data->{list}->[$i]->{main}->{humidity},
'condition' => encode_utf8(
$data->{list}->[$i]->{weather}->
),
'pressure' => int(
sprintf( "%.1f", $data->{list}->[$i]->{main}->{pressure} )
+ 0.5
),
'wind' => int(
sprintf( "%.1f",
( $data->{list}->[$i]->{wind}->{speed} * 3.6 ) ) + 0.5
),
'wind_speed' => int(
sprintf( "%.1f",
( $data->{list}->[$i]->{wind}->{speed} * 3.6 ) ) + 0.5
),
'wind_gust' => int(
sprintf( "%.1f",
( $data->{list}->[$i]->{wind}->{gust} * 3.6 ) ) + 0.5
),
'cloudCover' => $data->{list}->[$i]->{clouds}->{all},
'code' => $codes{ $data->{list}->[$i]->{weather}->
'owmAPICode' => $data->{list}->[$i]->{weather}->
'iconAPI' => $data->{list}->[$i]->{weather}->
'rain1h' => (
$data->{list}->[$i]->{rain}->{'1h'}
? $data->{list}->[$i]->{rain}->{'1h'}
: 0
),
'rain3h' => (
$data->{list}->[$i]->{rain}->{'3h'}
? $data->{list}->[$i]->{rain}->{'3h'}
: 0
),
'pop1h' => ( $data->{list}->[$i]->{pop} // 0 ),
'pop3h' => ( $data->{list}->[$i]->{pop} // 0 ),
'snow1h' => (
$data->{list}->[$i]->{snow}->{'1h'}
? $data->{list}->[$i]->{snow}->{'1h'}
: 0
),
'snow3h' => (
$data->{list}->[$i]->{snow}->{'3h'}
? $data->{list}->[$i]->{snow}->{'3h'}
: 0
),
}
);
$i++;
}
Der Punkt ist {pop} ist ein Skalar (0) und kein Hash. Regen und Schnee kommt in $data überhaupt nicht vor, normal bei dem Wetter.
Habe es jetzt so gepatcht bei mir:
for ( @{ $data->{list} } ) {
next unless defined $data->{list}->[$i];
push(
@{ $self->{cached}->{forecast}->{hourly} },
{
'pubDate' => _strftimeWrapper(
"%a, %e %b %Y %H:%M",
localtime( $data->{list}->[$i]->{dt} )
),
'day_of_week' => strftime(
"%a, %H:%M", localtime( $data->{list}->[$i]->{dt} )
),
'temperature' =>
int( sprintf( "%.0f", $data->{list}->[$i]->{main}->{temp} ) ),
'temp_c' =>
int( sprintf( "%.0f", $data->{list}->[$i]->{main}->{temp} ) ),
'low_c' => int(
sprintf( "%.0f", $data->{list}->[$i]->{main}->{temp_min} )
),
'high_c' => int(
sprintf( "%.0f", $data->{list}->[$i]->{main}->{temp_max} )
),
'tempLow' => int(
sprintf( "%.0f", $data->{list}->[$i]->{main}->{temp_min} )
),
'tempHigh' => int(
sprintf( "%.0f", $data->{list}->[$i]->{main}->{temp_max} )
),
'humidity' => $data->{list}->[$i]->{main}->{humidity},
'condition' => encode_utf8(
$data->{list}->[$i]->{weather}->[0]->{description}
),
'pressure' => int(
sprintf( "%.1f", $data->{list}->[$i]->{main}->{pressure} )
+ 0.5
),
'wind' => int(
sprintf( "%.1f",
( $data->{list}->[$i]->{wind}->{speed} * 3.6 ) ) + 0.5
),
'wind_speed' => int(
sprintf( "%.1f",
( $data->{list}->[$i]->{wind}->{speed} * 3.6 ) ) + 0.5
),
'wind_gust' => int(
sprintf( "%.1f",
( $data->{list}->[$i]->{wind}->{gust} * 3.6 ) ) + 0.5
),
'cloudCover' => $data->{list}->[$i]->{clouds}->{all},
'code' => $codes{ $data->{list}->[$i]->{weather}->[0]->{id} },
'owmAPICode' => $data->{list}->[$i]->{weather}->[0]->{id},
'iconAPI' => $data->{list}->[$i]->{weather}->[0]->{icon},
'rain1h' => (
$data->{list}->[$i]->{rain}->{'1h'}
? $data->{list}->[$i]->{rain}->{'1h'}
: 0
),
'rain3h' => (
$data->{list}->[$i]->{rain}->{'3h'}
? $data->{list}->[$i]->{rain}->{'3h'}
: 0
),
'pop1h' => ( $data->{list}->[$i]->{pop} // 0 ),
'pop3h' => ( $data->{list}->[$i]->{pop} // 0 ),
'snow1h' => (
$data->{list}->[$i]->{snow}->{'1h'}
? $data->{list}->[$i]->{snow}->{'1h'}
: 0
),
'snow3h' => (
$data->{list}->[$i]->{snow}->{'3h'}
? $data->{list}->[$i]->{snow}->{'3h'}
: 0
),
}
);
$i++;
}
So ein Patch würde sich vermutlich für weitere Keys anbieten.
Ein besserer Fix Vorschlag:
'pop1h' => (
ref $data->{list}->[$i]->{pop} eq 'HASH' && defined $data->{list}->[$i]->{pop}->{'1h'}
? $data->{list}->[$i]->{pop}->{'1h'}
: 0
),
'pop3h' => (
ref $data->{list}->[$i]->{pop} eq 'HASH' && defined $data->{list}->[$i]->{pop}->{'3h'}
? $data->{list}->[$i]->{pop}->{'3h'}
: 0
),
Oder noch besser inkl. snow:
'pop1h' => (
ref $data->{list}->[$i]->{pop} eq 'HASH' && defined $data->{list}->[$i]->{pop}->{'1h'}
? $data->{list}->[$i]->{pop}->{'1h'}
: $data->{list}->[$i]->{pop} // 0
),
'pop3h' => (
ref $data->{list}->[$i]->{pop} eq 'HASH' && defined $data->{list}->[$i]->{pop}->{'3h'}
? $data->{list}->[$i]->{pop}->{'3h'}
: $data->{list}->[$i]->{pop} // 0
),
'snow1h' => (
ref $data->{list}->[$i]->{snow} eq 'HASH' && defined $data->{list}->[$i]->{snow}->{'1h'}
? $data->{list}->[$i]->{snow}->{'1h'}
: $data->{list}->[$i]->{snow} // 0
),
'snow3h' => (
ref $data->{list}->[$i]->{snow} eq 'HASH' && defined $data->{list}->[$i]->{snow}->{'3h'}
? $data->{list}->[$i]->{snow}->{'3h'}
: $data->{list}->[$i]->{snow} // 0
),
Läuft auch fehlerfrei. Bietet sich auch für andere Keys an die evtl. Scalar oder Hash sein können.
Ich danke Dir Heiko für den Patch. Ich werde es mir heute Abend noch mal anschauen und dann einbauen. Morgen sollte dann eine neue Version kommen.
Für Regen und Schnee habe ich schon mal Werte bekommen, aber Pop hatte ich noch nie, da scheint das ganze wohl ande an zu kommen.
Ok ich konnte das Problem analysieren. Danke an Heiko für die tolle Vorarbeit. Ich habe mich damals bei einbau von 1h regen und schnee verleiten lassen die Regenwahrscheinlichkeit auch in 1h und 3h ein zu bauen.
Gibt halt nur die API nicht her, man hätte besser die API Referenz lesen sollen. Habe ich nun gemacht und nun stimmen alle Werte wieder und hoffentlich läuft auch das Modul.
Wer es gerne vorab testen möchte
@Heiko
Wäre super
https://git.cooltux.net/FHEM/mod-Weather/raw/branch/testing/controls_Weather.txt
Habs getestet -> läuft.