NEWS
Test Adapter TibberConnect 0.0.x inkl. Tibber Pulse
-
@michaelnorge ja habe ich auch, ich gönne ihnen die supportfreien Tage, doch wenn ich 2 Tage vor Weihnachten eine Charge an Puls rausschicke die womöglich nicht funktionieren ( gibt ja unter den facebookposts auch einige bei denen es nicht geht) dann erwarte ich einen gewissen Support, dafür hat man auch 100€ bezahlt. Und ich muss mich auch um meine CNC kümmern wenn sie stehen bleibt und muss dann in die Firma fahren. Egal ob Sonntag oder Feiertag, dafür bekomme ich meinen Lohn + extra. Fröling hat auch 24/7 Support, auch über die Feiertage. Also ganz so locker wie du sehe ich das nicht. Aber egal haben wir uns lieb, wünsch frohe Weihnachten.
-
@babl Du hast 100 EUR für den Pulse bezahlt, aber nicht für irgendeinen Support! Oder steht auf der Verpackung "99,95 inkl. 24/7 Support" ??
Guter Support will und muß bezahlt werden, doch wenn in Deutschland dafür niemand mehr bereit ist zu zahlen und alle immer die "Billiglinie" fahren wollen (Niedriglohn) oder müssen (Regierungsfehler), dann muß man sich nicht wundern, daß Betriebe und Firmen irgendwo sparen MÜSSEN, wenn ihr Geschäft rentabel sein soll. Dann fängt man halt entweder an zu Pfuschen oder bestellt aus Fernost - oder man spart eben an Support!
So - mein letzter "politischer" Beitrag - dies ist immer noch ein ioBroker-Forum :-))))
Schöne Weihnacht, wünsche ich Dir auch
-
@dieterh probiert mal bitte die erneute einrichtung des tibber pulse bei mir ging es jetzt, die haben heute von ca. 10 uhr bis 13 uhr irgendwas gemacht und dann ging es auf anhieb. Also geht doch.
-
@babl - Sorry, dass ich mich erst jetzt melde. Bin unterwegs und konnte es noch nicht probieren. Aber mein Schwiegersohn hat bestätigt, dass es jetzt ohne Probleme ging.
Danke noch mal für die Info. -
@michaelnorge habt ihr schon die Probleme mit den Abstürzen in den Griff bekommen?
Bei mir ca. alle 2 - 3 Stunden stürzt er ab, ansonsten top job an den Entwickler.
-
@babl Ja, das kann ich bestätigen - Der Adapter schreibt dann haufenweise Fehlermeldungen in die Log und der bleibt auf gelb, hab schon ein issue geschrieben, aber der Programmierer hat verständlicher Weise im Moment keine Zeit
Ich hatte einen kleinen Blockly geschrieben, der einen Reconnect versucht, sobald der Adapter rumzickt, aber der schaffte es auch nicht, da tibberconnect explizit ausgeschaltet und wieder angeschaltet werden muß. Seit ein paar Tagen habe ich ein anderes Blockly, mit dem bin ich super zufrieden.
Der Blockly (oder heisst es DAS Blockly???) checkt alle 12 Minuten ob der Adapter auf true steht, wenn nicht, sendet er einen disconnect und einen reconnect.
Damit kann ich im Moment super leben!
Grüße
Michael -
@michaelnorge Warum alle 12min und nicht, wenn der Adapter auf "false" geht?
-
@thegrinch Weil der auch auf false steht während das System hochfährt - das könnte problematisch sein.
-
Entschuldigt bitte, dass ich den Beitrag so häufig korrigiere... Die Verwendung des normalen "timeouts" wird mir vermutlich noch länger ein Rätsel bleiben... Mit dem abgebildeten "Ausführen Timeout in..." läuft es nun wie gewünscht.
Hallo Zusammen und vielen Dank an Michael für den Script-Vorschlag. Habe es bei mir ein wenig anders und eher in die Richtung von TheGrinch gelöst...
Sobald der Adapter die Verbindung verliert, wird nach Ablauf von 3 Minuten, der Adapter gestoppt und neu gestartet. Sollte sich der Adapter, innerhalb der 3 Minuten wieder verbunden haben, wird das Beenden/Neustarten unterbrochen und der Adapter läuft ungehindert weiter.Es wurden deshalb 3 Minuten gewählt, weil bislang der Adapter erst nach 3 Minuten komplett ausgefallen war. Diese Zeit wollte ich warten.
Außerdem musste ich die Zeit zwischen Stop und Start auf 30 Sekunden setzen, um LOG-Einträge zu vermeiden, dass der Start zu schnell nach dem Stop erfolgte...
Beste Grüße, Thomas
-
@Codibris @Michaelnorge @theGrinch
Ich wollte Euch noch über einen Versuch informieren, den ich die letzten Stunden ausprobiert habe. ALLERDINGS möchte ich AUF KEINEN FALL, dass hier ein falscher Eindruck entsteht... Das soll jetzt keine Konkurenzlösung für Codibris-Adapter werden !!! Das ist mir ganz wichtig...
Es besteht die Möglichkeit eine WebSocket-Verbindung zu den TIBBER LiveMeasurement Daten über node-red herzustellen und die Daten dann in die Datenpunkte des ioBrokers zu schreiben. Allzuviel Ahnung von node-red habe ich nicht und habe es quasi im Blindflug wie folgt versucht:
- Im ioBroker im Node-Red-Adapter "Palettenmanager benutzen" aktivieren
- In Node-Red über das Hamburger-Menu unter "Palette verwalten" im Reiter "Installation" nach "node-red-contrib-tibber-api" suchen und installieren. Danach findet sich eine weitere Node "Tibber API" in der linken Node-Auswahl.
- Die JSON-Datei nach dem Download in Zeile 17 die eigene TIBBER "homeId": "*******" statt der Sternchen und in Zeile 195 das eigene TIBBER "accessToken": "********" statt der Sternchen eintragen.
2022-22-29_node-red-TIBBER-LiveMeasurement.json - In Node-Red über das Hamburger-Menu unter "Import" die komplettierte JSON-Datei importieren.
- Danach sollte folgender Flow angezeigt werden.
- Jetzt noch durch Doppelklick auf die blauen "ioBroker OUT"-Nodes die ioBroker-Datenpunkte im Feld "Topic" eintragen, in die die Werte geschrieben werden sollen.
- Wenn der Flow dann "deployed" ist:
- sollte unter der linken Node "connected" stehen, was anzeigt, dass die WebSocket-Verbindung zu TIBBER steht.
- sollten unter den blauen Nodes "grüne Kästchen" auftauchen, die zeigen, dass die Datenpunkte im ioBroker erreichbar sind.
- finden sich am rechten Rand die Debug-Informationen mit dem Gesamtstring und den einzelnen Werten für "Aktuelle Leistung", "Letzter_Zählerstand_Bezug" und "Letzter_Zählerstand_Einspeisung"
Die Daten werden sekündlich in die Datenpunkte geschrieben und es kommt zu keinem Abbruch oder Fehlermeldungen im LOG.
Mit Doppelklick auf die TIBBER-Feed-Node können dann noch weitere Daten angeklickt, abgeholt und extrahiert werden. Ich hatte es erstmal nur auf die 3 genannten Werte beschränkt.Vielleicht möchtet Ihr es auch mal probieren oder einfach mal damit spielen. Für mich war es auch nichts anderes.
Wenn codibris die Zeit findet und den Adapter überarbeitet hat, werde ich auch den Adapter einsetzen.Viele Grüße und good luck ;-), Thomas
-
Ich hatte Probleme mit der Admin Instanz wegen zuvielen States und jetzt viel es mir direkt auf, ich glaube daß macht dieser adapter beim restart.
admin.0 2022-12-29 13:07:03.966 info Unsubscribe from all states, except system's, because over 3 seconds the number of events is over 250 (in last second 0) tibberconnect.0 2022-12-29 13:06:52.095 warn Fehler (Gateway Time-out) bei Vorgang: Abruf 'homes':
Aktuell ist das Script deaktiviert, daß ihn wieder neu starten läßt und der Adapter ist auch deaktiviert, jetzt ist die warnmeldung mit den States weg, habt ihr das auch?
-
@babl Hi. Nein, die Meldung hatte ich nicht.
-
@Codibris
Hallo,habe Deinen Adapter nun auch installiert, super Arbeit, liefert die Werte, die ich benötige, habe vorher mit Node-RED gearbeitet, allerdings mit der alten API.
Hast Du vor auch die Übertragung des Zählerstandes mit einzubauen?
Soll zwar nur für Norweger sein, aber vielleicht funktioniert es auch hier, dann könnte man täglich den Zählerstand automatisiert senden, statt über die App.Ich mein dies in der API:
Field Argument Type Description
sendMeterReading MeterReadingResponse!
Send meter reading for home (only available for Norwegian users)input MeterReadingInput!
updateHome Home!
Update home informationBeste Grüße
René -
@codibris danke für diesen genialen Adapter! Ich versuche gerade anhand der Preisvorhersagen meinen Speicher optimal zu nutzen, heißt bei Hochpreisen ausspeichern und bei Niedrigpreisen eine Entladesperre zu setzen. Was genau Hochpreis und was Tiefpreis ist, soll sich natürlich dynamisch anpassen. Ich wollte zunächst mit dem Pricelevel arbeiten, jedoch bezeiht der sich meiner Meinung nach auf zurückliegende Preise und ist nicht geeignet für mein Vorhaben.
Gibt es eine Möglichkeit, über die PricesTomorrow einen Durchschnitt zu bilden und in einen neuen Datenpunkt zu schreiben?
Bin leider absoluter Anfänger in javascript... -
@whiley85 schau dir mal das Script an
https://forum.iobroker.net/topic/60938/geräte-zu-stundenpreisen-epex-oder-pv-überschuss-betreibenDa werden auch DP für Durchschnitts Preise erstellt
-
@mikerow Vielen Dank, kann mir sicher helfen, besser in die Sache reinzukommen. Auf den ersten Blick ist dieser Ansatz leicht anders als meiner, denn hier wird eine Bandbreite des günstigsten Preises ermittelt.
Ich stelle mir vor, dass ich um 14:00 Uhr den average der 24 Werte PricesTomorrow bilde und meinen Speicher per RSCP wie folgt steuere:if currentPrice < 0.9 x average, lade Speicher
else if currentPrice > 1.1 x average, nutze Speicher
else setze EntladesperreHoffe man versteht meine Überlegungen.
-
Hi. Lass mir mal bitte heute Abend Zeit. Wenn es klappt schaue ich mir das an und melde mich bei Dir.
Gruß Thomas -
@whiley85 Schau dir das mal an. https://www.photovoltaikforum.com/thread/142863-prognosebasierte-ladung-mittels-iobroker/
Tibber Addon ist da auch dabei. Vielleicht kannst du Teile davon gebrauchen
-
@thomkast zu spät... ist zwar nicht schön, aber selten und scheint zu funktionieren:
schedule("1 13 * * *", async function () { function ArrayAvg(myArray) { var i = 0, summ = 0, ArrayLen = myArray.length; while (i < ArrayLen) { summ = summ + myArray[i++]; } return summ / ArrayLen; } var myArray = [ parseFloat(getState("tibberconnect.0.Homes.ffXXX.PricesTomorrow.0.total").val), parseFloat(getState("tibberconnect.0.Homes.ffXXX.PricesTomorrow.1.total").val), parseFloat(getState("tibberconnect.0.Homes.ffXXX.PricesTomorrow.2.total").val), //... parseFloat(getState("tibberconnect.0.Homes.ffXXX.PricesTomorrow.21.total").val), parseFloat(getState("tibberconnect.0.Homes.ffXXX.PricesTomorrow.22.total").val), parseFloat(getState("tibberconnect.0.Homes.ffXXX.PricesTomorrow.23.total").val), ]; var avg = ArrayAvg(myArray); setState('0_userdata.0.Tibber.next24hAvg', avg); setState('0_userdata.0.Tibber.next24hAvgCent', Math.round(avg*10000)/100); });
Mit dem Datenpunkt kann ich nun mein E3DC Ladeverhalten regeln.
Preis 10% niedriger als morgiger Durchschnittspreis => Akku laden
Preis 10% höher als morgiger Durchschnittspreis => Akku freigeben
Alles dazwischen => Entladesperreschedule("1 * * 1,12 *", async function () { var CurrentPrizeCent=getState("alias.0.Tibber.CurrentPrizeCent").val; var next24hAvgCent=getState("0_userdata.0.Tibber.next24hAvgCent").val; var SoC=getState("modbus.0.holdingRegisters.40083_Batterie_SOC").val; if (SoC<80) { if (CurrentPrizeCent<0.8*next24hAvgCent) { setState("e3dc-rscp.0.EMS.SET_POWER_MODE",3); //Charge setState("e3dc-rscp.0.EMS.SET_POWER_VALUE",3000); //3000 Watt } else if (CurrentPrizeCent<0.9*next24hAvgCent) { setState("e3dc-rscp.0.EMS.SET_POWER_MODE",3); //Charge setState("e3dc-rscp.0.EMS.SET_POWER_VALUE",2000); //2000 Watt } else if (CurrentPrizeCent>1.1*next24hAvgCent) { setState("e3dc-rscp.0.EMS.SET_POWER_MODE",0); //Normal setState("e3dc-rscp.0.EMS.MAX_DISCHARGE_POWER",3000); } else { setState("e3dc-rscp.0.EMS.SET_POWER_MODE",0); //Normal setState("e3dc-rscp.0.EMS.MAX_DISCHARGE_POWER",0); //Entladesperre }} else if (CurrentPrizeCent>1.1*next24hAvgCent) { setState("e3dc-rscp.0.EMS.SET_POWER_MODE",0); //Normal setState("e3dc-rscp.0.EMS.MAX_DISCHARGE_POWER",3000); } else { setState("e3dc-rscp.0.EMS.SET_POWER_MODE",0); //Normal setState("e3dc-rscp.0.EMS.MAX_DISCHARGE_POWER",0); //Entladesperre } });
-
@whiley85 warum die Preise von morgen und nicht von heute?