Weiter zum Inhalt

Skripten / Logik

16.7k Themen 215.6k Beiträge

Hilfe zu JavaScript, Blockly, TypeScript, Node-RED, Scenes und text2command

NEWS

Unterkategorien


  • Hilfe für Skripterstellung mit JavaScript

    3k 50k
    3k Themen
    50k Beiträge
    maxclaudiM
    Erweitertes Energie-Logging für Zendure-Geräte Ich arbeite aktuell an einem Script, das zusätzliche Datenpunkte für Energieauswertungen (kWh) erzeugt: [image: 1784641392579-iobroker_dp_kwh.png] Zusätzlich können zwei CSV-Dateien erzeugt werden. 1. Tagesenergie-Datei Beispiel: zendure_energy_2026.csv Diese Datei enthält Tageswerte über ein Kalenderjahr: Datum;pvInput_kWh;gridChargeInput_kWh;gridhomeOutput_kWh;gridOffSocketPower_kWh Vor Scriptstart kann einmalig festgelegt werden, ob pvInput_kWh integriert werden soll. Diese Option ist für Zendure-Geräte ohne DC-PV-Module-Eingänge gedacht, da dieser Wert dort immer 0 wäre. Bedeutung der Werte: pvInput_kWh Vom Zendure-System gemeldete PV-Energie der angeschlossenen DC-PV-Modul-Eingänge. gridChargeInput_kWh Energie, die das Zendure-Gerät per 230V AC aus dem Hausnetz aufgenommen hat (AC-Laden). gridhomeOutput_kWh Energie, die das Zendure-Gerät in das 230V AC Hausnetz abgegeben hat. gridOffSocketPower_kWh Energiefluss über die gridOff-Steckdose: positive Werte: Energiefluss von der Steckdose in das Zendure-Gerät (z.B. Microinverter) negative Werte: Energiefluss vom Zendure-Gerät zur Steckdose (z.B. Verbraucher) Die Datei enthält integrierte Tagesenergien in kWh und eignet sich für Statistiken, Diagramme und Langzeitauswertungen. Die Jahresdatei wird automatisch anhand des aktuellen Kalenderjahres erzeugt. Beim Jahreswechsel wird automatisch eine neue Jahresdatei begonnen. 2. Live-Leistungsdatei Beispiel: zendure_liveEnergy.csv Die Aufzeichnung erfolgt in einem einstellbaren Intervall (z.B. jede Minute). Enthalten sind aktuelle Leistungswerte: Zeit;pvInput_W;gridChargeInput_W;gridhomeOutput_W;gridOffSocketPower_W Die Werte werden nicht integriert oder aufsummiert. Jede Zeile stellt eine Momentaufnahme der aktuellen Leistung in Watt dar. Bedeutung: pvInput_W Aktuelle PV-Eingangsleistung der PV-Module an den DC-PV-Eingängen. gridChargeInput_W Aktuelle 230V AC-Lade-Leistung aus dem Hausnetz zum Zendure-Gerät. gridhomeOutput_W Aktuelle AC-Leistung vom Zendure-Gerät ins 230V AC Hausnetz. gridOffSocketPower_W Aktuelle Leistungsrichtung der gridOff-Steckdose: positive Werte: Leistung von der Steckdose in das Zendure-Gerät negative Werte: Leistung vom Zendure-Gerät zur Steckdose Die Datei eignet sich für Leistungsdiagramme (W) und Dashboards. Archivierung Live-Datei: Beim Tageswechsel bzw. beim nächsten Schreibvorgang nach einem Tageswechsel wird: zendure_liveEnergy.csv automatisch archiviert als z.B.: zendure_liveEnergy_2026-07-20.csv Danach wird wieder die aktuelle Datei: zendure_liveEnergy.csv weitergeführt. Es werden maximal 30 Tagesarchive behalten. Ältere Dateien werden automatisch gelöscht. Zusätzlich kann im Script eingestellt werden, ob CSV-Dateien erzeugt werden sollen oder nur die ioBroker-Datenpunkte. Die Berechnung basiert ausschließlich auf den von Zendure gelieferten Leistungswerten. Es werden keine geschätzten Wirkungsgrade oder pauschalen Umrechnungen (z.B. Faktor 0,96 wie teilweise bei anderen Scripts verwendet) eingesetzt. Die gridOffSocketPower-Werte beschreiben ausschließlich den Energiefluss über die gridOff-Steckdose und stellen keine separate Netzeinspeisungsmessung dar. Die Energiezähler werden über die von Zendure gelieferten Zeitstempel und Leistungswerte fortgeführt. Bei Neustarts oder Unterbrechungen werden keine fehlenden Werte geschätzt oder nachberechnet. Das Script arbeitet unabhängig von der Gerätesteuerung und greift ausschließlich lesend auf vorhandene Zendure-Datenpunkte zu. Es verändert keine Geräteeinstellungen und kann daher parallel zu bestehenden Steuerungsscripten betrieben werden. Mehr fällt mir dazu im Moment nicht ein; genug getippt :-) Besteht Interesse an dieser Erweiterung bzw. an dem Script? Über eine Rückmeldung, wer welches meiner Blockly-Scripte verwendet und ob diese problemlos laufen, würde ich mich ebenfalls freuen ;-)
  • Hilfe für Skripterstellung mit Blockly

    7k 80k
    7k Themen
    80k Beiträge
    A
    @paul53 sagte: @andreas7712 [sagte]: als Taster funktioniert Also nur kurz einschaltet? Super so funktioniert es!!!! Vielen Dank!!!!!!
  • Hilfe für Skripterstellung mit Node-RED

    961 13k
    961 Themen
    13k Beiträge
    Marc BergM
    Man kann einen Flow von außen neu starten, indem man ihn per API deaktiviert und wieder aktiviert. Nicht sehr elegant, aber geht. Hier ein Flow dazu, das könnte man auch im Skript abbilden (hostname und Flow-ID im Inject Node anpassen: [ { "id": "0101b52dd8b0e69c", "type": "inject", "z": "tab_restart", "name": "Flow neu starten", "props": [ { "p": "baseUrl", "v": "http://nuc.fritz.box:1880", "vt": "str" }, { "p": "flowId", "v": "56a35d28dbb8d4c1", "vt": "str" } ], "repeat": "", "crontab": "", "once": false, "onceDelay": "", "topic": "", "x": 160, "y": 140, "wires": [ [ "ffb73632947a1b74" ] ] }, { "id": "ffb73632947a1b74", "type": "http request", "z": "tab_restart", "name": "GET /flow/:id", "method": "GET", "ret": "obj", "paytoqs": "ignore", "url": "{{{baseUrl}}}/flow/{{flowId}}", "tls": "", "persist": false, "proxy": "", "insecureHTTPParser": false, "authType": "", "senderr": false, "headers": [], "x": 370, "y": 140, "wires": [ [ "78e47724692d9c26" ] ] }, { "id": "78e47724692d9c26", "type": "change", "z": "tab_restart", "name": "deaktivieren", "rules": [ { "t": "set", "p": "flow", "pt": "msg", "to": "payload", "tot": "msg" }, { "t": "set", "p": "flow.disabled", "pt": "msg", "to": "true", "tot": "bool" }, { "t": "set", "p": "payload", "pt": "msg", "to": "flow", "tot": "msg" }, { "t": "set", "p": "headers", "pt": "msg", "to": "{}", "tot": "json" }, { "t": "set", "p": "headers.content-type", "pt": "msg", "to": "application/json", "tot": "str" } ], "action": "", "property": "", "from": "", "to": "", "reg": false, "x": 570, "y": 140, "wires": [ [ "b570b346c80301a6" ] ] }, { "id": "b570b346c80301a6", "type": "http request", "z": "tab_restart", "name": "PUT (aus)", "method": "PUT", "ret": "obj", "paytoqs": "ignore", "url": "{{{baseUrl}}}/flow/{{flowId}}", "tls": "", "persist": false, "proxy": "", "insecureHTTPParser": false, "authType": "", "senderr": false, "headers": [], "x": 770, "y": 140, "wires": [ [ "a062c2baa0932d3e" ] ] }, { "id": "a062c2baa0932d3e", "type": "delay", "z": "tab_restart", "name": "1s warten", "pauseType": "delay", "timeout": "1", "timeoutUnits": "seconds", "rate": "1", "nbRateUnits": "1", "rateUnits": "second", "randomFirst": "1", "randomLast": "5", "randomUnits": "seconds", "drop": false, "outputs": 1, "x": 960, "y": 140, "wires": [ [ "664a32887d83b305" ] ] }, { "id": "664a32887d83b305", "type": "change", "z": "tab_restart", "name": "aktivieren", "rules": [ { "t": "set", "p": "flow.disabled", "pt": "msg", "to": "false", "tot": "bool" }, { "t": "set", "p": "payload", "pt": "msg", "to": "flow", "tot": "msg" }, { "t": "set", "p": "headers", "pt": "msg", "to": "{}", "tot": "json" }, { "t": "set", "p": "headers.content-type", "pt": "msg", "to": "application/json", "tot": "str" } ], "action": "", "property": "", "from": "", "to": "", "reg": false, "x": 140, "y": 220, "wires": [ [ "83d399c90d46240f" ] ] }, { "id": "83d399c90d46240f", "type": "http request", "z": "tab_restart", "name": "PUT (ein)", "method": "PUT", "ret": "obj", "paytoqs": "ignore", "url": "{{{baseUrl}}}/flow/{{flowId}}", "tls": "", "persist": false, "proxy": "", "insecureHTTPParser": false, "authType": "", "senderr": false, "headers": [], "x": 320, "y": 220, "wires": [ [ "529c0e1896d1f278" ] ] }, { "id": "529c0e1896d1f278", "type": "debug", "z": "tab_restart", "name": "Ergebnis", "active": true, "tosidebar": true, "console": false, "tostatus": false, "complete": "true", "targetType": "full", "statusVal": "", "statusType": "auto", "x": 480, "y": 220, "wires": [] } ]
  • Script wird immer mehr verzögert ausgeführt

    21
    2
    0 Stimmen
    21 Beiträge
    2k Aufrufe
    T
    @stein sagte in Script wird immer mehr verzögert ausgeführt: Oh man, ich schäme mich ein bisschen, ich habe grade den Verdacht dass es der openknx adapter ist. Wenn ich einen state von hand (ohne script) änder dauert es auch einige Sekunden bis der state sich ändert. Andersrum kommen aber state Änderungen auf dem bus sofort im iobroker an. Sehe jetzt auch dass die geschrieben states vom iobroker auf dem openknx adapter sehr lange noch rot, also nicht acknowledged sind. Das wird mein Problem sein. Aber warum ist das wohl so? Mach nen neuen Thread auf, KNX ist was ganz anderes als Skripte und dafür brauchst du die Aufmerksamkeit von anderen Leuten, verlinke dann auf den hier. Ich hab davon keine Ahnung :)
  • PHP Script

    16
    0 Stimmen
    16 Beiträge
    1k Aufrufe
    mcm1957M
    Der Thread hat zwar kaum mehr Bezug zum Bereich "Skripten / Logik" aber in jedem Fall sei auch hier ein expliziter Hinweis insbesondeee da wir uns hier nicht im Tester Bereich befinden: Von direkten Installation von GitHub - insbesondere auf produktiven Systemen - wird explizit abgeraten. GitHub Versionen können sich jederzeit (auch kurzfristig) ändern und durchaus auch in sich inkonsistent und fehlerhaft sein. Versionsangaben von GitHub Installationen sind Schall und Rauch da die Versionsnummer zumindest bei Verwendung der standardmäßigen Umgebung erst im Zuge der Releaseerstellung geändert wird. Auf explizite Aufforderung durch den Entwickler kann eine GitHub Installation zur Fehlereingrenzung oder zum Test neuer Funktionalität - unter Inkaufnahme des erhöhten Risikos - natürlich erfolgen. Adapter die nur via GitHub oder npm (also NICHT aus einem der beiden Repositories) installierbar sind sind mit erhöhter Vorsicht zu betrachten. Hier sollte der Entwickler drum ersucht werden eine Aufnahme in die Repositories zu veranlassen indem z.B. ein Issue im Adapterrepository erstellt wird. Und falls es irgendwie unklar ist: ioBroker unterstützt folgende Arten von Installation: aus dem STABLE Repository Das sind Adapter Releases die keine groben Fehler aufweisen (sollten). Natürlich kann es auch dort Fehler geben, die Behebung davon obliegt dem jeweiligen Dev und kann ggF auch dauern. aus dem LATEST Repository Das sind Adapter Releases die neu erstellt wurden und nur rudimentär getestet sind - oft auch als BETA Releases bezeichnet. Releases aus dem LATEST sind primär für unsere zahlreichen freiwilligen Tester gedacht. BETA / LATEST Releases können durchaus Fehler aufweisen - auch wenn ich davon ausgehe dass jeder aintainer dies zu vermeiden versucht. Vom Einsatz auf produktiven Systemen wird abgeraten außer man braucht irgenein neues Feature (z.B. neues Gerät) unbedingt. Hier muss dann jeder Entscheiden was ihm wichtig ist. direkt von GITHUB Von Installationen direkt aus Giuthub wird definitiv abgeraten außer auf Anweisung des Maintainers und für den Fall dass man gemeinsam mit diesem etwas testen will. Details siehe oben. direkt von npm Diese Installation kann erforderlich sein, wenn man eine bestimmte Version installieren möchte / muss. Im Normalfall sollte man direkte npm Installationen ebenso meiden wie direkte GitHub Installationen - ausgenommen um z.B. zu einer bekannten Version downzugraden - obwohl hier wenigstens ein definierter Stand garantiert ist. Adapter die NUR via npm und/oder nur via GitHub installierbar sind sollte man meiden - diese wurden nicht mal einem rudimentären Review unterzogen und sollten mit dem Attribut "vollständig auf eigenes Risiko verwenden" installiert werden. Hier empfiehlt es sich den Developer zu ersuchen eine Aufnahme in die Repos zu veranlassen. Wenn dieser darauf nicht reagiert sollte man von einer eher kurzen und unklaren Lebensdauer des Adapters ausgehen. Support meiner-/unsererseits für solche Adapter ist mit Sicherheit minimalistisch. @mcm1957
  • Script zum auslesen eines C.M.I von TA UVR1611

    Verschoben
    78
    4
    0 Stimmen
    78 Beiträge
    28k Aufrufe
    A
    @andibr und noch die Digitalen Status: [image: 1734784153456-bildschirmfoto-vom-2024-12-21-13-25-27.png] Wieder CMI [image: 1734784233747-bildschirmfoto-vom-2024-12-21-13-30-17.png] Woher ich auch immer die Holdingregister-Adresse her habe, weiss ich echt nicht mehr. Wie bereits geschrieben, dass sind Einstellung die bei mir seit mehr als 1 Jahr einwandfrei in Betrieb sind und die Temperaturwerte verwende ich auch auf eine Vis, die täglich mehrfach benutzt wird, darum weiss ich dass die Werte durch kommen. Ganz wichtig ist das der IOB eben Modbus-Slave ist, weil das CMI immer der Master sein will, und auch nichts anderes kann. Mein CMI hat folgende Version: CMI024152 V1.43.4 - B1.06 - H4.00
  • Berechneter Wert wird von Modbus nicht weiter übergeben

    9
    1
    0 Stimmen
    9 Beiträge
    632 Aufrufe
    HomoranH
    @axmlm sagte in Berechneter Wert wird von Modbus nicht weiter übergeben: So jetzt funktionierts, Natürlich @axmlm sagte in Berechneter Wert wird von Modbus nicht weiter übergeben: Endlich den Unterschied zwischen "aktualisieren" und "steuern" verstanden. Dann war's ja für alle erfolgreich! da sind aber noch paar aktualisiere drin! Wenn sich dahinter eigene DP verbergen ist das ok, wenn es AdapterDPs sind nicht! EDIT und ein nach Zahl ist aus dem Rahmen gefallen
  • Einfügen von JS-Klassen aus eigenem NPM-Modul

    51
    0 Stimmen
    51 Beiträge
    7k Aufrufe
    U
    Habe für mich mal eine funktionierende Lösung in einem neuen Post aufgeschrieben: https://forum.iobroker.net/topic/78632/info-auslagerung-von-scripte-aus-global-aufs-filesystem
  • (ERLEDIGT!) TypeScript, viele common/global Scripte --> CPU

    55
    0 Stimmen
    55 Beiträge
    8k Aufrufe
    U
    Habe für mich mal eine funktionierende Lösung in einem neuen Post aufgeschrieben: https://forum.iobroker.net/topic/78632/info-auslagerung-von-scripte-aus-global-aufs-filesystem
  • Timer mit flexibler Startzeit

    16
    0 Stimmen
    16 Beiträge
    2k Aufrufe
    Matze RM
    Hi @paul53, vielen Dank für deine Arbeit, dein Weg ist besser. Mir fehlt noch die Erfahrung mit allem aber besonders mit Blockly. Mein Weg war etwas umständlich . Das script war dem ganzen Projekt angepasst. ich werde das morgen dierekt umsetzen danke nochmal und einen schönen Abend LG Maro
  • Letzte Benachrichtigung rausfinden / tipps

    5
    0 Stimmen
    5 Beiträge
    470 Aufrufe
    paul53P
    @xandar31 sagte: eine Nachricht zu bekommen, wenn der Stand auf <100cm fällt und dann erst wieder >100cm. [image: 1733934541700-blockly_temp.jpg] Man sollte allerdings eine Hysterese vorsehen, da sonst bei Schwankung um 100 cm etliche Nachrichten erzeugt werden können. EDIT: Etwa so: [image: 1733934837249-blockly_temp.jpg]
  • Skript im VIS-2 Editor funktioniert nur im Editor

    4
    1
    0 Stimmen
    4 Beiträge
    474 Aufrufe
    OliverIOO
    @vippis Bei vis2 bin ich mir zwar etwas unsicher, aber bei vis1 wird der Skript Reiter sehr früh geladen und ausgeführt. Zu diesem Zeitpunkt existieren in der Regel die Widgets noch nicht. Daher greifen die Anlage der Event Listener ins Leere Eine weitere Alternative, neben dem, was du jetzt gemacht hast, wäre noch, alle Funktionen in den Skript, Reiter und in den HTML Tag über die Event Attribute, wie beispielsweise onClick https://www.w3schools.com/jsref/event_onclick.asp dann die Funktion zu definieren.
  • CSV Datei über VIS downloaden

    6
    0 Stimmen
    6 Beiträge
    683 Aufrufe
    V
    @vippis Man muss halt das Node FS Modul nehmen :)
  • Astro-/Zeitvergleich, Sonnenuntergang != Sonnenuntergang

    21
    4
    0 Stimmen
    21 Beiträge
    1k Aufrufe
    B
    @paul53 Guten Abend, wir hatten eben eine kleine Adventfeier. Daher die Verzögerung. Ja genau das habe ich zur "Goldenen Stunde" ausprobiert und das ist - mit deiner Quelltext-Fund passend - des Rätsels Lösung. Der Trigger triggert auf das Astro-Ereignis und in dem Vergleich wird -1 Minute gerechnet, dann funktioniert es perfekt. Astro "Golden Hour" - Vordach funktioniert, Seitenlich mit Absicht noch nicht umgestellt. 2024-12-08 15:25:17.481 - info: javascript.0 (606) script.js.packages.autoLight.autoLightTrigger: Sonnenuntergang-Trigger um: 15:25:17.480 2024-12-08 15:25:17.500 - info: javascript.0 (606) script.js.packages.autoLight.seitenlicht: Seitenlicht: Beginne autoLightCheck 2024-12-08 15:25:17.501 - info: javascript.0 (606) script.js.packages.autoLight.seitenlicht: autoLightSeitenlicht ist aktiv. Prüfe Zeitrahmen (Sonnenuntergang bis Mitternacht) 2024-12-08 15:25:17.502 - info: javascript.0 (606) script.js.packages.autoLight.seitenlicht: Außerhalb des Zeitrahmens. Schalte Lichter aus. 2024-12-08 15:25:17.502 - info: javascript.0 (606) script.js.packages.autoLight.seitenlicht: Seitenlicht: Ende autoLightCheck 2024-12-08 15:25:17.503 - info: javascript.0 (606) script.js.packages.autoLight.vordach: Vordach: Beginne autoLightCheck 2024-12-08 15:25:17.504 - info: javascript.0 (606) script.js.packages.autoLight.vordach: solarNoon: 15:24:17.478 2024-12-08 15:25:17.505 - info: javascript.0 (606) script.js.packages.autoLight.vordach: CheckAutoLight sagt: 15:25:17.505 2024-12-08 15:25:17.505 - info: javascript.0 (606) script.js.packages.autoLight.vordach: Innerhalb des Zeitrahmens. Schalte Lichter an. 2024-12-08 15:25:17.506 - info: javascript.0 (606) script.js.packages.autoLight.vordach: Vordach: Ende autoLightCheck Ein weiterer Test bzw. die Umstellung auf "Sonnenuntergang" hat auch korrekt funktioniert. Trigger und Ausführung mit Vergleich -1 Minute hat geklappt. Die Frage ist nun, wie man weiter damit umgeht (Nutzer (wie ich) und Entwickler (wie ihr)). Man könnte es als Bug bezeichnen. Man könnte den Quelltext an der Stelle ändern - was das für Auswirkungen haben könnte, habe ich nicht geprüft. Ich wäre auch fein damit, eben eine Zeitspanne zu subtrahieren (Minute, Sekunde etc...). Wäre toll, wenn jemand noch etwas dazu sagen würde. Ich bedanke mich jedenfalls jetzt schon mal für die ausführliche, tolle Hilfe. Können aber gerne weiter über dieses Thema reden.
  • PWM-Display dimmen: Python-Skript sinnvoll steuern

    8
    3
    0 Stimmen
    8 Beiträge
    899 Aufrufe
    E
    @blockmove sagte in PWM-Display dimmen: Python-Skript sinnvoll steuern: @e-i-k-e said in PWM-Display dimmen: Python-Skript sinnvoll steuern: Hat hier jemand eine Idee dazu ? Schmeiss mal den Teil raus # Optional interactive loop try: while True: try: value = input() if value.lower() == "exit": break value = float(value) if value > 100: led.value = 1 elif value < 0: led.value = 0 else: led.value = value / 100 except ValueError: pass sleep(1) except KeyboardInterrupt: # Clean exit on Ctrl+C sys.exit(0) So wie ich es sehe wartet das Script da auf eine Eingabe von der Tastatur. Einfach mal probieren ... Bin nicht so der Python - Raspi - Fachmann. Danke für deinen Vorschlag. Die Eingabeeinforderung wird beendet, allerdings funktioniert das Skript dann nicht mehr - es wird nicht mehr gedimmt.
  • Statusabfrage und Sprachausgabe mittels DFPlayer

    monitoring node-red security communication scenes
    2
    1
    0 Stimmen
    2 Beiträge
    406 Aufrufe
    WagnerW
    @helste64 Hallo - wie bekommst du den dfplayer mit mqtt in den iobroker? ich habe keine ahnung und nur ein arduino script?
  • [gelöst] Werte aus HTTP-Request filtern

    Verschoben
    30
    2
    0 Stimmen
    30 Beiträge
    12k Aufrufe
    HomoranH
    @weberk du weisst aber schon, dass der letzte Beitrag 5 und die davor 7+ Jahre alt sind? immerhin ist @daniel81 noch aktiv, während et al. seit Jahren nicht mehr hier im Forum waren.
  • InfluxDB Stomwerte in ein anderes Bucket setzten

    1
    0 Stimmen
    1 Beiträge
    232 Aufrufe
    Niemand hat geantwortet
  • Uhrzeit aus Wert extrahieren und anderen Wert setzen

    17
    0 Stimmen
    17 Beiträge
    2k Aufrufe
    paul53P
    @sunny9999 sagte: Wo liegt der Bug ? Es sind mehrere: Trigger im Trigger funktioniert nicht (siehe blaues Warnsymbol) Es muss alles innerhalb des Zeitplanes erfolgen Die zu vergleichenden Formate müssen identisch sein Wenn man einen Minuten-Trigger verwendet, sollte man keine Sekunden in den Vergleich einbeziehen Korrektur: [image: 1732969418613-blockly_temp.jpg]
  • Monatsskript mit Fehler

    2
    1
    0 Stimmen
    2 Beiträge
    326 Aufrufe
    CinimodC
    @mico Hey Mico, mach doch zuerst einmal ein lesbares Bild rein, man kann nichts erkennen. Deine ganzen Variablen verstehe ich nicht unbedingt, die sind alle überflüssig ... Direkt so : (natürlich mit den 3 Minuten basierend auf deine trigger Zeit) [image: 1732961133194-f73b3e9d-d6d9-4375-b6e6-d27dcf338ae6-image.png] [image: 1732961262861-90862c2a-dc10-4630-8d82-32ad2eb7d5b6-image.png]
  • Panasonic Wärmepumpenmanager, Script / Ideen gesucht

    74
    0 Stimmen
    74 Beiträge
    11k Aufrufe
    W
    @ticaki Super!!! Es geht wieder! Ich habe 2x das ignore eingefügt und nun geht es. Danke
  • [erledigt]Stromeigenverbrauch berechnen und archivieren

    20
    1
    0 Stimmen
    20 Beiträge
    2k Aufrufe
    A
    @homoran said in Stromeigenverbrauch berechnen und archivieren: @accuface sagte in Stromeigenverbrauch berechnen und archivieren: Ich glaub ich bin zu Dumm für das ganze zeug glaub ich nicht! Ist nur zuviel auf einmal. Immer in kleinen Schritten arbeiten. Dann gibt's auch Erfolgserlebnisse und frustriert nicht. Sourceanalytics ist auch ziemlich umfangreich in den Konfiguratiosmöglichkeiten, mach dazu besser einen eigenen Thread auf. nur vorweg: Um welchen Datenpunkt geht es denn da? Du hast oben rechts W als Einheit, dann wären es Leistungen. Dann hast du Zählerstände speichern angehakt, und das dürfte der Mitternachtszählerstand deiner hochgerechneten "Leistung" sein mit den vollständigen Informationen dann den neuen Thread beginnen. Mahlzeit, den Thread hab ich total vergessen. Also im Moment funktioniert alles soweit. Die Current DP hab ich rausgenommen. die Werte für den Eigenverbrauch und die Einspeisung sehen plausibel aus.
  • Ecowater Systems Wasseraufbereitung

    5
    0 Stimmen
    5 Beiträge
    551 Aufrufe
    Marc BergM
    @freakyfreaky Was ich mir nach Lesen der Anleitung denke: Alle Dateien runterladen und in ein neues Verzeichnis kopieren(z.B. ~/ecowater) Dateien ausführbar machen in diesem Verzeichnis yarn install ausführen „.env“ Datei anpassen in diesem Verzeichnis yarn start ausführen Jetzt sollten erstmal Daten ausgespuckt werden. Die Integration in ioBroker wäre dann der nächste Schritt.

247

Online

33.0k

Benutzer

83.4k

Themen

1.3m

Beiträge