Buderus KM200 Kommunikationsmodul

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

Vorheriges Thema - Nächstes Thema

AndiL

Moin Sailor,

ZitatVersuche mal dennoch die zweiten Leerzeichen in der Config rauszuschmeissen.

Habe ich gemacht. Es war leider kein Unterschied feststellbar :'(

Ich habe dann noch Werte beim DoNotPoll hinzu- und andere rausgenommen. Die Syntax in der Config war aber immer korrekt. Ein zweites Leerzeichen ist nicht mehr aufgetaucht. Configfummlerei kann ich ausschließen weil ich dieses Device wirklich ausschließlich über das Frontend bearbeite.

Was ich jetzt noch mal definitiv beobachtet habe ist folgendes.
Nochdem speichern des attr DoNotPoll über die Eingabezeile unter Attributes werden die dort gelisteten Readings für einen Abfragezyklus ausgespart sind aber in der Readingsliste noch anwesend.
Beim nächsten Abfragezyklus sind sie wieder alle dabei und haben wie alle anderen den aktuellen Zeitstempel.
Das Überspringen der Readings hab ich unter dem Screen Readings1Poll.jpg. erwischt. Schön sieht man da wie er unten die zwei sinnfreien Werte -3276.8 überspringt, ab dem nächsten Durchlauf werden sie wieder abgefragt.

Wenn ich der einzige bin bei dem das so ist, können wir das gerne unter Schönheitsfehler ablegen. Außer etwas erhöhtem Traffic passiert ja nix. Hält ja die Schaltkreise fit  ;D

Viel mehr freuen würde ich mich wenn bei mir die Set-Befehle für die Raumtemperatur funktionieren würden. Da gehen leider nur die Sachen die mich eigentlich nicht interessieren. Das neu entdeckte SetTemperature für das Warmwasser kann ich wunderbar mit Bestätigung über FHEM modifizieren, nur in der Heizung ändert sich leider nichts, da bleibt der alte Wert :'(

Schönen Sonntag noch
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....

grossi33

Hallo Sailor,

folgende Services im aktuellen Modul für die Buderus WPS-1
im Bezug auf Warmwasser sind vorhanden bzw. fehlen:

vorhanden:
/dhwCircuits/dhw1/actualTemp
/dhwCircuits/dhw1/setTemperature
dhwCircuits/dhw1/operationMode

fehlen z.Z. noch:
/dhwCircuits/dhw1/activeDhwTimeProgram
/dhwCircuits/dhw1/currentSetpoint
/dhwCircuits/dhw1/dhwTimePrograms
/dhwCircuits/dhw1/dhwSpLevels
/dhwCircuits/dhw1/extraDhw

Grüsse.

Grossi3

grossi33

Nochmal Hallo,

anbei die aktuellen Services für die WPS-1 (siehe pdf-Anhang).

Grüsse.

Grossi33

DLindner

Wer mit Wireshark KM200 Pakete analysieren will und eine Fritzbox sein eigen nennt, kommt auch einfacher an die XMPP-Pakete.
Fritzbox mit folgender URL starten http://fritz.box/html/capture.html oder http://<ip>/html/capture.html, Routing-Schnittstelle aussuchen und den Button start drücken. Die Fritzbox zeichnet dann alle Pakete auf und speichert diese in einer Datei. Nun kann man mit der Easy Controll Aktionen starten. Anschließend auf den Button Stop und die Datei wird gespeichert.
Wireshark öffnen, Datei auswählen, unter dem Menü-Pkt. Analyse - Display-Filters und IP-Adresse der KM200 auswählen und man sieht den gesamten Traffic zwischen der KM200 und Bosch.

DLindner

Hallo, beim Testen ist mir etwas aufgefallen. Alle Settings, die aus einem String bestehen funktionieren, wie OperationMode auf auto, day oder night, Schaltprogramme auf Familie oder Eigen1. Settings mit numerischen Werten wie Temperatur funktionieren (noch) nicht.

Gruß Dlindner

AndiL

Hallo Dlindner,

bei anderen scheint es zu funktionieren.
Teste bei Dir doch bitte mal die DoNotPoll Funktion.
Falls das auch klemmt hätten wir ein identisches Fehlerbild.

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

Hallo AndiL, ich bekomme zwar auch nicht alle services zu sehen, aber das wollte ich nicht mitteilen. In einem früheren Post kam mal zur Sprache, dass Temperaturwerte zwar übergeben werden konnten, diese sich im RC35 aber nicht änderten. Dass Sailor auf seinen anschließenden Get nachdem den Wert vom km200 zurückbekommt, sagt nicht, dass dieser auch zur Änderung in der RC35 geführt hat. Ich habe z.B. folgendes in die Konsole eingegeben: set heizung /heatingCircuits/hc2/temperatureLevels/day Teddybär. Blödsinnig aber der anschließende get Heizung /heatingCircuits/hc2/temperatureLevels/day brachte als Ergebnis Teddybär.
Die Lösung mit den Temperaturwerten (numerischen Werten) liegt darin, den String-Wert von z.B. "25" in einen numerischen zu wandeln. Dazu habe ich im 73_km200-Modul an folgender Stelle eine Änderung vorgenommen:
sub km200_Set($@)
{
...........
        ### Save chosen service and value into hash
        $hash->{temp}{service}  = $opt;
        $hash->{temp}{postdata} = $value; ---> $hash->{temp}{postdata} = $value*1;
...........
}
Nun akzeptiert die RC35 den übergebenen Wert. Kann natürlich so nicht drin stehenbleiben, da Services wie /heatingCircuits/hc2/operationMode einen String wie "auto" oder "day" erwarten.

Gruß DLindner


AndiL

Hallo Dlindner,

ich wäre erfreut wenn es so einfach wäre.
Werde die Änderung im Modul mal testen.

Würde doch bedeuten, daß das Senden von "Zahlen" auch bei anderen noch nie funktionieren konnte??????

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

Nur kann die Änderung so nicht stehen bleiben. Perl macht aus z.B. "auto" * 1 = "" bzw. "0".  wie beim setzen von operationMode. Man muss vorher herausfinden, ob der Wert rein numerisch ist (also nur Zahlen enthält) oder alpha-numerisch (Eigen1 oder Familie1, hier käme 1 heraus.) . 

AndiL

Ok. Dann halte ich mal zurück.

Evt. helfen Sailor deine Erkenntnisse weiter.
Geben wir Ihm doch etwas Zeit.

Heizperiode ist eh bald gelaufen.
Am Sonntag stand auf dem RC35 das erste mal dieses Jahr SOMMERBETRIEB.

Ist diese Betriebsart eigentlich auch irgendwo in einem der Readings versteckt?
In Klartext ist sie mir zumindest nicht aufgefallen.

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

Habe einfach mal folgendes geändert:
        if (($value)*1 == 0) {
                $hash->{temp}{postdata} = $value;
        } else {
                $hash->{temp}{postdata} = $value*1;
        }
Scheint zu funktionieren. Ich kann alle Temperaturen über Fhem setzen und die Modi-Umschaltungen von Auto auf Day/Night funktionieren auch. Was nicht funtioniert ist das Ändert von Programmen z.B. von Eigen1 auf Familie1, wie ich bereits erwähnt habe.

DLindner

Meine Einschränkung war unberechtigt. Sobald in $VALUE ein  alpha-Zeichen vorkommt, ergibt die Abrage $VALUE*1 immer 0. 

DLindner

Kann jetzt schön meine Temperaturen einstellen  8)

AndiL

Hallo DLindner,

habe mit freudiger Erwartung Deine Änderung im Modul eingegeben.
Reload 73_km200.pm und gleich mal eine Temperatur geändert.
:'( nix gebracht.
Auto/Day/Night Umschaltung funktioniert wie gehabt. Temperaturen werden zwar quittiert aber die Heizung hat nichts geändert.

Bleibt das Restrisiko das ich im Modul was falsch eingetragen habe. Wärst Du so nett unten mal einen Blick drauf zu werfen ob ich die richtige Stelle gefunden habe.

Übrigens sehr schicke ReadingsGroup für die Heizung. Wenn es nicht unverschämt ist, würden sich bestimmt auch andere über die Definitionen als Inspiration freuen. In das Wiki zum km200 würden sie sicher auch gut passen.

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

Hallo Andil, hast Du Fhem neu neu gestartet nach der Änderung?