NEWS
Adapter für Buderus KM200 (und eventuell auch anderen KMxxx)
-
@tom57
Ja, genau deshalb hab in der neuen Version einige Verzögerungen eingebaut (zwischen den Abfragen wird einige MS verzögert) und die fast und slow-Listen eingeführt.Ich habe auf der fast-Liste die ich alle 5min lese nur die Teperaturen und Werte die ich logge, und natürlich notifications um Fehler zu sehen, ca. 10 Stück, auf der normalen Liste alle 1/2 Stunde lese den großteil sonst und in der Slow-Liste die sich alle 12 Stunden updatet die Daten die sich sowieso selten änder wie die _Daily oder Monthly aufzeichnungen.
Damit versuch ich eweniger Abfragen zu generieren.
-
@Alle !
Habe gerade die Version 2.0.0 auf Git und NPM gestellt.
Da waren einige Änderungen um Fehler in js-controller auszumerzen aber auch eine Äderung die die recordings betrifft: Bei Power-Recordings wird nicht ein Durchschnitt sondern die Leistung/Zeiteinheit zurückgegeben.
Also sind die Daten jetzt gleich mit den Werten der web/mobil-App.Viel Spaß!
-
Danke Frank,
die Werte für _Hours und _ Days stimmen nun.
Bei _Months ist mir aber noch folgendes aufgefallen:
Bei 2 Monatswerten habe ich "komische" c-Werte. Ich komme nur über folgende Formel auf die richtigen Verbrauchswerte pro Monat:verbrauch = y / c * days * 24; wobei days die Anzahl der Tage des entsprechenden Monats ist
Damit stimmen die Verbrauchswerte bei mir auch mit dem vom Gaszähler gemessenen Verbrauch bis auf ca. 9% überein.
-
@tom57 , welche Werte greifst Du ganz genau ab um den Gasverbrauch zu messen?
-
@Stuebi
Am Gaszähler mit Impulszähler je 0,01 m3 und Umrechnung mit Brennwert und Zustandszahl in kWh. -
@frankjoke
Kannst Du bitte mal angeben, wie ich im Adapter nur konkrete Werte abfragen kann.Wenn ich in der Blacklist /recordings* eingebe und in Slow dann *._Days$, *._Months$
werden keine States erzeugt. Analog bei allen anderen States.Ziel ist es alles auszuschließen, bis auf jeweils eine Werteliste in Normal, Fast und Slow.
Ich komme da irgendwie nicht weiter und habe schon unterschiedliche Varianten probiert.
Kann es sein, dass die Black / Pushlist alle Felder enthalten muss und dann in Fast und Slow nur das Update-Intervall verändert wird?
D.h. was über Black/Pusch nicht selektiert wird kann auch nicht in Slow und Fast angegeben werden? -
@tom57
In der blacklist darfst '/recordungs*' nicht drinnen haben, oder nur mit '+/recordings*', sonst werden sie ja nicht gelesen bzw rausgeschmissen!
Die slow/fast Listen teilen nur die übrig gebliebene Liste in fast/slow oder normal.
-
@frankjoke soweit verstanden. Aber wie gebe ich eine Liste mit ca. 40 Werten ein, die ich lesen möchte?
Und alles andere ausblenden möchte .... -
@tom57
Tom, wenn du keine Monatswerte willst dann kannst*._Monthly$
in die blacklist eingeben, wennst keine outdoor_t1-Daten haben willst dann kannst*.outdoor_t1._*
, so kannst einzelne Werte oder Reihen ausblenden, Einblenden geht natürlich auch mit '+' davor. -
@frankjoke , das bedeutet, dass ich von den 180 Werten 140 ausblenden will, dann muss ich ca. 140 Werte in due Blacklist eintragen
-
@tom57 sagte in Adapter für Buderus KM200 (und eventuell auch anderen KMxxx):
@frankjoke , das bedeutet, dass ich von den 180 Werten 140 ausblenden will, dann muss ich ca. 140 Werte in due Blacklist eintragen
Das stimmt nicht!
Meine Blacklist schaut so aus:
/gateway*,*switchPrograms*,*holiday*,*._Months$
, da hab ich dann 113 States von den 180+ (habe 2 Heizkreise und Warmwasser).Alle die Daten will ich nicht auslesen. Eigentlich hab ich alle
/recordings*
auch weg, hab sie jetzt nur zum Test drinnen gehabt, aber dann gäbe es 86 states wobei ca 12 davon mit fast alle 5min laufen und der Rest alle 30 Minuten. -
@frankjoke
Schade Frank, dass ich dich nicht überzeugen kann neben der Blacklist auch eine Positiv-Liste einzuführen mit der Möglichkeit nur Einträge dieser Positiv-Liste zu verarbeiten.
Z.B: /* (alles auf Blacklist) , +switchPrograms (Auf Positiv-Liste überschreibt Blacklist), ...Wie gesagt ich brauche aktuell 36 Werte, aber dabei auch Switch- und Holidaymodes.
-
@tom57
Genau so kannst es ja machen,
/*, +*stwitch*, +*holiday*
, eben nur in einer Zeile!
Alles was + davor hat ist die Positiv-Liste und hat Vorrang gegenüber dem /*! -
@frankjoke , sorry funktioniert bei mir nicht, das hatte ich schon getestet!
Ich habe verschiedene Schreibweisen und Datenfelder probiert. Z.B. :
/*, +*.actualTemp$ /*, +*.actualTemp* /*, +*actualTemp* /*, +*actualTemp$
Es werden keine States erzeugt.
Habe ich Schreib- / Denkfehler - oder gibt es noch Fehler im Adapter? -
@tom57
Tom, danke für das Beispioel, hab den Fehler gefunden!Die Ursache ist dass natürlich bei z.B. alle Bäume die im Namen nicht actualTemp haben nicht gescannt wurden da sie die actualTemp erst kriegen.
Der Adapter versucht alle bekannten Bäume nach Services zu durchsuchen, ich habe jetzt den Check auf die blacklist beim Suchen ausgeschaltet und nur für das kreieren der states eingeschaltet, damit wird alles durchsucht.
Für dein Beispiel eine Anmerkung: Zum Scan-Zeitpunkt sind die Bäume durch '/' getrennt und nicht durch '.', also kannst die ersten 2 vergessen. Richtig ist das 3. in deinem Fall
/*, +*actualTemp*
und der Grund ist dass bei den Recordings ja noch das _Days, ... dazu kommt, ausser du hast noch+*_Days$, +*_Hours$
drin. Wenn du nur die actualTemp ohne recording willst dann kannst auch*actualTemp$
nehmen.Die Version auf git hab ich mit der Änderung die Suche selbst nicht auch einzuschränken schon gepostet!
p.s.: An alle anderen Nutzer: Diese neue Version kann mehr Datenpunkte bringen , das bedeutet ihr müsst eventuell die Konfig/Blacklist ändern!
-
@frankjoke
Super, funktioniert nun. Danke Frank -
@alle
Habe V 2.0.1 auf git gepostet. Die Änderungen sind- Die Blacklist wird jetzt komplett verarbeitet und erst angewendet wenn alle möglichen States gefunden wurden. Damit ist Ausblenden und Einblenden in viel mehr Situationen möglich und man kann gezielter einblenden.
- In der Konfig is ein Flag hinzugefügt worden welches normalerweise alle unbenutzten States welche nach einer Blacklist-Änderung wegfallen löscht, aber es kann jetzt ausgeschaltet werden damit die States im Objektbaum bestehen bleiben. Achtung!: Sie werden nicht mehr upgedated!!!!
-
@frankjoke , super flag funktioniert. Ist nur im Standard nicht aktiv.
Sollte doch anders sein. Oder? -
@tom57
Wenn du den adapter nur updatest dann ist das flag vorher nicht in der Konfig und deshalb nachher ausgeschaltet.
Das ist gut so damit die Leute die erst ihre Blacklist umkonfigurieren müssen keine states verlieren!
Der Default-Wert wird nur (ein/on/true) wird nur geladen wenn du eine neue Instanz kreierst da dann die Einstellungen aus dem io-package.json genommen werden. -
@frankjoke
Ich möchte mich zuerst einmal herzlich für das Script bedanken. Prima Arbeit!Nun zu meinem Problem.
Kessel: Buderus
WebModul: KM200
Script: BetriebsstundenzählerAm 25.03. hatte ich eine Stromabschaltung. Seit der Widereinschaltung bekam ich nur noch aufsummierte Verbrauchsdaten.
Ich vermute dass mit dem Neustart am 25.03. ein Firmwareupdate am KM200 erfolgte und die Daten anders dargestellt werden.Da ich seit langem vermute das mit den Daten etwas nicht stimmt habe ich auf die Version 2.0.0 am Script umgestellt um das festzustellen.
Nun bekomme ich keine Daten mehr. Die Verbindung scheint aber zu funktionieren. Es zeigt sich aber Folgendes:
Trotz dem meine Blacklist leer ist, bekomme ich nur 101 Werte übertragen. Das mag vielleicht am Kesselmodell liegen. Ich kann das aber nicht nachvollziehen, da es nirgends eine Datenpunktliste zu geben scheint.
Die in der Beschreibung aufgeführten Blacklisteinträge "recordings*" bekomme ich überhaupt nicht.Ich habe die vorherigen Beiträge gelesen, komme aber nicht weiter.
So z.B. die Passwortgeschichten. Dort sehe ich den von mir in der Version 1.1.6 eingegebenen AES-Key, weiss aber nicht, ob da nun etwas geändert werden muss oder nicht. (Die Beschreibungen in Euren Beiträgen sollten da besser werden)
Ich bin kein Linux oder Script-Experte. Es fällt mir daher schwer alle Belange umzusetzen aber es gelingt mir - meistens.Würde mich freuen, wenn es schnell zu einer Lösung kommen könnte.
Derweil guten Erfolg