76_SolarForecast - Informationen/Ideen zu Weiterentwicklung und Support

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

Vorheriges Thema - Nächstes Thema

DS_Starter

#3480
ZitatSchon klar. Aber es werden ja explizit Gerätetypen wie Waschmaschine, Trockner und Spülmaschine angeboten. Und die laufen (zumindest bei uns) nicht täglich.
Im default wird nur auf Grundlage der PV Prognose geplant. Da kann es zu Überschneidungen der einzelnen Consumer in der Planung kommen. Das ist aber kein Problem, denn ist zb. die Spülmaschine losgelaufen, wartet der nächste (schon eingeplante Consumer) bis Überschuß vorhanden ist. Wenn nicht wird er automatisch "replanned" sofern der Status noch "planned" ist. Da gibt es eine interne Logik.
Es gibt plantControl->consForecastInPlanning. Damit kannst du die Einplanungslogik auch beeinflussen.


ZitatBei den vielen Optionen, die SolarForecast bietet, komme ich da nie hin ;-)
Mach dir nichts draus, ich werde auch nie fertig.  ;)
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

Burny4600

#3481
Hallo Heiko,

seit dem letztem crontrib Update taucht ca. alle 5 Sek links oben Connection lost, trying a reconnect every 5 seconds.
Vorher war das Problem, dass irgendwie nur SolarForecast um ca. 15:50 nicht mehr die aktuelle Uhrzeit übernommen hatte und eine Meldung lieferte, dass DWD nicht mehr aktuell ist.

Nach einem Systemneustart ist zwar der DWD Hinweis nicht mehr vorhanden, dafür aber die ständige Connection lost Meldung.

Das ist aber nur der Fall, wenn ich die Forcast Seite aufrufe.

Zudem finde ich im LOG diese Einträge:
tmr-FHEM::SolarForecast::singleUpdateState(N/A)
tmr-FHEM::SolarForecast::releaseCentralTask(AB_WS_SS)
tmr-FHEM::SolarForecast::createAssociatedWith(AB_WS_SS)
tmr-FHEM::SolarForecast::centralTask(N/A)

Auch das Reading state aktualisiert sich alle 7 Sek.
Zudem hat sich seit dem Neustart die Systemlast um einiges erhöht.

Durch was kommt das.
LG Chris

Raspberry Pi 2-5, Bullseye Lite, Bookworm Lite
Schnittstellen: 1-Wire, FHEM2FEHEM, HM-MOD-UART, LAN, Modbus, MQTT, nanoCUL, RFXtrx433E, SIGNALduino, ser2net
Devices: APC, Eastron, FS20, IT, Homematic, MQTT, PV-(DEYE, EPEVER, FRONIUS), Resol-VBUS, S.USV, TEK603, WMR200, YouLess

DS_Starter

#3482
Die Meldung kommt wenn FHEMWEB longpoll die Verbindung verliert. Ab und zu kommt das bei mir auch, aber soll natürlich kein Dauerzustand sein. Das Modul hat sehr viele Readings. Wenn diese bei jeden Update einen Event werfen und es dazu vllt. noch sehr häufig mit kurzen Zyklen passiert, kann es eine Ursache sein. -> event-on-change-reading=.* nutzen

Ich frage bei solchen Dingen gerne mal die KI und es kommen durchaus erstaunlich gute Antworten:

Ursachen & Lösungen

Diese Meldung ist ein typisches Zeichen dafür, dass die Longpoll-Verbindung zwischen Browser und FHEM-Server unterbrochen wurde. Das passiert nicht selten – aber es gibt ein paar typische Gründe und einfache Gegenmaßnahmen:

🔍 Häufige Ursachen
Instabile Netzwerkverbindung ➝ WLAN-Schwankungen, PowerLAN-Brücken oder Proxy-Server können die Verbindung stören.

Browser-Timeouts oder Tabs im Hintergrund ➝ Manche Browser (v. a. mobil) kappen Longpolls, wenn der Tab nicht aktiv ist.

FHEM läuft hinter einem Apache-Proxy ➝ Wenn du FHEM über Apache weiterleitest, kann die Proxy-Konfiguration Longpolls abbrechen.

Longpoll-Modus nicht optimal eingestellt ➝ FHEM kann longpoll über websocket oder polling betreiben – je nach Setup funktioniert das eine besser als das andere.


Lösungen & Tipps

Maßnahme    Beschreibung
attr WEB longpoll websocket    Aktiviert WebSocket-Modus – oft stabiler als klassisches Longpoll
attr WEB longpoll 1            Falls WebSocket nicht funktioniert, klassisches Longpoll aktivieren

Apache-Proxy prüfen            Stelle sicher, dass ProxyPass und ProxyPassReverse korrekt gesetzt sind
Netzwerk stabilisieren            WLAN-Verstärker, direkte LAN-Verbindung oder Router-Check
Browser wechseln/testen            Chrome, Firefox, Edge – manche sind robuster bei Longpolls

Ich benutze FHEMWEB F18 sowohl mit longpoll=websocket als auch longpoll=1. Beide Varianten zumindest nach meiner Beobachtung gleich stabil-> ausprobieren.

Achso:
Zitattmr-FHEM::SolarForecast::singleUpdateState(N/A)
tmr-FHEM::SolarForecast::releaseCentralTask(AB_WS_SS)
tmr-FHEM::SolarForecast::createAssociatedWith(AB_WS_SS)
tmr-FHEM::SolarForecast::centralTask(N/A)
Diese Meldungen sind nicht von mir. Hast du Apptime oder eine anderes Performance-Tool ständig im Hintergrund mitlaufen? -> nicht machen und abschalten. Das bringt oftmals mehr Ärger als Nutzen. Diese Tools nur einsetzen um einen konkreten Verdacht zu untersuchen und nach beendeter Untersuchung wieder abschalten aber nicht ständig mitlaufen lassen.
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

DS_Starter

@Chris,
wenn alle 7 Sek. dein state updated, hast du entweder cycleInterval so kurz eingestellt oder eines/mehrere Geräte (Consumer, Battery, Meter, Inverter) auf asynchron stehen. In diesem Fall reagiert SF auf Events dieser Geräte und startet einen neuen Zyklus.

LG,
Heiko
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

Max_Meyer

Zitat von: tomcat.x am 07 Juli 2025, 17:41:57Ok, mit Kenntnis der Logik kann man den Zeitpunkt der Nullung ja manuell vorziehen, damit keine Meldung kommt.
@tomcat.x
Wenn es nur darum geht die lästige Meldung zu eliminieren hilft vielleicht auch ein DoIf oder ein Notify?

Zitat von: Damian am 01 April 2019, 23:58:37define mydoif DOIF ([logTrigger:state]) (set ....)

hatte ich mal überlegt - hab aber derzeit keine Meldungen und so nix fertiges
Gruß Gerd

DS_Starter

@Peter,

bzgl. deines Post in #3401 tendiere ich dazu die zusätzlichen Differenzanzeige generell ohne Nachkommastellen darzustellen wenn die Anzeige in Wh erfolgt (der default).
Bei der Anzeige in kWh würde ich bei einer Nachkommastelle bleiben. Damit sollte die Darstellung insgesamt harmonischer sein wenn Differenzen angezeigt werden. 
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

DS_Starter

@Peter, @all,

ich habe die Balkenbreitenthematik jetzt so gelöst, dass die zusätzliche Differenzanzeige von PVForecast und PVreal ohne Nachkommastellen erfolgt sofern Wh angezeigt werden. Andere Werte (z.B. Batterie SoC) betrifft das nicht. Erfolgt die Anzeige von PVForecast und PVreal in kWh, bleibt die Anzeige bei einer Nachkommstelle.

Damit sollte es in den meisten Fällen passen. Wem die Ästhetik immernoch nicht reicht, kann die Balkenbreite mit graphicControl->beamWidth=X auf einen festen Wert setzen um alle Balken mit einer einheitlichen Breite darzustellen. Das habe ich auf einem der Screenshots eingestellt.

LG,
Heiko
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

DS_Starter

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

DS_Starter

Moin,

jetzt weiß ich auch wie die typografischen Anführungszeichen ins Modul gekommen sind denn bewußt verwende ich sie nicht.
Für eine zügige Übersetzung verwende ich die Online Verson von DeepL. Enthält der zu übersetzende Text '...', liefert DeepL den englischen Text mit typografischen Anführungszeichen zurück. Böse Falle.

Nur als Hinweis falls ihr DeepL in eigenen Projekten verwendet.

LG,
Heiko
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

peterboeckmann

Moin Heiko.

Zitat von: DS_Starter am 07 Juli 2025, 21:07:10@Peter, @all,

ich habe die Balkenbreitenthematik jetzt so gelöst, dass die zusätzliche Differenzanzeige von PVForecast und PVreal ohne Nachkommastellen erfolgt sofern Wh angezeigt werden. Andere Werte (z.B. Batterie SoC) betrifft das nicht. Erfolgt die Anzeige von PVForecast und PVreal in kWh, bleibt die Anzeige bei einer Nachkommstelle.

Damit sollte es in den meisten Fällen passen. Wem die Ästhetik immernoch nicht reicht, kann die Balkenbreite mit graphicControl->beamWidth=X auf einen festen Wert setzen um alle Balken mit einer einheitlichen Breite darzustellen. Das habe ich auf einem der Screenshots eingestellt.

LG,
Heiko

Das gefällt mir so sehr gut.
Würdest du in Betracht ziehen, das gleiche such für die consumptionreal und consumptionforecast zu übernehmen?

Vielen Dank und viele Grüße,
Peter

DS_Starter

ZitatWürdest du in Betracht ziehen, das gleiche such für die consumptionreal und consumptionforecast zu übernehmen?
Mache ich gerne.

LG,
Heiko
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

ahlermi

Zitat von: DS_Starter am 30 Juni 2025, 23:54:24
ZitatIrgendwas ist generell kaputt gegangen mit dem Update auf v1.53.0
Kaputt ist sicherlich nichts. Welche Version hattest du vorher? Hast du die Updates der Weiterentwicklungen immer mitgemacht?

Ja, die Updates bin ich immer mitgegangen.

Danke, war ein unabhängiges Problem mit dem EVENT aus der Aufteilung von Positiven und Negativen Werten vom Smart Shunt.
PI4 FHEM, PI3 FHEM, 6 x Echo mit talk2fhem, Siri, SNIPS auf PI3 mit Samson UB1, YeeLight, Homematic, MAX!, 433Mhz, LaCross, Xiaomi Vacuum V1, ESPEasy, Gardena, Telegram, FLOORPLAN, HEOS, Xiaomi Aqara, Sonoff, SolvisMax, SolvisClient, HUE, ESPEasy für Bayernlüfter, Harmony, Tasmota, JKBMS, EASUN

DS_Starter

ZitatWürdest du in Betracht ziehen, das gleiche such für die consumptionreal und consumptionforecast zu übernehmen?
Habe es umgesetzt (Screenshot). Update liegt im contrib.
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

peterboeckmann

Zitat von: DS_Starter am 08 Juli 2025, 09:18:01Habe es umgesetzt (Screenshot). Update liegt im contrib.

Vielen Dank. Gezogen und positiv getestet.

Viele Grüße,
Peter

Burny4600

@Heiko
ZitatHast du Apptime oder eine anderes Performance-Tool ständig im Hintergrund mitlaufen?
Weder Apptime noch andere Performance-Tools laufen bei mir.

Zitatwenn alle 7 Sek. dein state updated, hast du entweder cycleInterval....
event-on-change-reading=.*      wird standartmässig fast überall verwendet
cycleInterval=70                ist seit Anfang so defeniert

Netzwerkverbindungen            alle Pis nutzen 1GB-LAN-Verbindung
Pis nutzen keine Proxyverbindung

attr WEB longpoll websocket     nun definiert
Es dürfte an longpoll gelegen sein. Nun taucht Connection lost, trying a reconnect every 5 seconds. nicht mehr ständig auf, und auch unter SYSMON ist die Systemlast wieder geringer.


FHEMWEB Einstellungen
attr WEB JavaScripts codemirror/fhem_codemirror.js pgm2/clock.js pgm2/HMdeviceTools.js pgm2/HMinfoTools.js pgm2/hm.js
attr WEB stylesheetPrefix dark

SolarForcast Einstellungen
                         plantControl                 cycleInterval=70
Verbraucher:             consumer 01 bis 13           asynchron=1
Hochspannungsbatterien:  setupBatteryDev 01 u. 02     asynchron=1
Hybridinvertern:         setupInverterDev 01 u. 02    asynchron=1
Smartmeter:              setupMeterDev                asynchron=1

Gibt es noch etwas worauf ich achten muss?
LG Chris

Raspberry Pi 2-5, Bullseye Lite, Bookworm Lite
Schnittstellen: 1-Wire, FHEM2FEHEM, HM-MOD-UART, LAN, Modbus, MQTT, nanoCUL, RFXtrx433E, SIGNALduino, ser2net
Devices: APC, Eastron, FS20, IT, Homematic, MQTT, PV-(DEYE, EPEVER, FRONIUS), Resol-VBUS, S.USV, TEK603, WMR200, YouLess