Buderus KM200 Kommunikationsmodul

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

Vorheriges Thema - Nächstes Thema

DLindner

#675
Hallo HarryHase, hier Reading zu dem Bild.
Zitat
// heizung muss ersetzt werden durch den Bezeichner aus der km200 Definiton
define 02Temperaturen readingsGroup heizung:<%temp_temperature@yellow>,<Außen-Temperatur>,/system/sensors/temperatures/outdoor_t1
heizung:<%sani_water_hot@yellow>,<Warmwasser-Soll>,/dhwCircuits/dhw1/setTemperature
heizung:<%sani_water_hot@yellow>,<Warmwasser-Ist>,/dhwCircuits/dhw1/actualTemp
heizung:<%sani_supply_temp@yellow>,<Vorlauf-Soll>,/system/sensors/temperatures/supply_t1_setpoint
heizung:<%sani_supply_temp@yellow>,<Kessel-Vorlauf>,/system/sensors/temperatures/supply_t1
heizung:<%sani_supply_temp@yellow>,<Weichen-Vorlauf>,/system/sensors/temperatures/switch
heizung:<%sani_return_temp@yellow>,<Rücklauf-Ist>,/heatSources/returnTemperature
heizung:<%sani_buffer_temp_all@yellow>,<Temp.-Differenz>,/dhwCircuits/dhw1/waterFlow     <= //Dummy Reading für Vorlauf-Rücklauf-Differenz

attr 02Temperaturen alias .Temperaturen  <= Ersetzen der Überschrift, sonst würde dort 02Temperaturen stehen
attr 02Temperaturen cellStyle { "r:1,c:3"=>'style="font-weight:bold;;;;font-size:16px"',"r:8,c:3"=>'style="font-weight:bold;;;;font-size:16px"'}  <= Formatierung Zeile(r), Spalte(c)
attr 02Temperaturen group HK,PlWerte  <= Reading ist zwei Gruppen zugeordnet HK und PlWerte
attr 02Temperaturen nameStyle style="color:white;;text-align:left"  <= Style der Bezeichnungen wie z.B. <Außen-Temperatur
attr 02Temperaturen room Übersicht,Heizkurven  <= Reading wird in 2 Räumen angezeigt Übersicht und Heizkurven
attr 02Temperaturen valueFormat {if($READING eq "/dhwCircuits/dhw1/waterFlow"){my $t1=ReadingsVal($DEVICE,'/system/sensors/temperatures/supply_t1',0);;;;my $d1=ReadingsVal($DEVICE,'/heatSources/returnTemperature',0);;;;$VALUE=sprintf("%.1f &deg;;C",($t1-$d1))}else{$VALUE=sprintf("%.1f &deg;;C",($VALUE))}}
attr 02Temperaturen valueStyle {if($READING eq "/dhwCircuits/dhw1/actualTemp"){my $t=$VALUE;;;;my $d=ReadingsVal($DEVICE,'/dhwCircuits/dhw1/setTemperature',0);;;;if($d-$t>=30){'style="color:lightblue;;;;text-align:right;;;;font-weight:bold;;;;"'}elsif($t-$d>=1){'style="color:yellow;;;;text-align:right;;;;font-weight:bold;;;;"'}else{'style="color:lightgreen;;;;text-align:right;;;;font-weight:bold;;;;"'}}elsif($READING eq "/system/sensors/temperatures/supply_t1"){my $t1=$VALUE;;;;my $d1=ReadingsVal($DEVICE,'/system/sensors/temperatures/supply_t1_setpoint',0);;;;if($d1-$t1>=2){'style="color:lightblue;;;;text-align:right;;;;font-weight:bold;;;;"'}elsif($t1-$d1>=2){'style="color:red;;;;text-align:right;;;;font-weight:bold;;;;"'}else{'style="color:lightgreen;;;;text-align:right;;;;font-weight:bold;;;;"'}}elsif($READING eq "/system/sensors/temperatures/switch"){my $t1=$VALUE;;;;my $d1=ReadingsVal($DEVICE,'/system/sensors/temperatures/supply_t1_setpoint',0);;;;if($d1-$t1>=2){'style="color:lightblue;;;;text-align:right;;;;font-weight:bold;;;;"'}elsif($t1-$d1>=2){'style="color:red;;;;text-align:right;;;;font-weight:bold;;;;"'}else{'style="color:lightgreen;;;;text-align:right;;;;font-weight:bold;;;;"'}}elsif($READING eq "/system/sensors/temperatures/outdoor_t1"){if($VALUE<=14){'style="color:lightblue;;;;text-align:right;;;;font-weight:bold;;;;"'}elsif($VALUE<=25){'style="color:yellow;;;;text-align:right;;;;font-weight:bold;;;;"'}else{'style="color:red;;;;text-align:right;;;;font-weight:bold;;;;"'}}elsif($READING eq "/dhwCircuits/dhw1/waterFlow"){my $t1=ReadingsVal($DEVICE,'/system/sensors/temperatures/supply_t1',0);;;;my $d1=ReadingsVal($DEVICE,'/heatSources/returnTemperature',0);;;;$VALUE=($t1-$d1);;;;if($VALUE>=5){'style="color:lightgreen;;;;text-align:right;;;;font-weight:bold;;;;"'}else{'style="color:lightblue;;;;text-align:right;;;;font-weight:bold;;;;"'}}else{'style="color:white;;;;text-align:right";;;;'}}  <= Formatierungen der Werte bevor sie angezeigt werden

Gute Beispiele gibt es im Wiki ReadingsGroup "http://www.fhemwiki.de/wiki/ReadingsGroup". Dort habe ich mir alles zusammengesucht.

Sailor

Hallo Christian

Zitat von: Morkin am 24 März 2015, 16:29:20
Daher bin ich einmal etwas tiefer in die Kommunikation eingestiegen. Auch wenn die aktuelle Version 44
einen Temperaturwert als numerisch erkennt, sieht das Stück JSON, bevor es in der Methode
"km200_PostSingleService" kodiert und abgeschickt wird, so aus:
{"value":"17"}
Die Zahl wird also leider immer noch als String übergeben.

Um zu schauen, wie die Buderus-App das macht, habe ich mit der FritzBox den Netzwerktraffic
mitgeschnitten und die Parameter anschließend wieder dekodiert. Hier wird erwartungsgemäß
{"value":17}
übergeben.

Hmm... das ist eine Sache die ich mir mal genauer ansehen sollte.
Danke für den Hinweis!

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

Sailor

Anfrage

Wer von Euch hat Lust, eine Tabelle zu erstellen, welche von den verschiedenen Usern die Konfiguration enthält?
Ich glaube dies erleichtert die Sache der Fehlersuche ungemein un da hier jeder die Konfiguration ohnehin bekannt gegeben hat, sehe ich da auch kein Datenschutzproblem.

Bei Software gehe ich stillschweigend vom letzten Stand aus. Ggf.: öfter mal ein Update fahren. (fhem-update, apt get update/upgrade etc.)

Beispiel anhand meiner Konfiguration:

User:             Sailor
KM:               KM200
Firmware:      (Habe ich gerade vergessen)  :o
fhem-Host:    Raspberry Pi B
OS:               Raspbian
Buderus-RC:   RC300
Buderus-BC:   BC25
Buderus-CH:   GB172-14
Connection:    CAT6 LAN (WLAN; PLAN etc.)
Switch/Hub:    Ja: HP1410-16G
Router:            FritzBox3790

Gruss
    Sailor

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

Stefan M.

#678
Hallo zusammen
wo soll die Tabelle denn liegen und in welchem Format ?
Können wir die nicht gleich ins Wiki einpflegen?

Ich fang mal eine Google Tabelle an.

Bitte Info an stefan.muehlbauer(at)gmail.com

lg
Stefan
FHEM auf 3 x RaspberryPi, 1 x Fritzbox,1 x Win. FS20 über CUL, HomeMatic über HMLan, 6 x  HM_CC_RT_DN,2 x HM_LC_BL1_FM,3 x HM_SEC_KEY,2 x HM_RC_Key4_2,7 x HM_SEC_SC,1 x HM_SEC_WDS,1 x HM_Sen_RD_O, 1x HM_Sen_Wa_Od,2 x HM_RC_Key4_2, 5 x HM-ES-PMSw1-Pl,1 x HM_LC_SW4_WM,1 x HM_SCI_3_FM

Sailor

Status

Hallo zusammen

aufgrund privater sowie beruflicher Inanspruchnahme meinerseits hier nur der Hinweis: Ich arbeite noch am 73_km200 - Modul wenn auch zur Zeit etwas eingeschränkt!


Lister der mir bekannten und offenen Punkte die ich zur Zeit als Problem innerhalb des Moduls sehe:

BSxxxx: Bug-Symptom
BFxxxx: BugFix (Möglichkeit und way-forward)

BS0001) Manche Werte insbesondere Zahlen lassen sich nicht schreiben.
BF0001) Hier muss ich noch genau untersuchen weshalb manche Werte nicht als Zahlen verstanden obwohl diese als solche übergeben werden...  Insbesondere /heatingCircuits/hc1/temperatureLevels/comfort2 und /heatingCircuits/hc1/temperatureLevels/eco lassen sich selbst bei mir nicht verändern.

BS0002) Sporadisches Verschlucken beim get/set Befehl
BF0002) Setzen eines Flag im Geräte-hash, sobald "individiual get" oder "-set" durchläuft und pausieren der dynamischen und statischen Abfrage.

BS0003) Keine Einheiten im DbLog
BF0003) X_DbLog_splitFn verwenden. Allerdings rätsel ich noch, wie ich an den Geräte - hash komme da dieser nicht übermittelt wird. Forum

BS0004) Keine Fehlerberichte als Reading verfügbar.
BF0004) Ich hoffe meine Heizung spukt bald mal einen Fehler aus, damit ich einen testen kann. In dieser Beziehung läuft sie leider sehr zuverlässig. :-)

BS0005) Keine Recordings als Reading verfügbar.
BF0005) Der Service "Recordings" ist bisher noch von keinem User (mit Daten gefüllt) entdeckt worden. Aus diesem Grunde sehe ich zur Zeit hierbei die Prio ganz unten.

BS0006) Kein Schreiben der Wochenprograme möglich
BF0006) set Befehl entsprechend umschreiben...


Liste der Prioritäten
1) BF0001
2) BF0006
3) BF0002
4) BF0004
5) BF0003
6) BF0005


Bitte gerne vervollständigen

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

Sailor

Hallo Stefan

Zitat von: Stefan M. am 25 März 2015, 13:16:08
Hallo zusammen
wo soll die Tabelle denn liegen und in welchem Format ?
Können wir die nicht gleich ins Wiki einpflegen?

Ich fang mal eine Google Tabelle an.

Bitte Info an stefan.muehlbauer@gmail.com

lg
Stefan

Im Wiki sehe ich diese Liste nicht so ganz richtig am Platze, da sie ja keine Anleitung darstellt sondern nur uns zur Fehlersuche und Fehlereingrenzung dient.

Eine Google-Liste oder eine Liste in einem der Beiträge halte ich da schon für besser.

Ich werde dann meinen allerersten Beitrag dieses Threads dazu verwenden entsprechende Links einzusetzen.

Gruß
    Sailor

PS: Mach mal deine email-Adresse etwas unkenntlich für Roboter. Sonst wirst Du bloß mit Emails vollgepumpt
******************************
Man wird immer besser...

Stefan M.

FHEM auf 3 x RaspberryPi, 1 x Fritzbox,1 x Win. FS20 über CUL, HomeMatic über HMLan, 6 x  HM_CC_RT_DN,2 x HM_LC_BL1_FM,3 x HM_SEC_KEY,2 x HM_RC_Key4_2,7 x HM_SEC_SC,1 x HM_SEC_WDS,1 x HM_Sen_RD_O, 1x HM_Sen_Wa_Od,2 x HM_RC_Key4_2, 5 x HM-ES-PMSw1-Pl,1 x HM_LC_SW4_WM,1 x HM_SCI_3_FM

AndiL

Hi Stefan,

warst schneller wie ich.
Wollte meine Liste gerade freigeben....
Nimm doch bitte noch Serie,Version-Hardware und Systembus hinzu.

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....

Stefan M.

Hi AndiL
sorry.

zusätzliche Spalten sind drin.

kannst Du mir Deine Daten schicken?

lg
Stefan
FHEM auf 3 x RaspberryPi, 1 x Fritzbox,1 x Win. FS20 über CUL, HomeMatic über HMLan, 6 x  HM_CC_RT_DN,2 x HM_LC_BL1_FM,3 x HM_SEC_KEY,2 x HM_RC_Key4_2,7 x HM_SEC_SC,1 x HM_SEC_WDS,1 x HM_Sen_RD_O, 1x HM_Sen_Wa_Od,2 x HM_RC_Key4_2, 5 x HM-ES-PMSw1-Pl,1 x HM_LC_SW4_WM,1 x HM_SCI_3_FM

AndiL

Hallo nochmal,

habe Dir beim Arbeiten zugeguckt  :)

Du kannst die Liste ja für eine Zeit lang für alle die den Link kennen freigeben und wir können uns dann eintragen.
Falls Du das händeln willst meine Daten sind in Antwort #661.

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....

Stefan M.

Hi AndiL
dann geb ich die Tabelle mal frei.

@All Bitte Daten die nächsten Tage nachtragen.

lg
Stefan

FHEM auf 3 x RaspberryPi, 1 x Fritzbox,1 x Win. FS20 über CUL, HomeMatic über HMLan, 6 x  HM_CC_RT_DN,2 x HM_LC_BL1_FM,3 x HM_SEC_KEY,2 x HM_RC_Key4_2,7 x HM_SEC_SC,1 x HM_SEC_WDS,1 x HM_Sen_RD_O, 1x HM_Sen_Wa_Od,2 x HM_RC_Key4_2, 5 x HM-ES-PMSw1-Pl,1 x HM_LC_SW4_WM,1 x HM_SCI_3_FM

Sailor

Hallo Stefan

Zitat von: Stefan M. am 25 März 2015, 14:06:38
dann geb ich die Tabelle mal frei.

Danke!

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

DLindner

Hallo Sailor,

ZitatBS0004) Keine Fehlerberichte als Reading verfügbar.
BF0004) Ich hoffe meine Heizung spukt bald mal einen Fehler aus, damit ich einen testen kann. In dieser Beziehung läuft sie leider sehr zuverlässig. :-)
Setz doch einfach einmal unter Einstellungen-Anlagendaten einen Heizkreis, den es nicht gibt. Die Frage "Wieviele gemischte Heizkreise sind installiert?" einfach mal um 1 erhöhen. Fehler kann man später wieder löschen. Anlage bleibt auch nicht stehen.

Vieleicht von mir eine Anregung: Es gibt mittlerweile zig Services die es bei mir nicht gibt. Gutes Beispiel ist zum Beispiel "/heatingCircuits/hc2/switchPrograms/A", dafür gibt's bei mir "/heatingCircuits/hc2/switchPrograms/Eigen1" (habe ich in die 73_km200 eingetragen). Die vorhanden Switchprogramme ergeben sich aus der Auswertung von "/heatingCircuits/hc2/switchPrograms". Andere Beispiele sind,  "/heatingCircuits/hc2/temperatureLevels/comfort2", "/heatingCircuits/hc2/temperatureLevels/eco", "/heatingCircuits/hc2/temperatureLevels/exception". Mein Vorschlag wäre, dass man solche Services in eine definierte Datei auslagert, die beim Update nicht überschrieben wird (wie 99_myUtils) und vom 73_km200-Modul eingelesen wird. Über ein Attr wird der Pfad zur Datei angegeben (hat ja vl. auch nichts im Ordner FHEm zu suchen.

Ferner möchte ich mich mal dransetzen ein (reading=Eingabeoberfläche) für die Heizprogramme anzufertigen (unabhängig vom Zurückschreiben erst einmal). Du hast aber in 0044 die Ausgabe formatiert. Bleibt das so, oder wird sich nochwas ändern? Wenn nein, kann man hier vielleicht ein Array für jeden Tag zurückgeben?



AndiL

Hallo Grossi33,

Du hast in der Googleliste nach der Außentemperatur gefragt.
Die verbirgt sich hinter dem Reading

/system/sensors/temperatures/outdoor_t1

bei mir gerade 8,4°.

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....

DLindner

??? Sailor

Hatte nicht gesehen, dass du das Heizprogramm-Reading aufteilst (kann mich nicht anders ausdrücken.