Neueste Beiträge

#1
Solaranlagen / Aw: 76_SolarForecast - Informa...
Letzter Beitrag von dieter114 - 20 Mai 2026, 15:22:12
Zitat von: DS_Starter am 20 Mai 2026, 10:54:42Warum hast du alles gelöscht?
Ich meine das ist ja nicht schlimm, man muß jetzt nur etwas warten.  ;)
weil alle Daten total fehlerbehaftet und damit unsinnig waren aber
äh . soll ich jetzt 84 Tage warten eh ein neuer Durchlauf starten kann? :o
Nicht dein Ernst - oder....
Das würde ja bedeuten das Jeder der das Modul erstmalig neu in sein System integriert 84 Tage auf einen Teil der Funktion warten muss.

Grüße WDS
#2
Solaranlagen / Aw: 76_SolarForecast - Informa...
Letzter Beitrag von 300P - 20 Mai 2026, 15:11:48
Hallo Heiko,

hab erneut mit der gleiche Konfiguration einmal shutdown / restart von FHEM durchgeführt.

Fehlermeldung vorhanden ☹️


2026.05.20 14:35:01 1: MB_CFG_SBS25: loading config from cfg file
2026.05.20 14:35:05 1: Zisterne: loading config from cfg file
2026.05.20 14:35:23 1: Including ./log/fhem.save
2026.05.20 14:35:26 1: PERL WARNING: Argument "initialized" isn't numeric in numeric gt (>) at (eval 2249) line 1.
2026.05.20 14:35:26 0: Featurelevel: 6.4
2026.05.20 14:35:26 0: Server started with 443 defined entities (fhem.pl:30992/2026-03-21 perl:5.036000 os:linux user:fhem pid:2041621)
2026.05.20 14:47:37 2: AttrTemplates: got 272 entries
2026.05.20 14:47:37 1: PERL WARNING: Use of uninitialized value $cakeyval in concatenation (.) or string at ./FHEM/76_SolarForecast.pm line 21034.
2026.05.20 14:47:4


Dann einmal ohne den Eintrag für das Drift-Reading

->>> kein Hinweis zu SF $cakeyval vorhanden
->>> Nur Speedwiremeldungen

05.20 14:59:38 0: Server started with 443 defined entities (fhem.pl:30992/2026-03-21 perl:5.036000 os:linux user:fhem pid:2044771)
2026.05.20 15:00:15 1: Forecast DEBUG> start add AI raw data for hour: 15
2026.05.20 15:00:15 1: Forecast DEBUG> AI raw add - 1 entities added to raw data pool (set verbose 4 for output more detail)
2026.05.20 15:00:15 1: Forecast DEBUG> AI raw data saved into file: ./FHEM/FhemUtils/AIraw_SolarForecast_Forecast
2026.05.20 15:00:16 1: Forecast DEBUG> DRIFT SAFETY [con]: block=none
  -- RMSE Analysis --
     rmse_rel_ratio=2.767 | dynamic_limit=4.603 | margin=1.836 ok
     Limit Composition: base=4.0 | peak_part=0.049 (peak_ratio=0.049) | sem_part=0.323 (sem_ratio=0.756) | var_part=0.231 (slope_var=0.46148)
  -- Slope Analysis --
     slope_live=0.619 | slope_drift=0.809 | slope_rel_drift=0.191 | slope_var=0.46148
     slope_var_limit=14.40208 | var_ratio=0.03 ok
  -- Bias Analysis --
     bias_live=783.0 | bias_limit=1015.2 | bias_ratio=0.77 ok
     quant30=846.0 | quant90=2215.0 | median_load=848.0
  -- Context --
     drift_score=1.390 | bias_drift_norm=1.125 | bias_var_norm=0.340
     peak_ratio=0.049 | sem_ratio=0.756
2026.05.20 15:00:16 1: Forecast DEBUG> DRIFT [con]: Flag=mild | WindowSize=96 | Block=0 | SlopeLive=0.619 | DriftSlope=0.809 | BiasLive=782.99 | DriftBias=407.76 | RMSErelLive=83.0 | RMSErelRatio=2.77 | BiasVarNorm=0.34 | DriftIndex=1.54 | DriftScore=1.39 | Zone3Hours=4 | Zone3Reset=0 | Hist=[mild,mild,mild,mild,mild,low,low,low,low,low,mild,low,low,low,low,mild,mild,mild] | Retrain=none (-)
2026.05.20 15:00:16 1: Forecast DEBUG> AI FANN drift data type 'con' successfully written to file: ./FHEM/FhemUtils/NeuralNet_SolarForecast_Forecast
2026.05.20 15:00:18 1: SMAInverter SBS25_2 -> BlockingCall SMAInverter_getstatusDoParse Timeout: process terminated
2026.05.20 15:00:18 1: SMAInverter SB30 -> BlockingCall SMAInverter_getstatusDoParse Timeout: process terminated
2026.05.20 15:00:18 1: SMAInverter SB40 -> BlockingCall SMAInverter_getstatusDoParse Timeout: process terminated
2026.05.20 15:00:19 1: SMAEM SMA_Energymeter -> BlockingCall SMAEM_DoParse Timeout: process terminated
2026.05.20 15:00:19 1: PERL WARNING: Argument "Timeout: process terminated" isn't numeric in numeric gt (>) at (eval 5974) line 1.


Meine Vermutung ist das zu dem Zeitpunkt (vor dem Ende des ersten SF-Zyklus/Durchlauf) der Wert dann noch nicht definiert ist und daher der Pearl-Hinweis kommt 🤔

#3
Solaranlagen / Aw: 76_SolarForecast - Informa...
Letzter Beitrag von peterboeckmann - 20 Mai 2026, 13:41:25
Zitat von: DS_Starter am 20 Mai 2026, 13:30:11Wenn du möchtest das der Start des Consumers täglich zwischen 09:30 und 11:00 eingeplant wird, dann setze beide Parameter, z.B. notbefore=09:30 und notafter=11. 

Ich habe notafter=19:00 wieder mit reingenommen.

Danke nochmal!

Viele Grüße,
Peter
#4
MQTT / Aw: Blink-Kameras MQTT-Bridge
Letzter Beitrag von rabehd - 20 Mai 2026, 13:31:28
Zitat von: JWRu am 20 Mai 2026, 11:05:48Ich habe jetzt das selbe Setup wie @JoWiemann nach diesem Vorbild: https://forum.fhem.de/index.php?topic=143935.0 - hat auf Anhieb funktioniert.
Ich kann jetzt die einzelnen Kameras armen/disarmen, nur mit dem System funktioniert es nicht.

Hat das auch jemand als Docker-Container?
#5
Solaranlagen / Aw: 76_SolarForecast - Informa...
Letzter Beitrag von DS_Starter - 20 Mai 2026, 13:30:11
ZitatNoch eine Rückfrage: notafter kann dann raus, notbefore bleibt aber drin?
Das kommt darauf an, ob du akzeptieren möchtest, dass dein Consumer z.B. auch erst ab 14:00 eingeplant und somit gestartet werden kann.
Hier geht es immer um die Einplanung, notbefore sagt "plane den Consumer nicht vor X ein" und notafter sagt "plane den Consumer aber nicht nach Y ein".
Mit anderen Worten ... ich will nicht dass der Consumer vor X startet, aber ich will auch nicht dass der Zyklus des Consumers (und damit der erste Start) nach Y losgeht.

Wenn du möchtest das der Start des Consumers täglich zwischen 09:30 und 11:00 eingeplant wird, dann setze beide Parameter, z.B. notbefore=09:30 und notafter=11. 
#6
Solaranlagen / Aw: 76_SolarForecast - Informa...
Letzter Beitrag von peterboeckmann - 20 Mai 2026, 13:21:32
Hallo Heiko,

dankeschön dafür!

Noch eine Rückfrage: notafter kann dann raus, notbefore bleibt aber drin?

HM_56E0D2_Sw_02
type=other
power=40
on=on
off=off
auto=Automatik
icon=debian
mode=can
mintime=SunPath:60:-60
interruptable=1
notbefore=09:30
locktime=300:300
swoffcond=SolarForecast:userFn_Stop19:1

Oder soll notafter wie vorher auf 19:00 stehen?

Viele Grüße,
Peter
#7
Solaranlagen / Aw: 76_SolarForecast - Informa...
Letzter Beitrag von DS_Starter - 20 Mai 2026, 13:16:01
@Peter, ich hatte doch schon etwas Zeit. Hier wäre ein Ansatz.

Wir brauchen zuerst ein Steuerreading für den Abbruch des Consumers.
Diesen kleinen Code fügst du in Attr ctrlUserExitFn ein:

{
  my $dt   = timestringsFromOffset ($name, time, 0);
  my $hour = int $dt->{hour};
  my $val  = 0;
 
  if ($hour >= 19) { $val = 1;}
 
  storeReading ('userFn_Stop19', $val);
}


In deinem SF-Device wird damit ein Reading userFn_Stop19 angelegt mit dem Inhalt "0" vor 19:00 und mit "1" ab 19:00 bis 24:00.
timestringsFromOffset ist eine Funktion in SF, die hier die aktuelle Stunde (nicht Stunde des Tages) zurückgibt, also 16 wenn es gerade 16:25 ist.

Jetzt setzt du in dem Consumer zusätzlich diesen Schlüssel:

 swoffcond=SF-Device:userFn_Stop19:1
 
SF-Device ist der Name deines SF-Devices.
Sobald das geprüfte Reading userFn_Stop19 den Wert "1" enthält, stoppt der Zyklus des Consumers unabhängig wie lange er ohne diese Stopp-Condition noch hätte laufen sollen.
Das kann man auch noch mit Minuten verfeinern, nur erstmal das Prinzip.
Damit hast du immer ein festes Ende.
#8
Anfängerfragen / Aw: Die Leistun eines Hoymiles...
Letzter Beitrag von DasQ - 20 Mai 2026, 13:11:51
Dafür gibt doch was fix und fertiges

Zeroexportscript
https://github.com/reserve85/HoymilesZeroExport
#9
Bastelecke / Aw: ESP RGBWW Controller - Fir...
Letzter Beitrag von pjakobs - 20 Mai 2026, 12:44:25
Zitat von: pc1246 am 19 Mai 2026, 20:59:50@vbs
Danke, das hat in Theorie funktioniert.
Die Linux Version aus Linux heraus natuerlich auch.
Leider mag der Controller nicht updaten. Dann hole ich den mal aus der Ecke raus, wenn ich Lust habe.
Danke und Gruss
Christoph

bekommst Du eine Fehlermeldung?
Ich habe glaube ich ein oder zwei mal Controller gesehen, die partout kein OTA Update machen konnten, so ganz habe ich das nicht analysieren können, und weil die neue Version ja auch einen überarbeiteten OTA Prozess hat, habe ich mich da nicht so reingefummelt.

Kannst Du sehen, ob der Fehler beim Download passiert oder ob der Controller versucht, die neue Version zu starten, das aber nicht funktioniert?

pj
#10
Solaranlagen / Aw: 76_SolarForecast - Informa...
Letzter Beitrag von DS_Starter - 20 Mai 2026, 12:13:56
Das erfüllt deine Bedingung nicht unbedingt.
notbefore=09:30 bedeutet auch eine mögliche Einplanung erst ab 11:00 je nach Lage.

Wenn 19:00 ein fester Anschlag ist, dann stelle ihn ein wie vorhin gezeigt und setze noch den Schüssel swoffcond. Ist die Bedingung erfüllt, stoppt der Consumer vorfristig.
Ich kann dir noch einen Vorschlag machen wie er definiert werden könnte, aber erst heute Abend.

LG