Modul für Buderus Wärmepumpe WPS

Begonnen von mike3436, 15 Januar 2016, 22:57:21

Vorheriges Thema - Nächstes Thema

Szudobaj

Zitat von: Szudobaj am 02 März 2024, 10:35:38
Zitat von: Szudobaj am 28 Februar 2024, 08:58:43hallo an die Profis
ich es läuft
Wie bekomme ich jetzt ein paar Diagramme zu leben.
Sorry aber mit fast 65 ist das alles nicht mehr so einfach
LG Thomas

Bekomme immer die fehlermeldung beim erstellen von Diagrammen

mnt/fhem/log2/ Temperaturen -2024-03.log kann nicht geöffnet werden : Keine solche Datei oder kein solches Verzeichnis
kann jemand helfen
LG Thomas


mike3436

Zitat von: Szudobaj am 02 März 2024, 10:36:34
Zitat von: Szudobaj am 02 März 2024, 10:35:38
Zitat von: Szudobaj am 28 Februar 2024, 08:58:43hallo an die Profis
ich es läuft
Wie bekomme ich jetzt ein paar Diagramme zu leben.
Sorry aber mit fast 65 ist das alles nicht mehr so einfach
LG Thomas

Bekomme immer die fehlermeldung beim erstellen von Diagrammen

mnt/fhem/log2/ Temperaturen -2024-03.log kann nicht geöffnet werden : Keine solche Datei oder kein solches Verzeichnis
kann jemand helfen
LG Thomas


Meine Beispiele beziehen sich auf ein gemountetes Laufwerk "/mnt/fhem/log2".
Normalerweise werden die logfiles im FHEM Verzeichnis unter "log" abgelegt.

Dein Verzeichnisname "mnt/fhem/log2/ Temperaturen -2024-03.log" enthält Leerzeichen, was meistens falsch ist - Leerzeichen dienen zum Trennen vor Parametern und haben somit im Verzeichnispfad nichts zu suchen.
Richtig wäre hier "/mnt/fhem/log2/Temperaturen-2024-03.log" wenn du unter /mnt ein Laufwerk als Verzeichnis fhem gemountet hast welches ein Untervereichnis log2 besitzt.

Mit der Standardinstallation legt man die logfiles meistens unter "./log/myKM273-%Y-%m.log".
Hierbei ist wichtig, dass wenn FHEM auf einem PI mit SD-Karte läuft auf der kontinuierlich geloggt wird, die SD Karte meistens nach 6 Monaten defekt ist. Aus diesem Grund benutze ich ein externes Laufwerk.

Ohne externes Laufwerk kannst du das Logging wie folgt parametrieren:
define FileLog_KM273 FileLog ./log/myKM273-%Y-%m.log myKM273
attr FileLog_KM273 logtype text
attr FileLog_KM273 room filelog
KNX Hausautomatisierung, RPi mit FHEM, Jeelink + LaCrosse, HM_LAN + KeyMatic, Somfy IO Rollladen mit Tahoma und KLF200, Buderus WPS mit USBTin und KM200

Szudobaj

Hallo Mike, mein Ordner war opt/fhem/log2...
aber wenn die SD Karte in einem halben Jahr schlapp macht, dann werde ich wohl mal eine Extern Platte ranbasteln.
Das auslesen klappt leider nur bei ein paar Parametern, es liegt wohl an der Firmware 1.7.
Im Anhang mal meine Lesung
LG thomas

mike3436

Zitat von: Szudobaj am 05 März 2024, 13:11:22Das auslesen klappt leider nur bei ein paar Parametern, es liegt wohl an der Firmware 1.7.

Du bist doch schon recht weit gekommen und es generell sieht doch recht gut aus.
Alle Parameter die du zyklisch lesen möchtest must du entweder im Attribut AddToReadings oder AddToGetSet angeben oder in der Datei KM273ElementList.json "read":1 setzen
Die Datei KM273ElementList.json wird mit "set myKM273 StoreElementList" gespeichert (unter /opt/fhem/log/).
Die Datei KM273ElementList.json wird nur geladen, wenn das Attribut LoadElementList=1 gesetzt wurde - ansonsten wird die Parameterliste aus der WP geladen und die im KM273 Modul intern definierten Parameter zyklisch gelesen, wenn diese gefunden wurden.
KNX Hausautomatisierung, RPi mit FHEM, Jeelink + LaCrosse, HM_LAN + KeyMatic, Somfy IO Rollladen mit Tahoma und KLF200, Buderus WPS mit USBTin und KM200

der_da

#214
Hallo Mike,
nach langer Pause melde ich mich mal wieder.
Ich hatte schon vor längerer Zeit mal angefangen einzubauen, per FHEM die Urlaubszeit an die Wärmepumpe zu übertragen, so dass man ihr bequem vom Rechner/Smartphone aus sagen kann, wann sie mit Heizen und Warmwasser-Produktion pausieren kann.
Dafür gibt es ja die 6 Parameter
HOLIDAY_START_DAY
HOLIDAY_START_MONTH
HOLIDAY_START_YEAR
HOLIDAY_STOP_DAY
HOLIDAY_STOP_MONTH
HOLIDAY_STOP_YEAR
Nun ist mir aufgefallen, das FHEM mir in der Drop-Down-Liste für SET den Wert für HOLIDAY_START_DAY gar nicht anbietet. Und offensichtlich kann ich auch mit der direkten Eingabe in der Kommandozeile diesen Wert nicht ändern.
In der 26_KM273.pm steht dieser Wert allerdings neben den anderen mit drin!?
my @KM273_getsBase = (
...
    'HOLIDAY_ACTIVE',
    'HOLIDAY_START_DAY',
    'HOLIDAY_START_MONTH',
    'HOLIDAY_START_YEAR',
    'HOLIDAY_STOP_DAY',
    'HOLIDAY_STOP_MONTH',
    'HOLIDAY_STOP_YEAR'
   );
Und früher™ war der Eintrag auch da, da bin ich mir sicher.

mike3436

Hallo,
ich sehe keinen direkten Grund, warum HOLIDAY_START bei dir nicht in der Dropdownliste zu finden ist - bei mir ist es drin.
Wenn du LoadElementList=1 verwendest, wie ich auch, dann muss es in log/KM273ElementList.json drin stehen - eventuell ist die Liste defekt!?
KNX Hausautomatisierung, RPi mit FHEM, Jeelink + LaCrosse, HM_LAN + KeyMatic, Somfy IO Rollladen mit Tahoma und KLF200, Buderus WPS mit USBTin und KM200

der_da

#216
Hallo Mike,
LoadElementList=1 ist gesetzt.
Trotzdem fehlt der Eintrag in der Drop-Down-Liste.
In den Readings ist der Wert dabei und steht auf 18.
Der Versuch es über die Kommandozeile zu setzen sieht im FHEM.log so aus:
set myKM273 HOLIDAY_START_DAY 28 : Unknown argument HOLIDAY_START_DAY, choose one of ROOM_PROGRAM_1_4THU HOLIDAY_STOP_YEAR:slider,0,1,99 ROOM_PROGRAM_1_3WED DHW_PROGRAM_1_6SAT ...
Was meinst du mit: log/KM273ElementList.json? Wie kann ich die von dir vermutete defekte Liste sehen und ggf. "reparieren"?

mike3436

Das existierende Reading HOLIDAY_START_DAY kann ja recht alt sein.
Die Tabelle 'KM273ElementList.json' mit allen existierenden Parametern liegt im Verzeichnis 'log'.
Falls ein Backup existiert, kannst du diese einfach restaurieren.
Die Tabelle baut sich automatisch auf wenn bei Neustart loadElementList=0 ist.
Die Tabelle wird dann mit 'set myKM273 StoreElementList' gespeichert.
KNX Hausautomatisierung, RPi mit FHEM, Jeelink + LaCrosse, HM_LAN + KeyMatic, Somfy IO Rollladen mit Tahoma und KLF200, Buderus WPS mit USBTin und KM200

der_da

Der timestamp von HOLIDAY_START_DAY ist vom Oktober diesen Jahres.
Ich habe 'LoadElementList=0' gesetzt und anschließend das Modul neu geladen (reload 26_KM273.pm).
Danach war aber immer noch das Reading HOLIDAY_START_DAY mit dem gleichen alten timestamp da.  :-\  Viele andere Readings bekamen innerhalb kurzer Zeit einen aktuellen timestamp.
Habe dann mit 'set myKM273 StoreElementList' die Tabelle gespeichert und wieder 'LoadElementList=1' gesetzt. Sehr merkwürdig alles. Weiß mir keinen Rat.

mike3436

Hall der_da,
ich weis auch nicht, war bei dir falsch läuft. Du must dir die Datei KM273ElementList.json ansehen. Darin muss HOLIDAY_START_DAY zu finden sein. Ist HOLIDAY_START_DAY nicht in der Datei, dann wird der Parameter auch nicht verfügbar, da über diese Liste bzw. Datei der Name in eine Adresse umgesetzt wird. Falls HOLIDAY_START_DAY in der Datei zu finden ist, dann schick mir die Datei, und ich probier das bei mir mal aus.
Die Datei KM273ElementList.json sollte einen Inhalt wie folgt haben (nicht selbst meine Einträge einfügen, da die zur Heizung passen muss, und durch den im vorherigen Beitrag beschriebenen Vorgang gelesen und gespeichert wird).
Ansonsten der Erstellvorgang nochmal wiederholen, aber mit Neustart des FHEM.
...
"0CE23FE0":{"rtr":"04E23FE0","min":1,"max":31,"extid":"e1c4e03db0075e","format":"int","text":"HOLIDAY_START_DAY","read":1,"idx":904},
"0CE27FE0":{"rtr":"04E27FE0","min":1,"max":31,"extid":"61a8a44edb0266","format":"int","text":"HOLIDAY_START_DAY_GLOBAL","read":0,"idx":905},
"0CE2BFE0":{"rtr":"04E2BFE0","min":1,"max":12,"extid":"e1af02c5f30265","format":"int","text":"HOLIDAY_START_MONTH","read":1,"idx":906},
"0CE2FFE0":{"rtr":"04E2FFE0","min":1,"max":12,"extid":"619ab55ef6075f","format":"int","text":"HOLIDAY_START_MONTH_GLOBAL","read":0,"idx":907},
...
KNX Hausautomatisierung, RPi mit FHEM, Jeelink + LaCrosse, HM_LAN + KeyMatic, Somfy IO Rollladen mit Tahoma und KLF200, Buderus WPS mit USBTin und KM200

der_da

#220
Hallo Mike,
ich habe gerade mal nachgesehen. In meiner KM273ElementList.json ist HOLIDAY_START_DAY nicht enthalten. Nur HOLIDAY_START_DAY_GLOBAL (Was auch als Reading mit aktuellem timestamp aufgelistet wird).
Ich habe eben noch einmal 'LoadElementList=0' gesetzt und FHEM neu gestartet.
Nach ein paar Sekunden (2 Minuten?) war das Modul wieder komplett geladen. Leider wieder mit dem alten Eintrag:
Du darfst diesen Dateianhang nicht ansehen.

Sollte ich die KM273ElementList.json mal löschen und obiges erneut probieren?

Edit:
Ich habe die KM273ElementList.json gerade mal gelöscht, 'LoadElementList=0' gesetzt und FHEM neu gestartet.
Ergebnis unverändert: Irgendwoher kommt der alte Eintrag vom 14.10.2024 für HOLIDAY_DAY_START

FYI: Am Bediendisplay der Wärmepumpe kann man den Start-Tag übrigens auswählen.

mike3436

Der alte Eintrag ist normal - die alten Reading Einträge werden in keinem Modul gelöscht. Alle alten Readings werden in fhem.save gespeichert und bei FHEM Start wieder in die Module geladen, was auch sinnvoll ist, da manche Readings nicht zyklisch abgefragt werden.
Aber dein Problem scheint aktuell die Kommunikation mit der WP zu sein.
Schick mir doch mal die KM273ElementList.json gezippt per PN.
Oder besser schick mir zusätzlich das aktuelle FHEM log mit Level 3 nach start ohne LoadElementList=1
Da stehen dann Einträge stehen wie:
2017.08.11 23:25:21 3: myKM273: KM273_ReadElementList done, readCounter=76279 readIndex=76279
2017.08.11 23:25:21 3: myKM273: KM273_ReadElementList done, idx=0 extid=814a53c66a0802 max=0 min=0 element=ACCESSORIES_CONNECTED_BITMASK
2017.08.11 23:25:21 3: myKM273: KM273_ReadElementList done, idx=1 extid=61e1e1fc660023 max=5 min=0 element=ACCESS_LEVEL
KNX Hausautomatisierung, RPi mit FHEM, Jeelink + LaCrosse, HM_LAN + KeyMatic, Somfy IO Rollladen mit Tahoma und KLF200, Buderus WPS mit USBTin und KM200

der_da

Was mich wundert ist, dass ich im Verzeichnis /log in alten Backups nirgends ein KM273ElementList.json finde.
Wann wird die denn erstellt? Und wann wird die nicht erstellt oder gelöscht?

mike3436

Die Datei wird mit dem Kommando "set myKM273 StoreElementList" erzeugt.
Die Datei wird nur benötigt, wenn Attribut LoadElementList=1 gesetzt ist, sonst wird die Parameterliste bei Modulstart aus der WP gelesen.
Die Möglichkeit zum Speichern und Laden der Parameterliste wurde in Version 17 (01/2018) implementiert.
Grund war die Eliminierung möglicher Störungen der WP durch den extrem hohen CAN-Datenverkehr beim Lesen der Parameterliste.
KNX Hausautomatisierung, RPi mit FHEM, Jeelink + LaCrosse, HM_LAN + KeyMatic, Somfy IO Rollladen mit Tahoma und KLF200, Buderus WPS mit USBTin und KM200