Buderus KM200 Kommunikationsmodul

Begonnen von Sailor, 21 Juli 2014, 12:39:47

Vorheriges Thema - Nächstes Thema

grossi33

Hallo zusammen,

habe hier mal im pdf-Anhang die verfügbaren Services aufgelistet, mit Beispielen versehen und auch 2 "gefunden",
die nicht durch das aktuelle FHEM-Modul abgedeckt werden (Stand: 20.02.15).

Vielleicht kann die Forengemeinde hier noch was zur Verbesserung beitragen!?

Danke nochmal an Sailor und bis bald.

grossi33

AndiL

Hallo Buderusheizer,

zuerst einmal ein dickes Lob und vielen Dank an Sailor uns hier ein Modul zur Verfügung zu stellen damit man mit der Heizung mal was anfangen kann.

Ich bin noch relativ frisch im FHEM Thema und hauptsächlich am Lesen und Probieren, habe aber bis jetzt schon einiges zum Laufen gebracht.  Jetzt ist der Leidensdruck aber so groß geworden, dass ich mich mit einer Frage an Euch und im speziellen an den Modulentwickler wenden muß.

Ich habe folgende Hardware:
Buderus GB152 mit RC35 und KM200 (Firmware Version 01.09.04)
Raspi B+ alle Perl-Module gemäß Wiki installiert. Lief alles glatt bis auf cpanm HttpUtils, dieses Modul wurde nicht gefunden.
Abschließendes Update/Upgrade alles aktuell.

Fhem info:
  Release  : 5.6
  OS       : linux
  Arch     : arm-linux-gnueabihf-thread-multi-64int
  Perl     : v5.14.2

73_km200.pm 0040 2015-01-20 22:15:00Z Matthias_Deeke

Bei mir treten folgende Probleme auf:
1. DoNotPoll funktioniert bei mir nur einmal. Ein Neustart (wie hier schon mal gelesen) hilft nicht. Es werden immer alle (außer den Systemdaten Version Firmware Hardware etc.) abgerufen.

2. Abstürze oder Hängenbleiben konnte ich nicht beobachten. Das Modul läuft schon fast zwei Wochen ohne zu stören. Nach einem Neustart von FHEM nimmt es aber selbständig seine Arbeit nicht auf. Ich muß immer den DEF Editor öffnen und den Definitionsknödel mit der IP und den Passworten schicken. (Passworte haben keine Leerzeichen oder Sonderzeichen) Dann ist es als ob ein Knoten platzt und die Readings kommen rein. Außerdem taucht oben nach Browseraktualisierung mit F5 der bisher nicht vorhandene set Knopf mit seiner Zeile auf.

3. Wenn ich mit set an

/heatingCircuits/hc1/temperatureLevels/day oder
/heatingCircuits/hc1/temperatureLevels/night oder
/heatingCircuits/hc1/temperatureRoomSetpoint

Änderungen vornehme werden mir diese wunderbar bestätigt, allerdings bleiben in der Heizung die Werte unverändert.

/heatingCircuits/hc1/operationMode oder /heatingCircuits/hc1/activeSwitchProgram kann ich einwandfrei manipulieren. LEDs am RC35 schalten auch entsprechend.

Mit der BuderusApp lassen sich die temperaturLevels für Tag/Nacht manipulieren. Für mehr taugt die App auch nicht. Warmwasser und Systemzustände werden dort nicht angezeigt.

Frage in die Runde: Gibt es hier jemand bei dem die Temperaturlevels in Verbindung mit einem RC35 über FHEM ändern lassen?

4. Dann spamt mir das Modul die Logdatei zu. Das ist eigentlich mein größtes Problem weil ich keinen Ansatz finde wo ich da suchen muß. Da eine Pfadangabe mit system/sensors enthalten ist muß es ja irgendetwas mit dem KM200-Modul zu tun haben.


2015.02.20 18:22:31 1: PERL WARNING: Having no space between pattern and following word is deprecated at (eval 1650) line 1.
2015.02.20 18:22:31 1: PERL WARNING: Bareword found where operator expected at (eval 1650) line 1, near "/system/sensors"
2015.02.20 18:22:31 2: syntax error at (eval 1650) line 1, near "/system/sensors"

2015.02.20 18:22:31 1: PERL WARNING: Having no space between pattern and following word is deprecated at (eval 1651) line 1.
2015.02.20 18:22:31 1: PERL WARNING: Bareword found where operator expected at (eval 1651) line 1, near "/system/sensors"
2015.02.20 18:22:31 2: syntax error at (eval 1651) line 1, near "/system/sensors"

2015.02.20 18:22:31 1: PERL WARNING: Having no space between pattern and following word is deprecated at (eval 1652) line 1.
2015.02.20 18:22:31 1: PERL WARNING: Bareword found where operator expected at (eval 1652) line 1, near "/system/sensors"
2015.02.20 18:22:31 2: syntax error at (eval 1652) line 1, near "/system/sensors"


Die Meldung werden doch recht häufig erzeugt und müllen mir die ganze Logdatei voll. Ich habe auch mal Lücken gefunden wo ein paar Stunden Ruhe war. Die Zahlen in der Klammer werden hochgezählt und kommen auch schon mal in den sechsstelligen Bereich.

5. Das die Readings auch im Eventmonitor auftauchen sollte ja auch nicht sein. Das Problem hatte auch schon mal ein anderer Nutzer. Dürfte ja eigentlich in der aktuellen Version nicht mehr vorkommen. CONSOLENMESSAGE war und ist schon immer auf Null.

Ich habe jetzt während dem Schreiben noch mal alles nachgestellt und auch die Bildschirme gesnippt und angehängt. Wäre entzückt wenn man mir helfen könnte und das Modul richtig rund laufen würde.

Grüße
Andi



FHEM 5.8 auf RasPi 3
***********************************
FB 7390, FS20, HM mit USB-CFG, 1-wire (DS1820 und DS2408), Buderus KM200 mit GB 152, Phillips HUE und Bastelkram....

Sailor

Hallo Grossi

Zitat von: grossi33 am 20 Februar 2015, 18:25:35
Nicht im KM200 Modul, aber scheinbar von der Wärmepumpe zusätzlich gelieferter Service:
/gateway/language
/recordings/system/sensors/outdoorTemperatures

Danke, aufgenommen in Version 0041

Zitat von: grossi33 am 20 Februar 2015, 18:25:35
Die aktuelle Warmwassertemperatur ist in der APP zu finden (und einstellbar), aber
nicht im KM200-FHEM-Modul.  :'(

Auch nicht unter fogelndem Service?: /system/sensors/temperatures/hotWater_t2

Gruss
   Sailor
******************************
Man wird immer besser...

Sailor

Hallo Grossi

Zitat von: grossi33 am 20 Februar 2015, 19:28:11
habe hier mal im pdf-Anhang die verfügbaren Services aufgelistet, mit Beispielen versehen und auch 2 "gefunden",
die nicht durch das aktuelle FHEM-Modul abgedeckt werden (Stand: 20.02.15).

Danke aufgenommen in Version 0041

Gruss
    Sailor
******************************
Man wird immer besser...

Sailor

Zitat von: AndiL am 20 Februar 2015, 21:37:37
Hallo Buderusheizer,

zuerst einmal ein dickes Lob und vielen Dank an Sailor uns hier ein Modul zur Verfügung zu stellen damit man mit der Heizung mal was anfangen kann.
[CUT]

Gallo Andi

Danke fuer das Lob. Die beschriebenen Symptome lassen auf eine sehr alte Verison schliessen.
Mache bitte mal ein fhem-Update ("update" in der fhem-Console) und stelle sicher, dass du mindestens Version 0040 hast.

Gruss
    Sailor
******************************
Man wird immer besser...

grossi33



Auch nicht unter fogelndem Service?: /system/sensors/temperatures/hotWater_t2

Gruss
   Sailor
[/quote]

Hallo,

Nein - scheint unter: /recordings/dhwCircuits
zu liegen (denke ich) ???

Zusätzlich:
1.) In der App kann ich Stunden für "Extra Warmwasser" einstellen - habe ich hier noch nicht gefunden.
2.) In der App kann ich "Holiday"-Modus (Tage, beginnend mit 0:00Uhr) einstellen - scheint hier unter Services:
/heatingCircuits/hc1/holidayMode bzw. /heatingCircuits/hc2/holidayMode

grossi




AndiL

Hallo Sailor,

Ich mache gerne nochmal ein Update.
Allerdings siehst Du ja auf meinem ersten angefügtem Bild unten bei Version das ich die 0040 habe.

Gruß
Andi
FHEM 5.8 auf RasPi 3
***********************************
FB 7390, FS20, HM mit USB-CFG, 1-wire (DS1820 und DS2408), Buderus KM200 mit GB 152, Phillips HUE und Bastelkram....

AndiL

#517
Hallo Sailor,

System ist aktuell.
KM200-Moduldatei ist letzte Version.
Die in #511 geschilderten Probleme sind vollumfänglich bestehen geblieben.

Wie gesagt das einzige was geklemmt hat waren die HttpUtils Perl Module.
(Screen im Anhang)

Könnte da das Problem liegen.
Gibt es einen anderen Weg an die HttpUtils zu kommen?

Gruß
Andi
FHEM 5.8 auf RasPi 3
***********************************
FB 7390, FS20, HM mit USB-CFG, 1-wire (DS1820 und DS2408), Buderus KM200 mit GB 152, Phillips HUE und Bastelkram....

KaiKr

Hi,

ich lese hier schon länger mit, gehe allerdings nicht über FHEM an das KM200,  sondern bastele mir was mit Nodejs.

Neben den bisher Bekannten (fhemwiki) habe ich noch den Zweig für das Warmwasser gefunden. Ich habe übrigens eine GB135 mit RC30.

{ id: '/dhwCircuits/dhw1/operationMode',
  type: 'stringValue',
  writeable: 1,
  recordable: 0,
  value: 'off',
  allowedValues: [ 'auto', 'on', 'off' ] }
{ id: '/dhwCircuits/dhw1/waterFlow',
  type: 'floatValue',
  writeable: 0,
  recordable: 0,
  value: 0,
  unitOfMeasure: 'l/min',
  minValue: 0,
  maxValue: 25 }
{ id: '/dhwCircuits/dhw1/workingTime',
  type: 'floatValue',
  writeable: 0,
  recordable: 0,
  value: 221239,
  unitOfMeasure: 'minutes',
  minValue: 0,
  maxValue: 16777215 }
{ id: '/dhwCircuits/dhw1/activeSwitchProgram',
  type: 'stringValue',
  writeable: 1,
  recordable: 1,
  value: 'Eigen1',
  allowedValues: [ 'Eigen1', 'Heizkreis' ] }
{ id: '/dhwCircuits/dhw1/setTemperature',
  type: 'floatValue',
  writeable: 1,
  recordable: 1,
  value: 70,
  unitOfMeasure: 'C',
  minValue: 30,
  maxValue: 80 }
{ id: '/dhwCircuits/dhw1/actualTemp',
  type: 'floatValue',
  writeable: 0,
  recordable: 1,
  value: 52.7,
  unitOfMeasure: 'C' }
{ id: '/dhwCircuits/dhw1/status',
  type: 'stringValue',
  writeable: 0,
  recordable: 0,
  value: 'ACTIVE',
  allowedValues: [ 'INACTIVE', 'ACTIVE' ] }
{ id: '/dhwCircuits/dhw1/temperatureLevels/off',
  type: 'floatValue',
  writeable: 1,
  recordable: 1,
  value: 0,
  unitOfMeasure: 'C',
  minValue: 0,
  maxValue: 0 }
{ id: '/dhwCircuits/dhw1/temperatureLevels/on',
  type: 'floatValue',
  writeable: 1,
  recordable: 1,
  value: 70,
  unitOfMeasure: 'C',
  minValue: 30,
  maxValue: 80 }

Gruß Kai




Gesendet von meinem iPad mit Tapatalk

KaiKr

Hi,

es gab ja auch noch Diskussionen zum Verbrauch. Ich habe mir dazu mal folgende Überlegungen gemacht.
Das KM200 liefert folgende Werte. Für mein Setup GB135 / RC30 ergibt sich folgendes:
/heatSources/workingTime/totalSystem    Brenner an in Minuten
/heatSources/workingTime/secondBurner   Brenner auf Stufe 2 in Minuten
=> secondBurner-totalSystem =           Brenner auf Stufe 1 in Minuten

Laut "Buderus Montage- und Wartungsanleitung" Verbraucht die GB135/18KW: Ölldurchsatz 1./2. Stufe kg/h 0,9/1,6

Mit meinen aktuellen Werten ergibt sich dann:

heatSources/workingTime/totalSystem = 463013 minutes (Stufe 1+2)
/heatSources/workingTime/secondBurner = 288177 minutes (Stufe 2)
174836 (Stufe 1)(totalSystem-secondBurner)

288177 * (1,6/60) + 174836 * (0,9/60) = 10307 l

(Ich habe mal alle Tankrechnungen überschlagen und komme so auf ca 11000 l, allerdings hat meine GB135 seit einiger Zeit eine kaputt Ölpumpe, die in der Stufe 2 mit zu hohem Druck heizt. Daher könnten bei einer korrekt eingestellter Heizung diese Schätzung stimmen)

Zusätzlich kann man aus den Zeiten
/heatSources/workingTime/totalSystem und
/dhwCircuits/dhw1/workingTime   noch das Verhältnis Wasser zu Heizen bestimmen.

Bei mir wäre das :
/heatSources/workingTime/centralHeating 240217
/dhwCircuits/dhw1/workingTime 221239 minutes
Daraus ergibt sich:
52% Heizen und 48% Wasser

Dies ist jetzt alles eine Beobachtung über die letzen 10,5 Jahre. Wenn man die Intervalle kleiner macht, kann man evt noch genauer die Zuordnung Wasser/Heizen abschätzen.

Ist diese Rechnung bei euch auch plausibel ?

Gruß Kai

Peter

Zitat von: KaiKr am 22 Februar 2015, 22:44:38
Hi,

ich lese hier schon länger mit, gehe allerdings nicht über FHEM an das KM200,  sondern bastele mir was mit Nodejs.

Neben den bisher Bekannten (fhemwiki) habe ich noch den Zweig für das Warmwasser gefunden. Ich habe übrigens eine GB135 mit RC30.

{ id: '/dhwCircuits/dhw1/operationMode',
  type: 'stringValue',
  writeable: 1,
  recordable: 0,
  value: 'off',
  allowedValues: [ 'auto', 'on', 'off' ] }
{ id: '/dhwCircuits/dhw1/waterFlow',
  type: 'floatValue',
  writeable: 0,
  recordable: 0,
  value: 0,
  unitOfMeasure: 'l/min',
  minValue: 0,
  maxValue: 25 }
{ id: '/dhwCircuits/dhw1/workingTime',
  type: 'floatValue',
  writeable: 0,
  recordable: 0,
  value: 221239,
  unitOfMeasure: 'minutes',
  minValue: 0,
  maxValue: 16777215 }
{ id: '/dhwCircuits/dhw1/activeSwitchProgram',
  type: 'stringValue',
  writeable: 1,
  recordable: 1,
  value: 'Eigen1',
  allowedValues: [ 'Eigen1', 'Heizkreis' ] }
{ id: '/dhwCircuits/dhw1/setTemperature',
  type: 'floatValue',
  writeable: 1,
  recordable: 1,
  value: 70,
  unitOfMeasure: 'C',
  minValue: 30,
  maxValue: 80 }
{ id: '/dhwCircuits/dhw1/actualTemp',
  type: 'floatValue',
  writeable: 0,
  recordable: 1,
  value: 52.7,
  unitOfMeasure: 'C' }
{ id: '/dhwCircuits/dhw1/status',
  type: 'stringValue',
  writeable: 0,
  recordable: 0,
  value: 'ACTIVE',
  allowedValues: [ 'INACTIVE', 'ACTIVE' ] }
{ id: '/dhwCircuits/dhw1/temperatureLevels/off',
  type: 'floatValue',
  writeable: 1,
  recordable: 1,
  value: 0,
  unitOfMeasure: 'C',
  minValue: 0,
  maxValue: 0 }
{ id: '/dhwCircuits/dhw1/temperatureLevels/on',
  type: 'floatValue',
  writeable: 1,
  recordable: 1,
  value: 70,
  unitOfMeasure: 'C',
  minValue: 30,
  maxValue: 80 }

Gruß Kai




Gesendet von meinem iPad mit Tapatalk
Klasse, vielen Dank !!

Die Services funktionieren an meiner GB172-14 mit RC35 und KM200.

Jetzt rückt die ersehnte Einmalladung in greifbare Nähe...

Verrätst Du wie Du die Services herausgefunden hast ?

Gruß Peter

KaiKr

Hallo Peter,

Ich habe mit Wireshark einen Blick auf die XMPP Pakete der EasyControl Pro geworfen. In dieser App ist mir aufgefallen ist auch die Warmwasser Soll Temperatur zu sehen. In den XMPP Paketen habe ich die URLs mit dhwCircuits entdeckt und dann über die REST Api die anderen URLs erfragt.

Zur Einmalladung habe ich leider noch nichts gefunden. Evt geht es aber, wenn man die Warmwasser jeweils für ca 1h auf aktiv setzt.

Gruß Kai


Gesendet von iPad mit Tapatalk

Peter

Hallo zusammen,

mit den von Kai erforschten Services habe ich mir quick and dirty eine WarmWasser "Einmalladung" zusammengenagelt.

in der 73_km200.pm ergänzt:

"/dhwCircuits",
    "/dhwCircuits/dhw1",
    "/dhwCircuits/dhw1/operationMode",
"/dhwCircuits/dhw1/waterFlow",
"/dhwCircuits/dhw1/workingTime",
"/dhwCircuits/dhw1/activeSwitchProgram",
"/dhwCircuits/dhw1/switchPrograms",
"/dhwCircuits/dhw1/setTemperature",
"/dhwCircuits/dhw1/actualTemp",
"/dhwCircuits/dhw1/status",
"/dhwCircuits/dhw1/temperatureLevels",
"/dhwCircuits/dhw1/temperatureLevels/off",
"/dhwCircuits/dhw1/temperatureLevels/on",


Mein km200 ist definiert als mybud.

Im fhem zunächst ein Dummy zum aktivieren:
define WarmWasser_dummy FS20 bbcd 98
attr WarmWasser_dummy dummy 1
attr WarmWasser_dummy model fs20st


nun ein notify, das die WarmWasser Bereitung anschaltet und ein at setzt, welches 20 Minuten später die Aktion beendet:
define WW_an notify WarmWasser_dummy:on {fhem("define WarmWasser_aus at +00:20:00 set WarmWasser_dummy off");
fhem("set mybud /dhwCircuits/dhw1/operationMode on");
}


der im notify definierte at löscht sich nach getaner Arbeit von selbst.

nun noch noch ein notify welches den WarmWasser Modus wieder auf Automatik setzt:
define WW_auto notify WarmWasser_dummy:off {fhem("set mybud /dhwCircuits/dhw1/operationMode auto");
}


Funktioniert ganz gut, vielleicht hat der ein oder andere noch ein paar Ideen...

Gruß Peter

Sailor

Hallo Andi

Zitat von: AndiL am 22 Februar 2015, 19:00:52
Wie gesagt das einzige was geklemmt hat waren die HttpUtils Perl Module.
(Screen im Anhang)

Könnte da das Problem liegen.
Gibt es einen anderen Weg an die HttpUtils zu kommen?

HttpUtils ist ein Modul, welches Rudolf König für fhem geschrieben hat. Daher sollte es auf Deinem Rechner verfügbar sein.

Ich schau mir das mal an...

Sailor

******************************
Man wird immer besser...

Sailor

Hallo Andi

Zitat von: AndiL am 20 Februar 2015, 21:37:37

2015.02.20 18:22:31 1: PERL WARNING: Having no space between pattern and following word is deprecated at (eval 1650) line 1.
2015.02.20 18:22:31 1: PERL WARNING: Bareword found where operator expected at (eval 1650) line 1, near "/system/sensors"
2015.02.20 18:22:31 2: syntax error at (eval 1650) line 1, near "/system/sensors"

2015.02.20 18:22:31 1: PERL WARNING: Having no space between pattern and following word is deprecated at (eval 1651) line 1.
2015.02.20 18:22:31 1: PERL WARNING: Bareword found where operator expected at (eval 1651) line 1, near "/system/sensors"
2015.02.20 18:22:31 2: syntax error at (eval 1651) line 1, near "/system/sensors"

2015.02.20 18:22:31 1: PERL WARNING: Having no space between pattern and following word is deprecated at (eval 1652) line 1.
2015.02.20 18:22:31 1: PERL WARNING: Bareword found where operator expected at (eval 1652) line 1, near "/system/sensors"
2015.02.20 18:22:31 2: syntax error at (eval 1652) line 1, near "/system/sensors"


Die Meldung werden doch recht häufig erzeugt und müllen mir die ganze Logdatei voll. Ich habe auch mal Lücken gefunden wo ein paar Stunden Ruhe war. Die Zahlen in der Klammer werden hochgezählt und kommen auch schon mal in den sechsstelligen Bereich.


Gehe mal in die 73_km200.pm und kommentiere die Zeile
"/System/sensors",
aus.

Mal schaun was passiert.

Gruss
   Sailor
******************************
Man wird immer besser...