FHEM Forum

FHEM - Hausautomations-Systeme => Unterstützende Dienste => Wettermodule => Thema gestartet von: ppmss am 01 Januar 2025, 17:49:44

Titel: Wetterstation liefert keine Werte mehr nach Update
Beitrag von: ppmss am 01 Januar 2025, 17:49:44
Hallo Alle,
nach langer Zeit habe ich mir mal wieder neue Shellies gekauft und eingebunden.
Hierzu musste ich allerdings einen FHEM-Update laufen lassen.

Nun funktioniert mein Bresser Wetterstations-Abruf nicht mehr und ich suche mir einen Wolf ....
Ich habe Folgendes versucht:
- WEBweatherstation und Wetterstation - devices gelöscht und über define Wetterstation neu angelegt und attr wie bisher wieder gesetzt
--> KEIN Erfolg

- 50_HP1000.pm und 01_FHEMWEB.pm temporär gegen gesicherte Version rückgetauscht
--> KEIN Erfolg

Ich habe: stateReadings temperature humidity --> liefern seit update im STATE '?'

Im log findet man folgende pl-Fehler/Warnings:
2025.01.01 16:43:29.214 2: Registering HP1000 Wetterstation for URL /updateweatherstation...
2025.01.01 16:44:45.070 1: PERL WARNING: Use of uninitialized value in hash element at fhem.pl line 4619.
2025.01.01 16:44:45.388 1: PERL WARNING: Use of uninitialized value in hash element at fhem.pl line 1761.
2025.01.01 16:44:47.911 1: PERL WARNING: Use of uninitialized value in hash element at ./FHEM/01_FHEMWEB.pm line 1941.
2025.01.01 16:44:47.912 1: PERL WARNING: Use of uninitialized value $type in hash element at ./FHEM/01_FHEMWEB.pm line 3467.
2025.01.01 16:44:47.913 1: PERL WARNING: Use of uninitialized value in hash element at fhem.pl line 2030.
2025.01.01 16:44:47.914 1: PERL WARNING: Use of uninitialized value in hash element at fhem.pl line 2875.
2025.01.01 16:44:47.914 1: PERL WARNING: Use of uninitialized value in concatenation (.) or string at fhem.pl line 2875.
2025.01.01 16:44:50.780 1: Error: >WEBweatherstation< has no TYPE, but following keys: >BYTES_READ<
2025.01.01 16:45:09.300 2: Unregistering HP1000 Wetterstation for URL /updateweatherstation...
2025.01.01 16:45:37.929 3: HP1000 Wetterstation: Creating new FHEMWEB instance WEBweatherstation with webname 'weatherstation'
2025.01.01 16:45:37.932 3: WEBweatherstation: port 8084 opened

Hat jemand eine Idee, was ich noch prüfen/ausprobieren könnte?

Vielen Dank,
alternder ITler der noch nicht in Rente ist und dem die Zeit fehlt den relevante pl-Code zu analysieren.

Bin aber schon bereit tiefer einzusteigen, wenn ich nen Tipp bekomme, wo ich anfangen soll.

Nochmal Danke und allen ein gutes neues Jahr,
Peter
Titel: Aw: Wetterstation liefert keine Werte mehr nach Update
Beitrag von: rudolfkoenig am 01 Januar 2025, 18:23:38
Ich gehe davon aus, dass Problem nichts mit FHEMWEB zu tun hat.
Laut MAINTAINER.txt wird 50_HP1000.pm in "Unterstützende Dienste/Wettermodule" betreut, bitte das Thema dahin verschieben (Knopf im Forum unten links).

Ansonsten wuerde ich "attr global verbose 5" setzen, die Wetterstation in FHEM erneut definieren, und in FHEM-Log schauen, was dazu gemeldet wird.
Titel: Aw: Wetterstation liefert keine Werte mehr nach Update
Beitrag von: ppmss am 02 Januar 2025, 09:07:18
Hallo,
vielen Dank für den Tipp ...
Ich werde das so bald als möglich ausprobieren.

Ich habe verschoben ..

Ciao,
Peter
Titel: Aw: Wetterstation liefert keine Werte mehr nach Update
Beitrag von: ppmss am 04 Januar 2025, 14:38:22
Hi,
kann mir jemand sagen, wie ich mit PostMan die REST-Calls an fhem/wetterstation senden kann um die Ergebnisse zu testen?
Ich denke, dass die Calls keine Reading-Ergebnisse liefern.

Kann jemand was mit den log-Einträgen anfangen?
2025.01.04 13:55:53.852 2: Registering HP1000 Wetterstation for URL /updateweatherstation...
2025.01.04 13:55:53.853 5: Starting notify loop for global, 1 event(s), first is DEFINED Wetterstation
2025.01.04 13:55:53.854 5: createNotifyHash
2025.01.04 13:55:53.858 4: DBLogging - check Device: global , Event: DEFINED Wetterstation
2025.01.04 13:55:53.864 5: End notify loop for global
2025.01.04 13:55:53.868 5: GET /fhem?detail=Wetterstation&fw_id=1735995317.19973 HTTP/1.1
Host: ***pi1:8083
Connection: keep-alive
Cache-Control: max-age=0
Authorization: Basic cGV0ZXJzOlJvc3NseW4wMCE=
Upgrade-Insecure-Requests: 1
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36 Edg/131.0.0.0
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7
Referer: http://***pi1:8083/fhem?detail=global&fw_id=1735995317.19973
Accept-Encoding: gzip, deflate
Accept-Language: de,de-DE;q=0.9,en;q=0.8,en-GB;q=0.7,en-US;q=0.6
2025.01.04 13:55:53.869 4: WEB_192.168.***.22_58281 GET /fhem?detail=Wetterstation&fw_id=1735995317.19973; BUFLEN:0
2025.01.04 13:55:53.912 5: HP1000 Wetterstation: called function HP1000_Get()
2025.01.04 13:55:53.932 4: WEB: /fhem?detail=Wetterstation&fw_id=1735995317.19973 / RL:4256 / text/html; charset=UTF-8 / Content-Encoding: gzip
 / Cache-Control: no-cache, no-store, must-revalidate

2025.01.04 13:55:53.951 5: GET /fhem?cmd=%7BAttrVal(%22Wetterstation%22%2C%22room%22%2C%22%22)%7D&XHR=1&fwcsrf=csrf_59945202350855 HTTP/1.1
Host: ***pi1:8083
Connection: keep-alive
Authorization: Basic cGV0ZXJzOlJvc3NseW4wMCE=
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36 Edg/131.0.0.0
Accept: */*
Referer: http://***pi1:8083/fhem?detail=Wetterstation&fw_id=1735995317.19973
Accept-Encoding: gzip, deflate
Accept-Language: de,de-DE;q=0.9,en;q=0.8,en-GB;q=0.7,en-US;q=0.6
2025.01.04 13:55:53.952 4: WEB_192.168.***.22_58281 GET /fhem?cmd=%7BAttrVal(%22Wetterstation%22%2C%22room%22%2C%22%22)%7D&XHR=1&fwcsrf=csrf_59945202350855; BUFLEN:0
2025.01.04 13:55:53.953 5: Cmd: >{AttrVal("Wetterstation","room","")}<
2025.01.04 13:55:53.954 4: WEB: /fhem?cmd=%7BAttrVal(%22Wetterstation%22%2C%22room%22%2C%22%22)%7D&XHR=1&fwcsrf=csrf_59945202350855 / RL:21 / text/plain; charset=UTF-8 / Content-Encoding: gzip
 / Cache-Control: no-cache, no-store, must-revalidate

2025.01.04 13:55:54.369 4: Connection accepted from WEB_192.168.***.22_58319
2025.01.04 13:55:54.372 5: GET /fhem?XHR=1&inform=type%3Dstatus%3Bfilter%3DWetterstation%3Bsince%3D1735995352.89548%3Bfmt%3DJSON&fw_id=1735995317.19973×tamp=1735995353137 HTTP/1.1
Host: ***pi1:8083
Connection: Upgrade
Pragma: no-cache
Cache-Control: no-cache
Authorization: Basic cGV0ZXJzOlJvc3NseW4wMCE=
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36 Edg/131.0.0.0
Upgrade: websocket
Origin: http://***pi1:8083
Sec-WebSocket-Version: 13
Accept-Encoding: gzip, deflate
Accept-Language: de,de-DE;q=0.9,en;q=0.8,en-GB;q=0.7,en-US;q=0.6
Sec-WebSocket-Key: gGf7flAV/UrK+mbZkgAEvQ==
Sec-WebSocket-Extensions: permessage-deflate; client_max_window_bits
2025.01.04 13:55:56.402 5: POST /fhem?cmd=save&XHR=1&fwcsrf=csrf_59945202350855&fw_id=1735995317.19973 HTTP/1.1
Host: ***pi1:8083
Connection: keep-alive
Content-Length: 0
Authorization: Basic cGV0ZXJzOlJvc3NseW4wMCE=
cache-control: no-cache
X-Requested-With: XMLHttpRequest
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36 Edg/131.0.0.0
Accept: text/plain, */*; q=0.01
Origin: http://***pi1:8083
Referer: http://***pi1:8083/fhem?detail=Wetterstation&fw_id=1735995317.19973
Accept-Encoding: gzip, deflate
Accept-Language: de,de-DE;q=0.9,en;q=0.8,en-GB;q=0.7,en-US;q=0.6
2025.01.04 13:55:56.403 4: WEB_192.168.***.22_58281 POST /fhem?cmd=save&XHR=1&fwcsrf=csrf_59945202350855&fw_id=1735995317.19973; BUFLEN:0
2025.01.04 13:55:56.404 5: Cmd: >save<
2025.01.04 13:55:56.405 5: Starting notify loop for global, 1 event(s), first is SAVE
2025.01.04 13:55:56.405 5: createNotifyHash
2025.01.04 13:55:56.410 4: DBLogging - check Device: global , Event: SAVE
2025.01.04 13:55:56.413 5: End notify loop for global


2025.01.04 13:56:06.392 4: Connection accepted from WEBweatherstation_192.168.***.58_53477
2025.01.04 13:56:06.578 5: GET /weatherstation/updateweatherstation.php?ID=***Wetter&PASSWORD=***S0!&action=updateraww&realtime=1&rtfreq=5&dateutc=now&baromin=29.40&tempf=32.1&dewptf=28.7&humidity=87&windspeedmph=2.2&windgustmph=2.2&winddir=188&rainin=0.0&dailyrainin=0.0&solarradiation=61.30&UV=0.0&indoortempf=66.0&indoorhumidity=37 HTTP/1.1
Host:***Pi1.fritz.box
Connection: keep-alive
2025.01.04 13:56:06.579 4: WEBweatherstation_192.168.***.58_53477 GET /weatherstation/updateweatherstation.php?ID=***Wetter&PASSWORD=***S0!&action=updateraww&realtime=1&rtfreq=5&dateutc=now&baromin=29.40&tempf=32.1&dewptf=28.7&humidity=87&windspeedmph=2.2&windgustmph=2.2&winddir=188&rainin=0.0&dailyrainin=0.0&solarradiation=61.30&UV=0.0&indoortempf=66.0&indoorhumidity=37; BUFLEN:0
2025.01.04 13:56:06.582 5: HP1000 : called function HP1000_CGI()
2025.01.04 13:56:06.588 5: HP1000: received insufficient data:
$VAR1 = {
          'indoortempf' => '66.0',
          'dailyrainin' => '0.0',
          'windgustmph' => '2.2',
          'action' => 'updateraww',
          'UV' => '0.0',
          'rainin' => '0.0',
          'winddir' => '188',
          'humidity' => '87',
          'dateutc' => 'now',
          'solarradiation' => '61.30',
          'indoorhumidity' => '37',
          'baromin' => '29.40',
          'tempf' => '32.1',
          'dewptf' => '28.7',
          'PASSWORD' => '***S0!',
          'windspeedmph' => '2.2',
          'ID' => '***Wetter',
          'realtime' => '1',
          'rtfreq' => '5'
        };

2025.01.04 13:56:06.588 4: WEBweatherstation: /weatherstation/updateweatherstation.php?ID=***Wetter&PASSWORD=***S0!&action=updateraww&realtime=1&rtfreq=5&dateutc=now&baromin=29.40&tempf=32.1&dewptf=28.7&humidity=87&windspeedmph=2.2&windgustmph=2.2&winddir=188&rainin=0.0&dailyrainin=0.0&solarradiation=61.30&UV=0.0&indoortempf=66.0&indoorhumidity=37 / RL:17 / text/plain; charset=utf-8 /  / Cache-Control: no-cache, no-store, must-revalidate

Danke und Ciao,
Peter
Titel: Aw: Wetterstation liefert keine Werte mehr nach Update
Beitrag von: ppmss am 07 Januar 2025, 17:01:56
Hallo zusammen,
nachdem ich nun die neue 50_hp1000.pm mit der gesicherten verglichen habe (nach debug - verbose 5) konnte ich das Problem Lösen/umschiffen:
in der Methode HP1000_CGI habe ich auf alte Prüfwerte zurückgestellt:

    # PeterS: sofwaretype ist keiner der webArgs       
    Log3 $name, 5,
          "HP1000: DumpwebArgs:\n" . Dumper($webArgs);
    # if (  !defined( $webArgs->{softwaretype} )
       if (  !defined( $webArgs->{dateutc} )
            || !defined( $webArgs->{action} ) )
        {
            Log3 $name, 5,
            # Log3 $name, 3,
              "HP1000: received insufficient data:\n" . Dumper($webArgs);

            return ( "text/plain; charset=utf-8", "Insufficient data: PETER" );
        }

        # if ( $webArgs->{action} ne "updateraw" ) {
        if ( $webArgs->{action} ne "updateraww" ) {
            Log3 $name, 5,
            # Log3 $name, 3,
              "HP1000: action $webArgs->{action} is not implemented:\n"
              . Dumper($webArgs);

Nach nochmaligem Löschen und neu Anlegen der Devices (defines aus fhem.cfg (gesichert)) läuft nun wieder alles wie gehabt.

ACHTUNG: nicht vergessen global-verbose wieder von 5 auf 3 zu stellen, da sonst das log zu voll wird
Vielleicht kann ja noch jemand etwas dazu sagen?

Danke und Ciao,
Peter
Titel: Aw: Wetterstation liefert keine Werte mehr nach Update
Beitrag von: ppmss am 07 Januar 2025, 17:06:43
Zitat von: rudolfkoenig am 01 Januar 2025, 18:23:38Ich gehe davon aus, dass Problem nichts mit FHEMWEB zu tun hat.
Laut MAINTAINER.txt wird 50_HP1000.pm in "Unterstützende Dienste/Wettermodule" betreut, bitte das Thema dahin verschieben (Knopf im Forum unten links).

Ansonsten wuerde ich "attr global verbose 5" setzen, die Wetterstation in FHEM erneut definieren, und in FHEM-Log schauen, was dazu gemeldet wird.

Hallo Rudolf,
danke für den DEBUG-Tipp.

Ciao,
Peter