NEWS
E3DC Hauskraftwerk steuern
-
Hallo @arnod ,
ich habe seit einigen Tagen einen Fehler bei der Solcast abfrage. Es sieht so aus, als ob das Script 6 mal hintereinander abfragt, bis dann der Fehler 429 (zu viele Versuche) kommt.
Log siehe unten:2026-02-18 04:05:01.689 - info: javascript.0 (591) script.js.Charge_Control_1_6_8: ##{"from":"Charge-Control", "message":" Rueckmeldung response.status Solcast= 200"}## 2026-02-18 04:05:02.750 - info: javascript.0 (591) script.js.Charge_Control_1_6_8: ##{"from":"Charge-Control", "message":" Rueckmeldung response.status Solcast= 200"}## 2026-02-18 04:05:02.750 - info: javascript.0 (591) script.js.Charge_Control_1_6_8: ##{"from":"Charge-Control", "message":" Summe PV Leistung Tag 2026-02-18 pv_estimate= 23.68 pv_estimate90= 33.2"}## 2026-02-18 04:05:02.758 - info: javascript.0 (591) script.js.Charge_Control_1_6_8: ##{"from":"Charge-Control", "message":" Summe PV Leistung Tag 2026-02-19 pv_estimate= 13.91 pv_estimate90= 20.11"}## 2026-02-18 04:05:02.765 - info: javascript.0 (591) script.js.Charge_Control_1_6_8: ##{"from":"Charge-Control", "message":" Summe PV Leistung Tag 2026-02-20 pv_estimate= 20.32 pv_estimate90= 39.33"}## 2026-02-18 04:05:02.771 - info: javascript.0 (591) script.js.Charge_Control_1_6_8: ##{"from":"Charge-Control", "message":" Summe PV Leistung Tag 2026-02-21 pv_estimate= 18.01 pv_estimate90= 27.21"}## 2026-02-18 04:05:02.776 - info: javascript.0 (591) script.js.Charge_Control_1_6_8: ##{"from":"Charge-Control", "message":" Summe PV Leistung Tag 2026-02-22 pv_estimate= 19.2 pv_estimate90= 23.86"}## 2026-02-18 04:05:02.779 - info: javascript.0 (591) script.js.Charge_Control_1_6_8: ##{"from":"Charge-Control", "message":" Summe PV Leistung Tag 2026-02-23 pv_estimate= 21.46 pv_estimate90= 36.15"}## 2026-02-18 04:05:02.781 - info: javascript.0 (591) script.js.Charge_Control_1_6_8: ##{"from":"Charge-Control", "message":" Summe PV Leistung Tag 2026-02-24 pv_estimate= 33.19 pv_estimate90= 47.29"}## 2026-02-18 04:06:00.930 - info: javascript.0 (591) script.js.Charge_Control_1_6_8: ##{"from":"Charge-Control", "message":" Rueckmeldung response.status Solcast= 200"}## 2026-02-18 04:06:01.677 - info: javascript.0 (591) script.js.Charge_Control_1_6_8: ##{"from":"Charge-Control", "message":" Rueckmeldung response.status Solcast= 200"}## 2026-02-18 04:06:01.677 - info: javascript.0 (591) script.js.Charge_Control_1_6_8: ##{"from":"Charge-Control", "message":" Summe PV Leistung Tag 2026-02-18 pv_estimate= 23.68 pv_estimate90= 33.2"}## 2026-02-18 04:06:01.684 - info: javascript.0 (591) script.js.Charge_Control_1_6_8: ##{"from":"Charge-Control", "message":" Summe PV Leistung Tag 2026-02-19 pv_estimate= 13.91 pv_estimate90= 20.11"}## 2026-02-18 04:06:01.687 - info: javascript.0 (591) script.js.Charge_Control_1_6_8: ##{"from":"Charge-Control", "message":" Summe PV Leistung Tag 2026-02-20 pv_estimate= 20.32 pv_estimate90= 39.33"}## 2026-02-18 04:06:01.689 - info: javascript.0 (591) script.js.Charge_Control_1_6_8: ##{"from":"Charge-Control", "message":" Summe PV Leistung Tag 2026-02-21 pv_estimate= 18.01 pv_estimate90= 27.21"}## 2026-02-18 04:06:01.692 - info: javascript.0 (591) script.js.Charge_Control_1_6_8: ##{"from":"Charge-Control", "message":" Summe PV Leistung Tag 2026-02-22 pv_estimate= 19.2 pv_estimate90= 23.86"}## 2026-02-18 04:06:01.694 - info: javascript.0 (591) script.js.Charge_Control_1_6_8: ##{"from":"Charge-Control", "message":" Summe PV Leistung Tag 2026-02-23 pv_estimate= 21.46 pv_estimate90= 36.15"}## 2026-02-18 04:06:01.696 - info: javascript.0 (591) script.js.Charge_Control_1_6_8: ##{"from":"Charge-Control", "message":" Summe PV Leistung Tag 2026-02-24 pv_estimate= 33.19 pv_estimate90= 47.29"}## 2026-02-18 04:07:00.910 - info: javascript.0 (591) script.js.Charge_Control_1_6_8: ##{"from":"Charge-Control", "message":" Rueckmeldung response.status Solcast= 200"}## 2026-02-18 04:07:01.697 - info: javascript.0 (591) script.js.Charge_Control_1_6_8: ##{"from":"Charge-Control", "message":" Rueckmeldung response.status Solcast= 200"}## 2026-02-18 04:07:01.697 - info: javascript.0 (591) script.js.Charge_Control_1_6_8: ##{"from":"Charge-Control", "message":" Summe PV Leistung Tag 2026-02-18 pv_estimate= 23.68 pv_estimate90= 33.2"}## 2026-02-18 04:07:01.700 - info: javascript.0 (591) script.js.Charge_Control_1_6_8: ##{"from":"Charge-Control", "message":" Summe PV Leistung Tag 2026-02-19 pv_estimate= 13.91 pv_estimate90= 20.11"}## 2026-02-18 04:07:01.702 - info: javascript.0 (591) script.js.Charge_Control_1_6_8: ##{"from":"Charge-Control", "message":" Summe PV Leistung Tag 2026-02-20 pv_estimate= 20.32 pv_estimate90= 39.33"}## 2026-02-18 04:07:01.704 - info: javascript.0 (591) script.js.Charge_Control_1_6_8: ##{"from":"Charge-Control", "message":" Summe PV Leistung Tag 2026-02-21 pv_estimate= 18.01 pv_estimate90= 27.21"}## 2026-02-18 04:07:01.707 - info: javascript.0 (591) script.js.Charge_Control_1_6_8: ##{"from":"Charge-Control", "message":" Summe PV Leistung Tag 2026-02-22 pv_estimate= 19.2 pv_estimate90= 23.86"}## 2026-02-18 04:07:01.709 - info: javascript.0 (591) script.js.Charge_Control_1_6_8: ##{"from":"Charge-Control", "message":" Summe PV Leistung Tag 2026-02-23 pv_estimate= 21.46 pv_estimate90= 36.15"}## 2026-02-18 04:07:01.711 - info: javascript.0 (591) script.js.Charge_Control_1_6_8: ##{"from":"Charge-Control", "message":" Summe PV Leistung Tag 2026-02-24 pv_estimate= 33.19 pv_estimate90= 47.29"}## 2026-02-18 04:10:00.927 - info: javascript.0 (591) script.js.Charge_Control_1_6_8: ##{"from":"Charge-Control", "message":" Rueckmeldung response.status Solcast= 200"}## 2026-02-18 04:10:02.316 - info: javascript.0 (591) script.js.Charge_Control_1_6_8: ##{"from":"Charge-Control", "message":" Rueckmeldung response.status Solcast= 200"}## 2026-02-18 04:10:02.317 - info: javascript.0 (591) script.js.Charge_Control_1_6_8: ##{"from":"Charge-Control", "message":" Summe PV Leistung Tag 2026-02-18 pv_estimate= 23.68 pv_estimate90= 33.2"}## 2026-02-18 04:10:02.325 - info: javascript.0 (591) script.js.Charge_Control_1_6_8: ##{"from":"Charge-Control", "message":" Summe PV Leistung Tag 2026-02-19 pv_estimate= 13.91 pv_estimate90= 20.11"}## 2026-02-18 04:10:02.330 - info: javascript.0 (591) script.js.Charge_Control_1_6_8: ##{"from":"Charge-Control", "message":" Summe PV Leistung Tag 2026-02-20 pv_estimate= 20.32 pv_estimate90= 39.33"}## 2026-02-18 04:10:02.333 - info: javascript.0 (591) script.js.Charge_Control_1_6_8: ##{"from":"Charge-Control", "message":" Summe PV Leistung Tag 2026-02-21 pv_estimate= 18.01 pv_estimate90= 27.21"}## 2026-02-18 04:10:02.336 - info: javascript.0 (591) script.js.Charge_Control_1_6_8: ##{"from":"Charge-Control", "message":" Summe PV Leistung Tag 2026-02-22 pv_estimate= 19.2 pv_estimate90= 23.86"}## 2026-02-18 04:10:02.338 - info: javascript.0 (591) script.js.Charge_Control_1_6_8: ##{"from":"Charge-Control", "message":" Summe PV Leistung Tag 2026-02-23 pv_estimate= 21.46 pv_estimate90= 36.15"}## 2026-02-18 04:10:02.340 - info: javascript.0 (591) script.js.Charge_Control_1_6_8: ##{"from":"Charge-Control", "message":" Summe PV Leistung Tag 2026-02-24 pv_estimate= 33.19 pv_estimate90= 47.29"}## 2026-02-18 04:22:01.759 - info: javascript.0 (591) script.js.Charge_Control_1_6_8: ##{"from":"Charge-Control", "message":" Rueckmeldung response.status Solcast= 200"}## 2026-02-18 04:22:02.982 - info: javascript.0 (591) script.js.Charge_Control_1_6_8: ##{"from":"Charge-Control", "message":" Rueckmeldung response.status Solcast= 200"}## 2026-02-18 04:22:02.982 - info: javascript.0 (591) script.js.Charge_Control_1_6_8: ##{"from":"Charge-Control", "message":" Summe PV Leistung Tag 2026-02-18 pv_estimate= 25.04 pv_estimate90= 34.15"}## 2026-02-18 04:22:02.991 - info: javascript.0 (591) script.js.Charge_Control_1_6_8: ##{"from":"Charge-Control", "message":" Summe PV Leistung Tag 2026-02-19 pv_estimate= 17.88 pv_estimate90= 24.6"}## 2026-02-18 04:22:02.997 - info: javascript.0 (591) script.js.Charge_Control_1_6_8: ##{"from":"Charge-Control", "message":" Summe PV Leistung Tag 2026-02-20 pv_estimate= 21.05 pv_estimate90= 40.11"}## 2026-02-18 04:22:03.079 - info: javascript.0 (591) script.js.Charge_Control_1_6_8: ##{"from":"Charge-Control", "message":" Summe PV Leistung Tag 2026-02-21 pv_estimate= 16.61 pv_estimate90= 25.75"}## 2026-02-18 04:22:03.164 - info: javascript.0 (591) script.js.Charge_Control_1_6_8: ##{"from":"Charge-Control", "message":" Summe PV Leistung Tag 2026-02-22 pv_estimate= 18.38 pv_estimate90= 23.04"}## 2026-02-18 04:22:03.172 - info: javascript.0 (591) script.js.Charge_Control_1_6_8: ##{"from":"Charge-Control", "message":" Summe PV Leistung Tag 2026-02-23 pv_estimate= 19.74 pv_estimate90= 32.75"}## 2026-02-18 04:22:03.179 - info: javascript.0 (591) script.js.Charge_Control_1_6_8: ##{"from":"Charge-Control", "message":" Summe PV Leistung Tag 2026-02-24 pv_estimate= 36.91 pv_estimate90= 47.31"}## 2026-02-18 04:23:00.376 - warn: javascript.0 (591) script.js.Charge_Control_1_6_8: ##{"from":"Charge-Control", "message":"-==== Error in der function InterrogateSolcast. Fehler = Error: Error fetching data: Request failed with status code 429 ====-"}## 2026-02-18 04:23:00.900 - warn: javascript.0 (591) script.js.Charge_Control_1_6_8: ##{"from":"Charge-Control", "message":"-==== Error in der function InterrogateSolcast. Fehler = Error: Error fetching data: Request failed with status code 429 ====-"}## 2026-02-18 04:25:00.620 - warn: javascript.0 (591) script.js.Charge_Control_1_6_8: ##{"from":"Charge-Control", "message":"-==== Error in der function InterrogateSolcast. Fehler = Error: Error fetching data: Request failed with status code 429 ====-"}## 2026-02-18 04:25:01.151 - warn: javascript.0 (591) script.js.Charge_Control_1_6_8: ##{"from":"Charge-Control", "message":"-==== Error in der function InterrogateSolcast. Fehler = Error: Error fetching data: Request failed with status code 429 ====-"}## 2026-02-18 04:39:00.444 - warn: javascript.0 (591) script.js.Charge_Control_1_6_8: ##{"from":"Charge-Control", "message":"-==== Error in der function InterrogateSolcast. Fehler = Error: Error fetching data: Request failed with status code 429 ====-"}## 2026-02-18 04:39:00.727 - warn: javascript.0 (591) script.js.Charge_Control_1_6_8: ##{"from":"Charge-Control", "message":"-==== Error in der function InterrogateSolcast. Fehler = Error: Error fetching data: Request failed with status code 429 ====-"}## 2026-02-18 04:49:00.722 - warn: javascript.0 (591) script.js.Charge_Control_1_6_8: ##{"from":"Charge-Control", "message":"-==== Error in der function InterrogateSolcast. Fehler = Error: Error fetching data: Request failed with status code 429 ====-"}## 2026-02-18 04:49:01.006 - warn: javascript.0 (591) script.js.Charge_Control_1_6_8: ##{"from":"Charge-Control", "message":"-==== Error in der function InterrogateSolcast. Fehler = Error: Error fetching data: Request failed with status code 429 ====-"}## 2026-02-18 04:51:00.424 - warn: javascript.0 (591) script.js.Charge_Control_1_6_8: ##{"from":"Charge-Control", "message":"-==== Error in der function InterrogateSolcast. Fehler = Error: Error fetching data: Request failed with status code 429 ====-"}## 2026-02-18 04:51:00.780 - warn: javascript.0 (591) script.js.Charge_Control_1_6_8: ##{"from":"Charge-Control", "message":"-==== Error in der function InterrogateSolcast. Fehler = Error: Error fetching data: Request failed with status code 429 ====-"}## 2026-02-18 04:52:00.645 - warn: javascript.0 (591) script.js.Charge_Control_1_6_8: ##{"from":"Charge-Control", "message":"-==== Error in der function InterrogateSolcast. Fehler = Error: Error fetching data: Request failed with status code 429 ====-"}## 2026-02-18 04:52:00.924 - warn: javascript.0 (591) script.js.Charge_Control_1_6_8: ##{"from":"Charge-Control", "message":"-==== Error in der function InterrogateSolcast. Fehler = Error: Error fetching data: Request failed with status code 429 ====-"}## 2026-02-18 04:59:00.470 - warn: javascript.0 (591) script.js.Charge_Control_1_6_8: ##{"from":"Charge-Control", "message":"-==== Error in der function InterrogateSolcast. Fehler = Error: Error fetching data: Request failed with status code 429 ====-"}## 2026-02-18 04:59:00.476 - warn: javascript.0 (591) script.js.Charge_Control_1_6_8: ##{"from":"Charge-Control", "message":"-==== Error in der function InterrogateSolcast. Fehler = Error: Error fetching data: Request failed with status code 429 ====-"}## 2026-02-18 04:59:00.751 - warn: javascript.0 (591) script.js.Charge_Control_1_6_8: ##{"from":"Charge-Control", "message":"-==== Error in der function InterrogateSolcast. Fehler = Error: Error fetching data: Request failed with status code 429 ====-"}## 2026-02-18 04:59:00.754 - warn: javascript.0 (591) script.js.Charge_Control_1_6_8: ##{"from":"Charge-Control", "message":"-==== Error in der function InterrogateSolcast. Fehler = Error: Error fetching data: Request failed with status code 429 ====-"}##Kann das an der neuen Version liegen? Vorher hatte ich dieses Verhalten nicht.
@azzkikrboy
Habe den Timer Aufruf Solcast in der Version 1.6.9 noch mal abgesichert. -
Neue Version Charge-Control auf GitHub hochgeladen.
Version: 1.6.9
Änderungen:- Prüfung, ob die Zeitangaben (hour, minute) aus dem State .NaesteAktualisierung gültige Zahlen sind, bevor ein neuer Timer mit schedule() gesetzt wird.
Bei ungültigen Werten (z.B. "NaN", null, leer) wird ein Fallback-Timer auf 3:00 Uhr gesetzt und ein Warnhinweis ins Log geschrieben. - Einführung einer Timer-Variable (TimerSolcast) für Solcast, um vor jedem neuen Schedule den alten Timer zu löschen.
@Dave69-CH: Kannst du mal testen, ob mit dieser Version der Fehler zumindest abgefangen wird.
- Prüfung, ob die Zeitangaben (hour, minute) aus dem State .NaesteAktualisierung gültige Zahlen sind, bevor ein neuer Timer mit schedule() gesetzt wird.
-
@ArnoD
Werde ich machen, komme aber erst Sammstag dazu.
Und ja bei -0_userdata.0.Charge_Control.Proplanta.NaesteAktualisierung
steht Ja oder nein keine Zeit. Wie kann Ich Das korrigieren?
vielen dank für Deine tolle hilfe!@Dave69-CH
Kannst du mir mal deinen Link zu der Proplanta Seite schicken.
Ich denke das die Schweizer Version anders aufgebaut ist und deswegen die Zeit für die nächste Aktualisierung mit meinem Filter nicht gefunden wird.
Auf der Seite werden diese Zeilen gesucht:

Entweder gibt es die in der Schweizer Version nicht, oder sind anders beschrieben.
-
Neue Version Charge-Control auf GitHub hochgeladen.
Version: 1.6.9
Änderungen:- Prüfung, ob die Zeitangaben (hour, minute) aus dem State .NaesteAktualisierung gültige Zahlen sind, bevor ein neuer Timer mit schedule() gesetzt wird.
Bei ungültigen Werten (z.B. "NaN", null, leer) wird ein Fallback-Timer auf 3:00 Uhr gesetzt und ein Warnhinweis ins Log geschrieben. - Einführung einer Timer-Variable (TimerSolcast) für Solcast, um vor jedem neuen Schedule den alten Timer zu löschen.
@Dave69-CH: Kannst du mal testen, ob mit dieser Version der Fehler zumindest abgefangen wird.
@ArnoD Habe auf Version 1.6.9 Aktualisiert.
Und hier die neuen Meldungen.javascript.0 12:56:56.809 info Stopping script javascript.0 12:57:05.354 info start JavaScript (Javascript/js) javascript.0 12:57:05.366 info ##{"from":"Charge-Control", "message":"-==== Charge-Control Version 1.6.9 ====-"}## javascript.0 12:57:05.370 info registered 0 subscriptions, 5 schedules, 0 messages, 0 logs and 0 file subscriptions javascript.0 12:57:05.700 info ##{"from":"Charge-Control", "message":"-==== alle Objekt ID's angelegt ====-"}## javascript.0 12:57:05.783 info ##{"from":"Charge-Control", "message":"-==== alle Objekte ID's überprüft ====-"}## javascript.0 12:57:05.933 info ##{"from":"Charge-Control", "message":"-==== Speichergroesse_kWh=52 ====-"}## javascript.0 12:57:09.221 info ##{"from":"Charge-Control", "message":" Rueckmeldung response.status Solcast= 200"}## javascript.0 12:57:10.689 info ##{"from":"Charge-Control", "message":" Rueckmeldung response.status Solcast= 200"}## javascript.0 12:57:10.690 info ##{"from":"Charge-Control", "message":" Summe PV Leistung Tag 2026-02-21 pv_estimate= 8.98 pv_estimate90= 13.6"}## javascript.0 12:57:10.690 info ##{"from":"Charge-Control", "message":" Summe PV Leistung Tag 2026-02-22 pv_estimate= 44.55 pv_estimate90= 66.42"}## javascript.0 12:57:10.695 info ##{"from":"Charge-Control", "message":" Summe PV Leistung Tag 2026-02-23 pv_estimate= 31.88 pv_estimate90= 57.63"}## javascript.0 12:57:10.698 info ##{"from":"Charge-Control", "message":" Summe PV Leistung Tag 2026-02-24 pv_estimate= 55.25 pv_estimate90= 69.78"}## javascript.0 12:57:10.701 info ##{"from":"Charge-Control", "message":" Summe PV Leistung Tag 2026-02-25 pv_estimate= 64 pv_estimate90= 73.18"}## javascript.0 12:57:10.704 info ##{"from":"Charge-Control", "message":" Summe PV Leistung Tag 2026-02-26 pv_estimate= 70.39 pv_estimate90= 71.52"}## javascript.0 12:57:10.707 info ##{"from":"Charge-Control", "message":" Summe PV Leistung Tag 2026-02-27 pv_estimate= 59.7 pv_estimate90= 74.19"}## javascript.0 12:57:12.377 warn ##{"from":"Charge-Control", "message":"-==== Ungültige Zeit für Wetterdaten, Fallback auf 3:00 Uhr ====-"}## javascript.0 12:57:12.380 info ##{"from":"Charge-Control", "message":"-==== ScriptStart() erfolgreich abgeschlossen ====-"}## javascript.0 12:57:14.280 warn ##{"from":"Charge-Control", "message":"⚠️ Ungültige State-ID: 11 ⚠️"}## - Prüfung, ob die Zeitangaben (hour, minute) aus dem State .NaesteAktualisierung gültige Zahlen sind, bevor ein neuer Timer mit schedule() gesetzt wird.
-
@Dave69-CH
Kannst du mir mal deinen Link zu der Proplanta Seite schicken.
Ich denke das die Schweizer Version anders aufgebaut ist und deswegen die Zeit für die nächste Aktualisierung mit meinem Filter nicht gefunden wird.
Auf der Seite werden diese Zeilen gesucht:

Entweder gibt es die in der Schweizer Version nicht, oder sind anders beschrieben.
-
@ArnoD Wo finde ich den Link?
Unter Obiekte Proplanta steht im "NäechsteAktualisierung" Ja oder Nein.
Wenn ich da eine Zeit eingebe wird der wert wieder in Ja / Nein geändert.So Sieht es diereckt auf der Proplanta Homepage aus:

@Dave69-CH
Ok, dann funktioniert erstmal alles bei dir so weit.
Ich teste es gerade mit den Wetterdaten von Basel und konnte den Fehler noch nicht reproduzieren.
Ich muss mir meinen Filter noch mal genau ansehen, ob ich den etwas sicherer machen kann. -
@Dave69-CH
Ok, dann funktioniert erstmal alles bei dir so weit.
Ich teste es gerade mit den Wetterdaten von Basel und konnte den Fehler noch nicht reproduzieren.
Ich muss mir meinen Filter noch mal genau ansehen, ob ich den etwas sicherer machen kann.@ArnoD super Danke viel mals.
Habe mal den wert bei -0_userdata.0.Charge_Control.Proplanta.NaesteAktualisierung von hand auf 04:00
geändert. Er ändert sich danach wider in Ja oder Nein nach einer zeit. ??
Kann es sein das ich was falsch eingegeben habe in den User Anpassungen? -
Neue Version Charge-Control auf GitHub hochgeladen.
Version: 1.6.10
Änderungen:- Fehler bei der Speicherung der Zeit behoben durch Optimierung der Filterfunktion HTML_CleanUp()
@dave69-ch mit dieser Version sollte es bei dir wieder funktionieren.
-
@arnod Schon wieder ich.
Diesen Datenpunkt habe ich nicht, wurde der ersetzt?
0_userdata.0.Charge_Control.Allgemein.EigenverbrauchDurchschnitt_kWhSiehe Bild

Oder was hast Du da reingemacht?
Vieeeelen DANK.
@Dave69-CH sagte in E3DC Hauskraftwerk steuern:
Oder was hast Du da reingemacht?
Die Objekt iDs haben sich geändert. Ist aber bereits länger her, weiß schon gar nicht mehr, mit welcher Version :-)
Das sollte jetzt so aussehen:

Im Editor den Text und die Objekt-ID
0_userdata.0.Charge_Control.Allgemein.EigenverbrauchDurchschnitteintragen, dann sollte es wieder stimmen.
Prüfe auch die Objekt-ID "aktuell erzeugte Energie" dort sollte die Objekt-ID0_userdata.0.Charge_Control.Allgemein.IstPvErtragLM0_kWheingetragen sein.