NEWS
Source Analytix korrigieren nach Shutdown?
-
@dieter_p sagte in Source Analytix korrigieren nach Shutdown?:
Der Zählerstand des Shelly hat sich durch den Stromverlust auf 0 (Wh) gesetzt
ja, jetzt weiss ich's auch!
denk über die Verwendung des alias nach
hatte ich auch der Einfachheit halber gemacht
-
@dieter_p steht alles in den ersten Beiträgen im Thread und hat sich bis dato auch nicht geändert
https://forum.iobroker.net/post/564259
https://forum.iobroker.net/post/565789
https://forum.iobroker.net/post/567759@homoran sagte in Source Analytix korrigieren nach Shutdown?:
denk über die Verwendung des alias nach
sollte man, wie geschrieben, vorzugsweise mittels script in nen eigenen DP
wie man einen Umzug vom original auf einen alias/eigenen DP bewerkstelligen kann ist auch im Thread hinterlegt incl Änderung in die Datenbank -
@homoran said in Source Analytix korrigieren nach Shutdown?:
hatte ich auch der Einfachheit halber gemacht
Das ist ein Workaround den ich verstehe, ok. Dennoch interessiert mich ob es keinen angedachten Weg dafür gibt. Immerhin müßte ich so wieder einen neuen Datenpunkt spendieren. Mich stört nicht der zusätzliche DP, sondern der Sprung in der Datenkonsistenz. Die Historie hängt im alten Punkt und ab heute muß ich dann in den Alias gucken. Unschön.
-
https://forum.iobroker.net/post/835238
script für Umzug -
@dieter_p Das Thema ist eigentlich anders herum
immer mit alias arbeiten, dann brauchst nur im Alias die Geräte ID (bei Austausch eines defekten Geräts) oder den Zählerstand (nach reset) zu ändern.
Alles andere läuft weiter.
[Du kannst natürlich auch Geräte nehmen, der Wert nicht resettet, oder wue ich mit Leistungen arbriten]@dieter_p sagte in Source Analytix korrigieren nach Shutdown?:
Die Historie hängt im alten Punkt
Das ist ja noch einfacher.
in History gibt es dafür extra ein History-Alias. Das gab es schon lange vor dem allgemeinen Alias.
Da gibtst du beim neuen DP als History-Alias ID die alte ID ein, dann wird fleissig im alten Datensatz due Historie fortgesetzt, -
@homoran said in Source Analytix korrigieren nach Shutdown?:
Das ist ja noch einfacher.
in History gibt es dafür extra ein History-Alias.Mit Hostorie meinte ich in dem Fall die historischen SA Werte. Aber dank dem Script soll das ja kopierbar sein.
Lese mir das mal in Ruhe durch und morgen mal einen Versuch starten. An einem Alias kann ich ja weniger was kaputt machen. Zur not wird er gelöscht und auf einen Neuen nochmal probiert.
Danke Euch.
-
@crunchip said in Source Analytix korrigieren nach Shutdown?:
https://forum.iobroker.net/post/835238
script für UmzugSorry muß nochmal nachfragen, wenn ich schon einmal dabei bin. Ideal wäre nun wie folgt:
-
Alias für die Shellys erstellen (einfach & bereits gemacht)
-
Manuellen Zählerstand anlegen der nur Zählererhöhungen erfasst und dann aufsummiert.
Das wegen dem beschrieben Bug. Was ich nicht verstehe, wie unterscheidet SA dann Delivered und Consumed?
Hab es beobachtet und für beide Fälle erhöht der Shelly seinen Zähler. Muß ich da noch mehr tun damit es funktioniert? -
Dann würde ich das Script über den alten SA Daten und den manuellen erstellten "Aufsummierer" anwenden
Soweit korrekt?
-
-
@dieter_p sagte in Source Analytix korrigieren nach Shutdown?:
Was ich nicht verstehe, wie unterscheidet SA dann Delivered und Consumed?
an der von dir gemachten Definition
Delivered:
consumed
-
@homoran Danke.
Hab das Script jetzt mal laufen lassen. Klappt leider nur für die 2025er SA Daten.
Die weiteren Daten zB 2024 werden für den neuen DP nicht angelegt und kopiert.
Passend dazu der log Eintrag:
javascript.0 2025-04-16 09:30:16.044 warn at script.js.SAkopierenDP:27:3 javascript.0 2025-04-16 09:30:16.044 warn at script.js.SAkopierenDP:20:3 javascript.0 2025-04-16 09:30:16.044 warn at setState (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:2090:20) javascript.0 2025-04-16 09:30:16.042 warn State "sourceanalytix.0.0_userdata__0__PV__BKW1Stromzaehler.2024.delivered.months.11_November" not found javascript.0 2025-04-16 09:30:16.042 info script.js.SAkopierenDP: sourceanalytix.0.0_userdata__0__PV__BKW1Stromzaehler.2024.delivered.months.11_November = 8.167 javascript.0 2025-04-16 09:30:16.041 warn at script.js.SAkopierenDP:27:3 javascript.0 2025-04-16 09:30:16.041 warn at script.js.SAkopierenDP:20:3 javascript.0 2025-04-16 09:30:16.041 warn at setState (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:2090:20) javascript.0 2025-04-16 09:30:16.039 warn State "sourceanalytix.0.0_userdata__0__PV__BKW1Stromzaehler.2024.delivered.months.10_October" not found javascript.0 2025-04-16 09:30:16.039 info script.js.SAkopierenDP: sourceanalytix.0.0_userdata__0__PV__BKW1Stromzaehler.2024.delivered.months.10_October = 377.321
Immerhin wenn ich dann die Instanz starte, erkennt er einen Reset:
Device reset detected for 0_userdata.0.PV.BKW1Stromzaehler store current cumulatedReading 1622.5856410000001 as valueAtDeviceReset (previous valueAtDeviceReset : 0)
-
@dieter_p sagte in Source Analytix korrigieren nach Shutdown?:
Die weiteren Daten zB 2024 werden für den neuen DP nicht angelegt und kopiert.
Steht auch so im Thread, dazu müsste das Script erweitert werden.
-
@crunchip said in Source Analytix korrigieren nach Shutdown?:
Steht auch so im Thread, dazu müsste das Script erweitert werden.
Danke. Naja für mich irgendwie diskutabel was dieses Skript dann überhaupt nutzt, wenn ich am Ende eh per "json Export" dann "Suchen&Ersetzen-Modifikation" und dann import alles händisch mache.
Egal, dafür dürfe ich meinen workaraound nun haben.
Nun muß ich nur noch verstehen, welchen Datenpunkte ich alle modifizieren muß damit alle Ergebnisse wieder richtig sind.
In Zukunft dürfte aber so schon mal die Basis für weniger solcher Fehler geschaffen sein.
-
@dieter_p Naja, das Script ist entstanden um anfängliche "Fehler" bei der Einrichtung und Anlage der Datenpunkte zu korrigieren. Wenn natürlich das schon mehrere Jahre läuft, greift das script nicht, dazu müsste es erweitert werden. Ich kann selbst kein Javascript und kann diesbezüglich nicht weiterhelfen. Es war ja auch nur ein Hinweis, das es möglich ist, bestehende Dp's umzuziehen.
Wer die alias Funktion von Beginn an richtig nutzen würde, käme erst gar nicht in die Situation.Anderer Ansatz wäre, den anderen Adapter zu nutzen (Name gerade nicht parat) , kann das gleiche, jedoch ohne Preise, also nur Verbrauch, was aber auch eine komplette Neuanlage der Datenpunkte voraussetzt.
edit
https://www.iobroker.net/#en/adapters/adapterref/iobroker.valuetrackerovertime/README.md
oder
https://www.iobroker.net/#de/adapters/adapterref/iobroker.statistics/README.mdden gäbe es auch noch
https://github.com/ioBroker/ioBroker.consumption/blob/master/README.md -
@crunchip said in Source Analytix korrigieren nach Shutdown?:
Es war ja auch nur ein Hinweis, das es möglich ist, bestehende Dp's umzuziehen.
Kein Vorwurf meinerseits.
@crunchip said in Source Analytix korrigieren nach Shutdown?:
Ich kann selbst kein Javascript und kann diesbezüglich nicht weiterhelfen.
Ich auch nicht. Und wenn Ich dann sowas sehe:
Dann komme ich mit einfachen Editoren zu recht (Suchen & Ersetzen) und verstehe was passiert.
Das Schütz natürlich nicht vor Tippfehlern usw.Mein Hauptproblem ist halt, dass ich nicht weiß woran man "fummeln" kann und was, wann ganz sicher schief geht.
Das mal sauber/verständlich definiert zu sehen. Wäre eine tolle Hilfe auch wenn ich jetzt falsche Berechnungen auf Grund von was auch immer korrigieren möchte. Dabei bin ich auf der Suche nach belastbaren Aussagen, wie die historischen Berechnung vergangener Jahre packt der Adapter nicht mehr an. Wenn man manuell die Monatswerte und Jahreswerte 2 stellig hinterm Komma anpasst, sollte das unkritisch sein.
-
@dieter_p sagte in Source Analytix korrigieren nach Shutdown?:
wenn ich jetzt falsche Berechnungen auf Grund von was auch immer korrigieren möchte
bedenkenlos ändern kannst du Werte; die nicht fortlaufend noch weiterzählen... vergangener (previous) Tag, Woche, Monat, Quartal, alte Zählerstände. Heißt im Umkehrschluss, alle Datenpunkte die noch nicht abgeschlossen sind, werden automatisch vom Adapter anhand deiner Startwerte und dem aktuellen (current) Zählerstand berechnet, aktueller Tag, Woche, Monat, Quartal, Jahr
du musst aber auch bedenken, falsche Werte ja auch in deiner Datenbank(historyy/sql/influx) zu korrigieren, falls genutzt
-
@crunchip
Danke. Hab jetzt gerade drauf los korrigiert und nachdem ich den Adapter wieder gestartet hab, überschreibt er "schön" die werde die aktuell noch nicht abgeschlossen sind. Somit ein guter Indikator.Hatte auch den "cumulativeReading" angepasst aber das mag er gar nicht und der Adapterstart stoppt.
Nun muß ich noch lernen wie ich das korrigieren kann und versuche es mal mit der Anleitung die ich selbst oben referenziert hab.
Eine Verbindung der SA Daten zu einer Datenbank oder Historie-Adapter gibt es bei mir nicht. Mir wurde öfters hier gesagt, das braucht man nicht .... Backitup etc. sichert schon alles. Möchte ja auch mal etwas glauben
-
@dieter_p sagte in Source Analytix korrigieren nach Shutdown?:
Eine Verbindung der SA Daten zu einer Datenbank oder Historie-Adapter gibt es bei mir nicht. Mir wurde öfters hier gesagt, das braucht man nicht .... Backitup etc. sichert schon alles. Möchte ja auch mal etwas glauben
stimmt schon, dient letztendlich auch eher der Visualisierung, z.b in Kombi Influxdb/Grafana, deine Datenpunkte/Ordner sind und bleiben in einem Backup ja erhalten
@dieter_p sagte in Source Analytix korrigieren nach Shutdown?:
überschreibt er "schön" die werde die aktuell noch nicht abgeschlossen sind
was mir dazu noch einfällt, bestimmte Datenpunkte sind eigentlich auch gar nicht angedacht manuell zu ändern, die musst du erstmal auf beschreibbar stellen um sie ändern zu können, wie ein Beispiel DP
sourceanalytix.0.dein Geräte.currentYear.meterReadings.02_previousWeek -
@crunchip said in Source Analytix korrigieren nach Shutdown?:
was mir dazu noch einfällt, bestimmte Datenpunkte sind eigentlich auch gar nicht angedacht manuell zu ändern, die musst du erstmal auf beschreibbar stellen um sie ändern zu können, wie ein Beispiel DP
sourceanalytix.0.dein Geräte.currentYear.meterReadings.02_previousWeekDanke, sehr wertvoller Hinweis und bin ich bereits voll reingelaufen. Hoffe nun klappt es.
Ich stehe noch etwas auf dem Schlauch um die readingcumultative anzupassen und die Startwerte zu setzen.
Ich habe den Datenpunkt "Aufsummierer" erst heute erzeugt. Somit war er zu Begin fast 0
Was sollte ich jetzt hieraus:
für die Startwerte ableiten? Ich weiß ja nicht mehr wann genau der device Reset war. Vielleicht noch der Tag.
Aktuell steht der Aufsummiere auf 0,536kWh
Und ich versuche damit jetzt diese Settings zu justieren:
Kann das so richtig sein?
Aber laut Log wohl nicht:
sourceanalytix.0 2025-04-16 20:23:40.611 error Cannot handle initialisation for 0_userdata.0.PV.BKW1Stromzaehler sourceanalytix.0 2025-04-16 20:23:06.732 error Troubleshoot Data 0_userdata.0.PV.BKW1Stromzaehler custom Data : {"common":{"name":"BKW1Stromzaehler","desc":"Manuell erzeugt","role":"state","type":"number","read":true,"write":true,"def":0,"custom":{"sourceanalytix.0":{"enabled":true,"selectedUnit":"Wh","start_day":0,"start_week":1618.8746,"start_month":1589.9546,"start_quarter":1589.9546,"start_year":1526.2766,"selectedPrice":"ElectricityDelivery","consumption":true,"valueAtDeviceReset":1622.5856410000001,"valueAtDeviceInit":0.03273700000002282}}},"type":"state","native":{},"_id":"0_userdata.0.PV.BKW1Stromzaehler","acl":{"object":1636,"state":1636,"owner":"system.user.admin","ownerGroup":"system.group.administrator"},"from":"system.adapter.admin.0","user":"system.user.admin","ts":1744827567233} sourceanalytix.0 2025-04-16 20:23:06.729 error Check settings for 0_userdata.0.PV.BKW1Stromzaehler ! Known valueAtDeviceReset : (1622.5856410000001) > known cumulative value (0.536317) cannot proceed
-
@dieter_p sagte in Source Analytix korrigieren nach Shutdown?:
für die Startwerte ableiten?
@dieter_p sagte in Source Analytix korrigieren nach Shutdown?:
valueAtDeviceReset
ist der letzte Stand wo ein reset erkannt wurde, um den Wert zu korrigieren musst du den Wert, den er von da ab bei 0 wieder weitergezählt hat, dazu addieren
bei einem tasmota Gerät wäre z.b. der Vorgang so
- SA stoppen
- tasmota Gerät aufrufen, Zählerstand im Gerät wieder auf den aktuellen Wert setzen(valueAtDeviceReset+Wertaktuell)
- original DP Raw aufrufen und die entsprechenden Zeilen löschen (Komma in der Zeile davor muss mitgelöscht werden)
in der Regel sind es eigentlich 3 Zeilen, in deinem screen fehlt die letzte Zeile "cumulativeValue":
- SA wieder starten, der Rest würde dann automatisiert bereinigt werden und die Werte wären wieder korrekt
das funktioniert soweit, wenn es am selbigen Tag erkannt und behoben wird
in deinem Fall geht es soweit ich mich erinnere allerdings um shelly, da kann man die Werte im shelly nicht korrigieren, da wäre dann der Vorgang im oben gezeigt, im Link aus dem Thread
die Startwerte an sich, kannst du ja aus den Datenpunkten herauslesen
-
hier noch eine andere alternative zum Datenspeichern oder als Zusatz zum Adapter
-
@crunchip said in Source Analytix korrigieren nach Shutdown?:
in deinem Fall geht es soweit ich mich erinnere allerdings um shelly, da kann man die Werte im shelly nicht korrigieren, da wäre dann der Vorgang im oben gezeigt, im Link aus dem Thread
Danke vielmals, für Deine ganze Unterstützung!
Ich glaube es läuft jetzt für mich zufriedenstellend. d.h. hab da für heute einen Rundungsfehler von 0,5kWh drin, der Rest stimmt; wenn es nur das ist
Schwierigkeit: Ich hab ja auf anraten den Aufsumierer (BKW1Stromzähler) eingebaut um quasie unabhängig von den Zählerständen des Shelly zu werden. Der Aufsummierer holt sich die Zählerstände vom Alias (Energy) so:
Das bedeutet aber auch für dessen SA Werte und die von mir dahintransferierte Historie, dass sie nun total unabhängig von den Shelly Zählerständen ist und nichts damit zu tun hat.
Heißt ich starte heute beim Reset mit 0 und alle Werte in der Historie werden dann negativ dass es passt:
Nun scheint es aber ok zu sein.
Danke Dir und davon hätte ich noch 3 weitere Datenpunkte. Da hab ich morgen was um das Spielchen einzuüben :).