NEWS
Enphase / Envoy / IQ-Gateway Solar Blockly Skript
-
@steffe-s sagte in Enphase / Envoy / IQ-Gateway Solar Blockly Skript:
dann würde ich die Akku-Felder löschen
so?
-
@negalein sagte in Enphase / Envoy / IQ-Gateway Solar Blockly Skript:
Sollte eigentlich funktionieren
-
PS: in
0_userdata.0.Enphase-Werte_durch_1000.Eigenverbrauch_aktuell
steht(null)
-
du hast jetzt ja auch keinen PV-Eigenverbrauch. Morgen wenn die Sonne scheint sollte das anders sein
-
@steffe-s sagte in Enphase / Envoy / IQ-Gateway Solar Blockly Skript:
keinen PV-Eigenverbrauch
Ahhhhhh, Mann ich sollte nicht drei Sachen gleichzeitig machen.
Klar, das ist ja der PV-Eigenverbrauch. -
Hallo zusammen,
ich scheitere seit ein paar Tagen das 3. Script
aus Post https://forum.iobroker.net/post/1034614 bei mir zu importieren.- Script: Enphase Werte durch 1000 -19.05.2024-.txt
Wenn ich das importiere bekomme ich die Meldung:
und es fehlen mir Teile mindestens bei folgenden Block:
Ich habe wie unter Punkt 2.2 auch die Datenpunkte erstellt und bei zweien davon den Minimalwert auf "null" verändert
Hier meine Datenpunkte:
Habe ich irgenwas noch überlesen oder übersehen?
Scipt 1 und 2 funktionieren.Danke schon mal. Viele Grüße
-
@der_user sagte in Enphase / Envoy / IQ-Gateway Solar Blockly Skript:
Habe ich irgenwas noch überlesen oder übersehen?
wie kopierst du den Text?
Klickst du nur auf den .txt Link, oder "rechte Maustaste + speichern unter"?Immer "rechte Maustaste + speichern unter" machen und die .txt mit einem vernünftigen Editor (zB Notepad++) öffnen.
Anders hauts dir oft die Formatierung durcheinander. -
@negalein said in Enphase / Envoy / IQ-Gateway Solar Blockly Skript:
wie kopierst du den Text?
ich habe schon beide Varianten probiert:
- Direkt kopieren
- Speichern als TXT + mit Notepad++ öffnen + dann kopieren bzw. importieren.
Alle anderen Scripte haben auch funktioniert. Nur das eine hier nicht.
Mir scheint hier eher irgendein Datenpunkt zu fehlen.
Kann mir einer eine Screenshot schicken, was beim Block "Batterieladung über Netz" alles miteinander verknüpft wird.
und mit welcher Logik.
Vielleicht kann ichs dann ein bisschen eingrenzen.
Danke schon mal.
-
@der_user sagte in Enphase / Envoy / IQ-Gateway Solar Blockly Skript:
Mir scheint hier eher irgendein Datenpunkt zu fehlen.
DP hast du alle.
Und auch wenn dir einer fehlen würde, wären die Blöcke da.Starte mal den Javascript-Adapter neu.
-
@negalein said in Enphase / Envoy / IQ-Gateway Solar Blockly Skript:
Starte mal den Javascript-Adapter neu.
Danke das wars. Nun konnte ich das Script auch importieren.
Komisch, aber hier bestätigt sich mal wieder die Aussage " Reboot tut immer gut" -
@steffe-s said in Enphase / Envoy / IQ-Gateway Solar Blockly Skript:
@rollod um wieviel weicht denn der Bezug von deinem Stromzähler ab?
Entschuldige für die späte Antwort, aber ich bin leider nicht eher dazu gekommen nochmal alles zu testen.
Mit deinen neuen Skripten und der dazugehörigen Anleitung passt jetzt alle. Alle Werte die ich benötige sind vorhanden und sogar noch ein paar mehr
Vielen Dank nochmal dafür. -
vielen Danke für Deine Rückmeldung. Schön, dass alles gut geklappt hat.
Der Entwickler des Skriptes ist @greoj. An dieser Stellen an Dich vielen Danke für die Arbeit. %
Ich habe es lediglich etwas weiterentwickelt und hier im Thema ist mittlerweile etwas mehr entstanden als nur ein Skript zum Auslesen. Viel Spaß beim unterbrechungsfreien Ansehen und nutzen der Enphasewerte und immer viel Sonne und maximale Erträge!
-
Bei mir läuft das Script nun schon ein paar Monate tadellos!
Besten Dank dafür @Steffe-S & @greojNun ist es so das ich EVCC zum Überschussladen meiner zwei E-Autos nutze und das Gateway dort mit Token authentifiziert wird.
In EVCC wird über Nacht immer ein Fehler erzeugt aufgrund von fehlgeschlagener Authentifizierung.
Ich vermute das liegt am Script was den Token mit den enphase Servern täglich erneuert.
Kann das sein?
Wenn ja habt ihr einen Workaround dafür?Ich habe mal irgendwo gelesen das Besitzer und Installer(in meinem Fall bin ich beides) unterschiedliche Tokens haben und die Dauer bei ein Token vom installer nur 24h ist und der für den Besitzer 1Jahr.
Danke euch schon jetzt
-
du kannst auch den Token selber in das Skript laden, dann wird kein neuer Token geladen, sondern der eingefügte Token benutzt. Ich meine aber der Meinung, dass das Skript den Token nur erneuert, wenn kein Login im Gateway möglich ist, bzw. der Token abgelehnt wird.
-
@steffe-s
ich habe das mal gemacht mit dem Bearer Token.
Mal abwarten, was die nächsten Stunde/Tage passiert.Warum der Token immer erneuert wurde kann ich dir nicht sagen.
-
@chriz sagte in Enphase / Envoy / IQ-Gateway Solar Blockly Skript:
gibt mal bitte eine Rückmeldung, auch wenn es funktioniert
Sonnige Grüße
-
@steffe-s
So funktioniert, auch nach 24h.Werde berichten ob es zwischenzeitlich wieder mal nicht funktioniert oder ob ich nur jedes Jahr einmal den Token erneuern muss.
-
ich habe mich mal etwas mit evcc beschäftigt und die Daten vom Skript "fast" alle per mqtt an evcc gesendet. Mir fehlen nur noch der Ladekapazitätswert der Batterie in % und die Strompreise
Wallbox und Auto sind fiktiv
Edit: @Chriz hier steht alles soweit beschrieben, ich habe jetzt alle Daten aus den beschriebenen Enphase Skripten, inkl automatischen Tokenbezug per mqtt an evcc schicken können....
-
@dexic sagte in Enphase / Envoy / IQ-Gateway Solar Blockly Skript:
Hast du eine Idee, wie ich mit dieser Fehlermeldung umgehen soll?
Used invalid characters: 0_userdata.0.enphase.livedata.dry_contacts.h.dry_contact_load_name changed to 0_userdata.0.enphase.livedata.dry_contacts.h_.dry_contact_load_name
mit der Hilfe von @haus-automatisierung konnte die Fehlermeldung beseitigt werden. Hierzu muss das Skript "Enphase_Envoy_Datenabfrage" im Bereich (siehe Bild) bearbeitet werden. Hier auf die 3 Punkte klicken, den gesamten Inhalt herauslöschen und dann das geänderte Skript einfügen.
Skript:
for (const i in obj) { const value = obj[i]; const attr = i.replace(/[^a-zA-Z0-9._-]+/g, ''); if (typeof value == 'object') { IObSetState(id + '.' + attr, value); } else { if (existsState(id + '.' + attr)) { // Existing object/ Update if (typeof value === 'string' || value instanceof String) { // String setState(id + '.' + attr, value, true); } else { // It is a number or date if ((new Date(value)).getTime() > 0 && Number(value) > 1685000000 && Number(value) < 4100000000) { // Date setState(id + '.' + attr, value, true); setState(id + '.' + attr + '_str', formatDate(value, 'TT.MM.JJJJ SS:mm:ss'), true); } else { // Number setState(id + '.' + attr, Number(value), true); } } } else { // New object / Create if (typeof value === 'string' || value instanceof String) { // String createState(id + '.' + attr, value, false, { type: 'string', read: true, write: true }); } else { // It is a number or date if ((new Date(value)).getTime() > 0 && Number(value) > 1685000000 && Number(value) < 4100000000) { // Date createState(id + '.' + attr, value, false, { type: 'number', read: true, write: true }); createState(id + '.' + attr + '_str', formatDate(value, 'TT.MM.JJJJ SS:mm:ss'), false, { type: 'string', read: true, write: true }); } else { // Number createState(id + '.' + attr, value, false, { type: 'number', read: true, write: true }); // or type: "mixed"? } } } } }
nachzulesen hier: https://forum.iobroker.net/topic/76381/gelöst-used-invalid-characters-über-blockly/22?_=1723791171518
-
@steffe-s
Vielen Dank
Habt Ihr Euch schon mal Gedanken gemacht über Netzladen des Akkus? Die dunkle Jahreszeit kommt bald und da könnte es durchaus Sinn machen. Meine erste Recherche hat ergeben, dass man dafür eine spezielle Subskription für die API benötigt. Anders geht es nicht. 1komma5 Grad (mein Installateur) soll es können, ich möchte aber nicht deren System nutzen.
Zur Not wäre auch eine Entlade Sperre für günstige Zeiten hilfreich. Ich habe einen Smartmeter sowie einen flexiblen Stromtarif.