76_SolarForecast - Informationen/Ideen zu Weiterentwicklung und Support

Begonnen von DS_Starter, 11 Februar 2024, 14:11:00

Vorheriges Thema - Nächstes Thema

300P

Guten Morgen Heiko,

Kleinigkeit im Log gesehen nach dem Update:
2026.08.14 23:15:54 1: PERL WARNING: Use of uninitialized value in concatenation (.) or string at ./FHEM/76_SolarForecast.pm line 26666.

...und irgendwie das Gefühl das SF etwas "ruckelnd und zögerlich läuft" (SMA-WR melden in der Nach ein paar mal "blockiert"

Beispiele:
2026.08.15 00:37:57 1: SMAInverter SBS25_2 -> BlockingCall SMAInverter_getstatusDoParse Timeout: process terminated
2026.08.15 01:54:03 1: SMAInverter SBS25_2 -> BlockingCall SMAInverter_getstatusDoParse Timeout: process terminated
2026.08.15 02:52:10 1: SMAInverter SB25 -> BlockingCall SMAInverter_getstatusDoParse Timeout: process terminated
2026.08.15 04:59:21 1: SMAInverter SBS25_2 -> BlockingCall SMAInverter_getstatusDoParse Timeout: process terminated
2026.08.15 06:40:30 1: SMAInverter SB25 -> BlockingCall SMAInverter_getstatusDoParse Timeout: process terminated

PS:bin extern unterwegs - nicht @home

Gruß
300P

FHEM 6.4|RPi|SMAEM|SMAInverter|SolarForecast| DbLog|DbRep|MariaDB|Buderus-MQTT_EMS|
Fritzbox|fhempy|JsonMod|HTTPMOD|Modbus ser+TCP| ESP32_AI_on_the_Edge|ESP32CAM usw.

grappa24

Mein Config check empfiehlt
"get solErtrag ftuiFramefiles".
Dabei kommt dann
Check of SVN version not possible: https://svn.fhem.de/trac/browser/trunk/fhem/contrib/SolarForecast/controls_solarforecast.txt?format=txt: Select timeout/error: .<br>Try to execute the configCheck later again.
Gebäudesicherheit/-komfort, PV-Prognose/Verbrauchssteuerung, Heizungssteuerung, Multimedia, ...
KNX, FS20, HM, HUE, Tradfri, Shellies, KLF200, Netatmo, Nuki, SolarForecast, HEOS, Alexa-FHEM, ...
FHEM 6.4, 2 x RasPi 3B+, Debian Bullseye

DS_Starter

Moin,

@300P,

die BlockingCall-Meldungen von SMAInverter haben nichts mit SF zu tun und bedeuten, dass die Kommunikation zwischen SMAInverter und deinem WR gestört ist/war.
Konkret kann es bedeuten:

- FHEM / SMAInverter hat einen Befehl/Abfrage gesendet, aber der WR hat nicht / zu spät geantwortet ... oder
- FHEM hat Befehl gesendet, aber Netzwerprobleme ... oder
- FHEM hat Befehl gesendet, aber der Nebenprozeß (Blockingcall) ist abgebrochen -> z.B. Hostproblem / Speicherengpass ... oder
- FHEM hat Befehl gesendet ist danach aber blockierend stehengeblieben. Das kann verschiedene Ursachen haben ... eine blockierendes Modul, Internet Nichtverfügbarkeit die ein Modul nicht toleriert, Hostprobleme usw. ... oder
- ein Schreibprozess einer Datei ins Filesystem hatte Probleme ...

Der vorletzte Anstrich passt zu deiner Beobachtung "ruckelndes" Verhalten und der letzte Antrich kann mit SF zu tun haben weil in Abständen der Memory in Files weggeschrieben wird.

Die Warnung kommt von der Logausgabe bei Abbruch des Messagetransfers mit GitHub. Allerdings war wohl eher der BockingCall gestorben ... passt zu den Inverterproblem.

@grappa24,

der Trac-Server hat nicht rechtzeitig geantwortet, ein trivialer Timeout. Einfach nochmal auführen.
Ich habe auch festgestellt, dass der FHEM trac Server mit http1.1 ein Problem hat.
Du kannst es auf OS-Ebene testen:

time curl -4 -v --max-time 30 https://svn.fhem.de/trac/export/HEAD/trunk/fhem/contrib/SolarForecast/controls_solarforecast.txt

Am Ende der Ausgabe kommt eine Zeitzusammenfassung. 30s oder in der Nähe sind einfach zu lang.
Probiere es mehrfach. Nach meinen Beobachtungen antwortet der FHEM Server nicht stabil.





Proxmox+Debian+MariaDB, PV: SMA, Victron MPII+Pylontech+CerboGX
Maintainer: SSCam, SSChatBot, SSCal, SSFile, DbLog/DbRep, Log2Syslog, SolarForecast,Watches, Dashboard, PylonLowVoltage
Kaffeekasse: https://www.paypal.me/HMaaz
Contrib: https://svn.fhem.de/trac/browser/trunk/fhem/contrib/DS_Starter

300P

Mahlzeit Heiko !

hab dann doch einen Fehler im FHEM-Monitoring vorhin entdeckt.
->>  der FHEM-MQTT2_Brocker bzw. die Wärempumpeschnittstelle hing offline ab gestern so um 23:00 Uhr - lies sich heute nachmittag auch nicht mehr so eben "zum Leben erwecken".....

Dann jetzt dem FHEM-RPI einen Reboot gegönnt und vorher alle Systemupdates geladen.
Vorher auch alles (außer natürlich SF :) ) für / bei FHEM an Updates eingespielt....

Mal sehen was der Tag jetzt bringt. ;)


Dieser Fehler von Gestern kam bislang (20 Minuten nach dem Start) auch nicht wieder - vielleicht war es allein der MQTT-Brocker ? :-[
2026.08.14 23:15:54 1: PERL WARNING: Use of uninitialized value in concatenation (.) or string at ./FHEM/76_SolarForecast.pm line 26666.

Aktuell "läuft alles ohne mit der Wimper zu klimpern".... O:-)
Gruß
300P

FHEM 6.4|RPi|SMAEM|SMAInverter|SolarForecast| DbLog|DbRep|MariaDB|Buderus-MQTT_EMS|
Fritzbox|fhempy|JsonMod|HTTPMOD|Modbus ser+TCP| ESP32_AI_on_the_Edge|ESP32CAM usw.

DS_Starter

Denke auch, dass da was generelles vorgefallen war.
Schau mal diese Warnung kam in diesem Code bei der Logausgabe:

sub _abortGetMessageFile {
  my $hash   = shift;
  my $cause  = shift // "Timeout: process terminated";
  my $name   = $hash->{NAME};

  Log3 ($name, 1, "$name -> BlockingCall $hash->{HELPER}{GMFRUNNING}{fn} pid:$hash->{HELPER}{AIBLOCKRUNNING}{pid} aborted: $cause");

  delete $hash->{HELPER}{GMFRUNNING};

return;
}
$cause hat immer einen Ersatzwert. Dann bleibt nur $hash selbst, sodass $name oder die HELPER-Inhalte nicht verfügbar waren. Das sieht mir nach einen Problem des BlockingCall (evtl. Absturz) wie bei SMAInverter aus.
Proxmox+Debian+MariaDB, PV: SMA, Victron MPII+Pylontech+CerboGX
Maintainer: SSCam, SSChatBot, SSCal, SSFile, DbLog/DbRep, Log2Syslog, SolarForecast,Watches, Dashboard, PylonLowVoltage
Kaffeekasse: https://www.paypal.me/HMaaz
Contrib: https://svn.fhem.de/trac/browser/trunk/fhem/contrib/DS_Starter