Buderus Logamatic Web KM200 - Reloaded

Ehm Manni… warum nutzt du denn nicht den von IPS bereitgestellten Wochenplaner? Davon könnte man doch auch 2-3-4 verschiedene nehmen für diesen Zweck.

Oder habe ich da jetzt was übersehen?

Ja das ist vom Design her eine Kopie con Swifty.
Nutze ich auch für die HM-Stellantrieb.

Nur leider ging mein Plan in die Hose mehr als nur das Design davon zu verwenden.

Für das im Hintergrund konnte ich quasi bei Null anfangen.

Aber egal bis zum WE sollte es etwas zum Testen für euch geben. Zwickt noch ein bisschen.

Und Heizkreise habe ich nur „zwei“, aber 3 verschiedene Wärmeerzeuger dafür.

Das am Bild ist nur zum Testen.
Wenns malbfertig ist gibts nur noch Heizkreis 1, 2 und Warmwasser.

@Spoosie
Ganz einfach: den Wochenplaner mog I ned :slight_smile:

Während wir auf das nächste Highlight von @manni warten: Buderus hat den Fehler in der App bemerkt (oder wahrscheinlicher, gelesen) und diese aktualisiert.

Buderus hört mit :wink:

Und mal schauen wann die Beta-Phase anlaufen kann.
Bin gerade mal wieder am Umbau der Heizung dran.
Aber zuerst die wichtigen Dinge, Usertreffen in Kärten.

Alles wird gut.
Gruß
Manfred

Hallo zusammen,

eine beeindruckende Arbeit, ich habe einen Teil bei mir integriert. Die Heizungsteuerung funktioniert zuverlässig.
Ich würde das gerne in Zukunft auf ein Raspberry laufen lassen.
Was müsste dafür getan werden? Bzw. wer kann hier was machen? oder kann das einfach portiert werden?

Gruß
Jan Peter

@manni meine Augen funktionieren wieder. Also von mir aus könnte es los gehen. [emoji3]

Ich muss bei mir feststellen, dass sich der KM200 ca alle 3 - 4 Wochen aufhängt. Das es ohne die Abfragen nicht passiert, sehe ich da einen Zusammenhang.
Am RC35 sehe ich es, denn der steht auf Tagmodus Manuell. Das Skript kann nicht mehr zugreifen und bringt Fehler.

Kennt das jemand?

Ich aktualisiere alle 2 Minuten die Werte und die Programmdaten frag ich einmal am Tag ab.

Ich rufe Gruppen mit 4-5 Werten ab, habe das irgendwo hier gelesen - bei mir ist das vorher auch passiert.
Also ich habe einfach die abfragen geteilt. (habe gerade nur das Handy und somit kein Beispiel)
Gruß,
Matthias

Ok, danke für den Ansatz. Ich rufe zwar auch nur eine Anzahl überschaubare Werte ab. Bin auch gerade am Handy. Es sind bei mir 7 oder 8. Das reduziere ich dann auch mal.

Habe nachgesehen, ich lese einmal fünf aus, danach schreibe ich den aktuellen Heizmodus und die solltemperatur (ich habe das vorher mal beschrieben, meine Steuerung kann nicht unterscheiden zwischen Tag, Nacht mit jeweils Warmwasser an oder aus, daher wechselt das bei mir zwischen Tag für Warmwasser an und Nacht für Warmwasser aus, mit der jeweiligen Temperatur) danach kommen nochmal sechs Variablen.

Also die dümmste Lösung sehe ich entweder mit nem HomeMatic oder was auch immer zwischen Stecker, der das Ding für ein paar Sekunden vom Netz nimmt falls nichts mehr geht oder ne Zeitschaltur die zyklisch (1x am Tag?) das Ding ausmacht.

Am Rande, wie heißt bei euch die Variable für Warmwasser bereitstellen bzw Warmwasser aus? Und gibt’s auch was für Zirkulation einzuschalten?
Gruß,
Matthias

Es gibt Werte die brauchen länger und Werte die schneller ausgelesen werden.
Ich kann ja mal bei Gelegenheit mein Abfrageskript einstellen.

War die letzte Zeit ein bisschen beschäftigt mit Heizungsumbau und danach habe ich noch eine Runde Grippe nachgeschoben.

Und nu bin ich in Kasachstan angekommen.
Also wollte wieder eun bisschen Zeit sein [emoji1]

Gruß
Manfred

[HR][/HR]
Variable für Warmwasser bereitstellen

/dhwCircuits/dhw1/operationMode

Da gibt es dann zwei mir bekannte Möglichkeiten:

  1. RC35

Service: /dhwCircuits/dhw1/operationMode
stdClass Object
(
    [id] => /dhwCircuits/dhw1/operationMode
    [type] => stringValue
    [writeable] => 1
    [recordable] => 0
    [value] => off
    [allowedValues] => Array
        (
            [0] => auto
            [1] => on
            [2] => off
        )

)

auto = nach Zeitprogramm
on = entspricht der „Einmalladung“
off = aus :slight_smile:

[HR][/HR]

  1. RC300

Service: /dhwCircuits/dhw1/operationMode
stdClass Object
(
    [id] => /dhwCircuits/dhw1/operationMode
    [type] => stringValue
    [writeable] => 1
    [recordable] => 0
    [value] => ownprogram
    [allowedValues] => Array
        (
            [0] => Off
            [1] => high
            [2] => HCprogram
            [3] => ownprogram
        )

)

off = aus
high = Einmalladung
HCprogramm = Warmwasserbereitung läuft mit den Heizkreisprogrammen
ownprogram = Zeitprogramm für Warmwasser

Gruß
Manfred

Danke Manfred, ich habe die RC35 - allerdings finde ich kein DHW bei mir im Gateway, ich habe mal zwei Screenshots angehangen mit dem was übrig war (also Heizkreis zwei habe ich raus gelöscht - den habe ich nicht).
Hast Du eine Idee?

Wie gesagt (irgendwann mal), ich habe eine MC10, mit BRM Brennermodul und RC35, das ganze sitzt auf einem Kessel mit integriertem Warmwasser-Speicher. Dazu zwei separate Pumpen (plus Zirkulation) die an der Steuerung hängen (an der MC10) und Temp-Fühler für WW und Heizwasser.

Danke schonmal!
Gruß,
Matthias

Ich würde jetzt mal vermutet, dass auf den Screenshots ist das Ergebnis, wenn Du das Skript aus Post 1 ausführst?

Wenn das der Fall ist kann der Teil für das Warmwasser nicht vorhanden sein, da uns zu der Zeit die Rest-Url für Warmwasser noch nicht bekannt war.

Oder Dein KM200 gibt dazu nix her, oder was ich auch schon festgestellt habe, bei manchen Abfragen wird der Json-String zu abgehackt, dass php keine String mehr ausgibt, obwohl Daten ankommen.

Gruß
Manfred

Also ich habe das jetzt mal von Hand angelegt und bekomme als String „auto“ beim Auslesen. - Scheint also zu funktionieren!
Kann ich das Ausleseskript denn irgendwie aktualisieren - evtl. gibt es ja noch mehr was er nicht erkannt hat.

Allerdings frage ich mich nun folgendes:

  1. Bei dir (Manni) steht da:
    [0] => auto
    [1] => on
    [2] => off

muss ich nun 0,1,2 schreiben zum ändern oder „auto“, „on“, „off“? Ich weiß nicht ob die Zahlen nur mit dem Ausleseskript zu tun haben.

  1. Sehe ich doch nun richtig, dass ich jetzt zum Heizen / nicht Heizen zwischen „day“ und „night“ schalte wie bisher und nur als Einmalladung hier auf „on“ schalte. Und Schaltet das danach wieder auf „auto“ danach?
    Ich hätte nämlich eher vermutet, dass „on“ sozusagen immer WW bedeutet und „off“ nie.

However, Danke schonmal.

Gruß,
Matthias

PS: Bis ich reagiere dauert immer etwas länger - ich habe mir vor nem Jahr überlegt mit Anfang 30 nochmals zu studieren und gerade Klausur-Spaß…

Servus,

So habe es jetzt mal endlich geschafft.
Im Anhang mal ein bisschen was zum testen und spielen.

Ist noch nicht ganz ausgereift, es hackt noch an so einigen Stellen, aber wenn man vernünftig bleibt
tut’s schon mal gute Dienste :smiley:

Nicht schrecken, nach der Installation, beim 1. Aufruf im Webfront gibt es ein paar Fehlermeldungen.
Wo genau die herkommen habe ich noch nicht ausfindig gemacht (kommen dann aber nicht mehr wieder :cool:).

Habe versucht eine Doku zu schreiben und einiges in den Skripten zu erklären.
Wenn Fragen sind, einfach fragen

Getestet mit:
ÖL-Kessel: BC10 - RC35
GAS-Therme: BC25 - RC300

Viele Spasss

Grüße aus Kasachstan
Manfred

Buderus_Schaltprogramme_v1.7.zip (857 KB)

Ich arbeite gerade an einer aufgebohrten Version des Ausleseskripts welches hier im Forum „rumgeistert“.

also schalten geht dann wie folgt:


km200_SetData('/dhwCircuits/dhw1/operationMode', 'auto');
// oder
km200_SetData('/dhwCircuits/dhw1/operationMode', 'on');
//oder
km200_SetData('/dhwCircuits/dhw1/operationMode', 'off');

Die Zahlen haben nur mit dem Auslesen zu tun, da die Einträge in einem Array stehen.

Heizen / nicht Heizen mit day und night … ja und nein (richtig ausmachen geht ja damit nicht :slight_smile: )
Aber Du hast recht, das ist nur für den Heizkreis da.

Warmwasser verhält sich wie folgt:
Modus auto:
Programm Eigen1 = Warmwasserbereitung nach Zeitprogramm
Programm Heizkreis = Warmwasserbereitung folgt der Heizung (d.h. wenn gerade nicht geheizt werden muss, wird Warmwasser gemacht).

Modus off:
es gibt kein Warmwasser

Modus on:
Warmwasserbereitung an bis die Warmwassertemperatur erreicht ist, dann zurück auf Modus auto.

So verhält sich das ganze zumindest beim mir.

@Manfred: Respekt! Hab nur grad mal die Doku überfliegen können, sieht verdammt gut aus!
Ich werd’s wohl erst am Wochenende schaffen, die Heizung wieder testweise in Betrieb zu nehmen und mit deinem Code fliegen zu gehen.

Respekt @manni
Tolle Arbeit.

Ich hab das nun mal getestet.

!!! Testet das nicht auf der OSX- oder Raspi-Version !!!

Ich hab das dummerweise mal durchgespielt und das bedeutet ne Menge Arbeit.
Umlaute, $_IPS steht nicht global zur Verfügung …

Aber nun zu Windows:

Die Installation läuft fehlerfrei durch. (wenn man daran denkt, das erste Skript auch „Start“ zu nennen. :smiley:
Bei der Darstellung kann man nicht meckern. Das kenne ich ja von swifty.

Das erste Auslesen des Heizkreisprogrammes funktionierte vom Ergebnis, zeigte aber einen Skriptfehler im Fenster.
Unachtsam hab ich den versehentlich weggeklickt.
Das Programm wurde aber korrekt gelesen. Passt von den Werten.

Mich irritiert zur Zeit, dass ich beim Wechsel vom Heizkreis zu Warmwasser und zurück immer ein leeres Fenster vorfinde. Ich hab nur einen Heizkreis und das ja schon im Installationsskript eingetragen.
Ferner musste ich das Schaltpunkt nachlesen aber nach dem Testen passt das.

Toll.

Interessant wäre nun, wenn man die Schaltzeiten von swifty mit diesen der Buderus automatisiert abgleichen könnte.
So nach dem Motto: Der Raum, der zu erst geheizt wird, macht das um 04:00 also ist um 03:15 der früheste Start des Heizprogramms. Ebenso für Zwischenabsenkungen und die Nachtabsenkung.

Vielen Dank manni für die tolle Arbeit und

Grüße nach Kasachstan