FHEM Forum

FHEM - Hausautomations-Systeme => Homematic => Thema gestartet von: josch123 am 11 März 2018, 08:36:18

Titel: HMCCUDEV - Set Befehl bei Integer Datapoint
Beitrag von: josch123 am 11 März 2018, 08:36:18
Ich habe aktuell das Problem bei einem HmIP-WTH-2, dass sich Integer Datapoints nicht über den Set Befehl setzen lassen. Bei allen Floating Datapoints funktioniert das super. Hat da jemand eine Idee woran das liegen könnte?

Deviceinfo siehe Anhang.

Ich versuche den Datapoint über den Befehl
set wc_Thermostat datapoint 1.SET_POINT_MODE 1
zu setzen, aber darauf reagiert das Thermostat nicht. Der gleiche Befehl funktioniert aber beim Floating Datapoint 1.SET_POINT_TEMPERATURE.

Ich bin über jegliche Unterstützung dankbar.

Grüße,
Joschka
Titel: Antw:HMCCUDEV - Set Befehl bei Integer Datapoint
Beitrag von: zap am 11 März 2018, 10:07:45
Kommt eine Fehlermeldung bei der Ausführung des Befehls oder passiert einfach gar nichts (bitte auch im FHEM Logfile nachschauen)?

Wenn Du direkt nach dem Set Befehl einmal get deviceinfo aufrufst, wird dann bei diesem Datenpunkt der neue Wert angezeigt?

Hat das in einer früheren Version von HMCCU schon mal funktioniert?
Titel: Antw:HMCCUDEV - Set Befehl bei Integer Datapoint
Beitrag von: josch123 am 11 März 2018, 16:59:27
Es kommt keine Fehlermeldung, es passiert einfach gar nichts. Im FHEM Logfile gibt es auch keinen Eintrag.

Wenn ich direkt nach dem Set Befehl das get deviceinfo aufrufe, wird mir der alte Wert angezeigt. Der Befehl wird so wie ich das beurteilen kann nicht ausgeführt.

Ob das in früheren HMCCU Versionen schon einmal funktioniert hat, weiß ich nicht.

Grüße,
Joschka
Titel: Antw:HMCCUDEV - Set Befehl bei Integer Datapoint
Beitrag von: zap am 11 März 2018, 18:51:51
Schalte mal das Tracing ein:


attr wc_Thermotat ccuflags trace


Nach dem Absetzen des set Befehls sollte etwas mehr Output im Log stehen.

Verbose sollte mindestens 2 sein
Titel: Antw:HMCCUDEV - Set Befehl bei Integer Datapoint
Beitrag von: josch123 am 11 März 2018, 21:31:27
Habe das Tracing eingeschaltet. Anbei der Auszug aus dem LogFile:

2018.03.11 21:23:01 2: HMCCUDEV: IsValidDatapoint: 1 is not a valid channel address
2018.03.11 21:23:01 2: HMCCUDEV: IsValidDatapoint: devtype=HmIP-WTH-2, chnno=1, dpt=ON_TIME
2018.03.11 21:23:01 2: HMCCUDEV: IsValidDatapoint: 1 is not a valid channel address
2018.03.11 21:23:01 2: HMCCUDEV: IsValidDatapoint: devtype=HmIP-WTH-2, chnno=1, dpt=LEVEL
2018.03.11 21:23:01 2: HMCCUDEV: IsValidDatapoint: 1 is not a valid channel address
2018.03.11 21:23:01 2: HMCCUDEV: IsValidDatapoint: devtype=HmIP-WTH-2, chnno=1, dpt=ON_TIME
2018.03.11 21:23:01 2: HMCCUDEV: IsValidDatapoint: 1 is not a valid channel address
2018.03.11 21:23:01 2: HMCCUDEV: IsValidDatapoint: devtype=HmIP-WTH-2, chnno=1, dpt=LEVEL
2018.03.11 21:23:14 2: HMCCUDEV: IsValidDatapoint: 1 is not a valid channel address
2018.03.11 21:23:14 2: HMCCUDEV: IsValidDatapoint: devtype=HmIP-WTH-2, chnno=1, dpt=ON_TIME
2018.03.11 21:23:14 2: HMCCUDEV: IsValidDatapoint: 1 is not a valid channel address
2018.03.11 21:23:14 2: HMCCUDEV: IsValidDatapoint: devtype=HmIP-WTH-2, chnno=1, dpt=LEVEL
2018.03.11 21:23:14 2: HMCCUDEV: IsValidDatapoint: 1 is not a valid channel address
2018.03.11 21:23:14 2: HMCCUDEV: IsValidDatapoint: devtype=HmIP-WTH-2, chnno=1, dpt=ON_TIME
2018.03.11 21:23:14 2: HMCCUDEV: IsValidDatapoint: 1 is not a valid channel address
2018.03.11 21:23:14 2: HMCCUDEV: IsValidDatapoint: devtype=HmIP-WTH-2, chnno=1, dpt=LEVEL
2018.03.11 21:23:58 2: HMCCUDEV: IsValidDatapoint: 0 is not a valid channel address
2018.03.11 21:23:58 2: HMCCUDEV: IsValidDatapoint: SET_POINT_MODE contains channel number
2018.03.11 21:23:58 2: HMCCUDEV: IsValidDatapoint: devtype=HmIP-WTH-2, chnno=1, dpt=SET_POINT_MODE
2018.03.11 21:23:58 2: HMCCUDEV: SetDatapoint: param=HmIP-RF.000A97098ED3B0:1.SET_POINT_MODE, value=1
2018.03.11 21:23:58 2: HMCCUDEV: SetDatapoint: Addr=000A97098ED3B0:1 Name=HmIP-WTH-2 000A97098ED3B0:1
2018.03.11 21:23:58 2: HMCCUDEV: SetDatapoint: Script response =
<xml><exec>/do.exe</exec><sessionId></sessionId><httpUserAgent>User-Agent: fhem</httpUserAgent><r1>false</r1></xml>
2018.03.11 21:23:58 2: HMCCUDEV: SetDatapoint: Script =
http://192.168.178.22:8181/do.exe?r1=dom.GetObject("HmIP-RF.000A97098ED3B0:1.SET_POINT_MODE").State(1)
2018.03.11 21:23:58 2: HMCCUDEV: IsValidDatapoint: 000A97098ED3B0:1 is a valid channel address
2018.03.11 21:23:58 2: HMCCUDEV: IsValidDatapoint: devtype=HmIP-WTH-2, chnno=1, dpt=SET_POINT_MODE
2018.03.11 21:23:58 2: HMCCUDEV: IsValidDatapoint: 1 is not a valid channel address
2018.03.11 21:23:58 2: HMCCUDEV: IsValidDatapoint: devtype=HmIP-WTH-2, chnno=1, dpt=ON_TIME
2018.03.11 21:23:58 2: HMCCUDEV: IsValidDatapoint: 1 is not a valid channel address
2018.03.11 21:23:58 2: HMCCUDEV: IsValidDatapoint: devtype=HmIP-WTH-2, chnno=1, dpt=LEVEL
2018.03.11 21:23:58 2: HMCCUDEV: IsValidDatapoint: 1 is not a valid channel address
2018.03.11 21:23:58 2: HMCCUDEV: IsValidDatapoint: devtype=HmIP-WTH-2, chnno=1, dpt=ON_TIME
2018.03.11 21:23:58 2: HMCCUDEV: IsValidDatapoint: 1 is not a valid channel address
2018.03.11 21:23:58 2: HMCCUDEV: IsValidDatapoint: devtype=HmIP-WTH-2, chnno=1, dpt=LEVEL
2018.03.11 21:23:58 2: HMCCUDEV: IsValidDatapoint: 1 is not a valid channel address
2018.03.11 21:23:58 2: HMCCUDEV: IsValidDatapoint: devtype=HmIP-WTH-2, chnno=1, dpt=ON_TIME
2018.03.11 21:23:58 2: HMCCUDEV: IsValidDatapoint: 1 is not a valid channel address
2018.03.11 21:23:58 2: HMCCUDEV: IsValidDatapoint: devtype=HmIP-WTH-2, chnno=1, dpt=LEVEL
2018.03.11 21:24:12 2: HMCCUDEV: Device=000A97098ED3B0 Devname=wc_Thermostat
2018.03.11 21:24:12 2: HMCCUDEV: Script response =
C;000A97098ED3B0:0;wc_Thermostat:0;HmIP-RF.000A97098ED3B0:0.CONFIG_PENDING;2;false;RE
C;000A97098ED3B0:0;wc_Thermostat:0;HmIP-RF.000A97098ED3B0:0.DUTY_CYCLE;2;false;RE
C;000A97098ED3B0:0;wc_Thermostat:0;HmIP-RF.000A97098ED3B0:0.LOW_BAT;2;false;RE
C;000A97098ED3B0:0;wc_Thermostat:0;HmIP-RF.000A97098ED3B0:0.OPERATING_VOLTAGE;4;2.800000;RE
C;000A97098ED3B0:0;wc_Thermostat:0;HmIP-RF.000A97098ED3B0:0.RSSI_DEVICE;8;172;RE
C;000A97098ED3B0:0;wc_Thermostat:0;HmIP-RF.000A97098ED3B0:0.RSSI_PEER;8;172;RE
C;000A97098ED3B0:0;wc_Thermostat:0;HmIP-RF.000A97098ED3B0:0.UNREACH;2;false;RE
C;000A97098ED3B0:0;wc_Thermostat:0;HmIP-RF.000A97098ED3B0:0.UPDATE_PENDING;2;false;RE
C;000A97098ED3B0:1;HmIP-WTH-2 000A97098ED3B0:1;HmIP-RF.000A97098ED3B0:1.ACTIVE_PROFILE;16;1;WE
C;000A97098ED3B0:1;HmIP-WTH-2 000A97098ED3B0:1;HmIP-RF.000A97098ED3B0:1.ACTUAL_TEMPERATURE;4;19.400000;RE
C;000A97098ED3B0:1;HmIP-WTH-2 000A97098ED3B0:1;HmIP-RF.000A97098ED3B0:1.BOOST_MODE;2;false;WE
C;000A97098ED3B0:1;HmIP-WTH-2 000A97098ED3B0:1;HmIP-RF.000A97098ED3B0:1.BOOST_TIME;16;0;RE
C;000A97098ED3B0:1;HmIP-WTH-2 000A97098ED3B0:1;HmIP-RF.000A97098ED3B0:1.CONTROL_DIFFERENTIAL_TEMPERATURE;4;;WE
C;000A97098ED3B0:1;HmIP-WTH-2 000A97098ED3B0:1;HmIP-RF.000A97098ED3B0:1.CONTROL_MODE;16;;WE
C;000A97098ED3B0:1;HmIP-WTH-2 000A97098ED3B0:1;HmIP-RF.000A97098ED3B0:1.DURATION_UNIT;16;;W
C;000A97098ED3B0:1;HmIP-WTH-2 000A97098ED3B0:1;HmIP-RF.000A97098ED3B0:1.DURATION_VALUE;16;;W
C;000A97098ED3B0:1;HmIP-WTH-2 000A97098ED3B0:1;HmIP-RF.000A97098ED3B0:1.FROST_PROTECTION;2;false;RE
C;000A97098ED3B0:1;HmIP-WTH-2 000A97098ED3B0:1;HmIP-RF.000A97098ED3B0:1.HEATING_COOLING;16;1;RWE
C;000A97098ED3B0:1;HmIP-WTH-2 000A97098ED3B0:1;HmIP-RF.000A97098ED3B0:1.HUMIDITY;16;70;RE
C;000A97098ED3B0:1;HmIP-WTH-2 000A97098ED3B0:1;HmIP-RF.000A97098ED3B0:1.PARTY_MODE;2;false;RE
C;000A97098ED3B0:1;HmIP-WTH-2 000A97098ED3B0:1;HmIP-RF.000A97098ED3B0:1.PARTY_SET_POINT_TEMPERATURE;4;5.000000;RE
C;000A97098ED3B0:1;HmIP-WTH-2 000A97098ED3B0:1;HmIP-RF.000A97098ED3B0:1.PARTY_TIME_END;20;2018_03_13 06:15;RWE
C;000A97098ED3B0:1;HmIP-WTH-2 000A97098ED3B0:1;HmIP-RF.000A97098ED3B0:1.PARTY_TIME_START;20;2018_03_11 00:00;RWE
C;000A97098ED3B0:1;HmIP-WTH-2 000A97098ED3B0:1;HmIP-RF.000A97098ED3B0:1.SET_POINT_MODE;16;0;RWE
C;000A97098ED3B0:1;HmIP-WTH-2 000A97098ED3B0:1;HmIP-RF.000A97098ED3B0:1.SET_POINT_TEMPERATURE;4;21.000000;RWE
C;000A97098ED3B0:1;HmIP-WTH-2 000A97098ED3B0:1;HmIP-RF.000A97098ED3B0:1.SWITCH_POINT_OCCURED;2;false;RE
C;000A97098ED3B0:1;HmIP-WTH-2 000A97098ED3B0:1;HmIP-RF.000A97098ED3B0:1.WINDOW_STATE;16;0;WE


Grüße,
Joschka
Titel: Antw:HMCCUDEV - Set Befehl bei Integer Datapoint
Beitrag von: zap am 12 März 2018, 18:28:00
Um nun herauszufinden, ob das Problem bei HMCCU oder der CCU bzw. der Geräte Firmware liegt, mach bitte folgendes:

- In der CCU Oberfläche "Programme und Verknüpfungen" -> "Programme und Zentraleverknüpfungen" aufrufen.
- Unten auf der Seite den Button "Script testen" drücken
- Im Fenster unter Eingabe den Beispielcode durch folgende Zeile ersetzen:

dom.GetObject("HmIP-RF.000A97098ED3B0:1.SET_POINT_MODE").State(1);

- Dann in FHEM für das Gerät nochmal "get deviceinfo" aufrufen und prüfen, ob SET_POINT_MODE nun 1 ist.
Titel: Antw:HMCCUDEV - Set Befehl bei Integer Datapoint
Beitrag von: josch123 am 12 März 2018, 22:47:47
Ich habe deinen skizzierten Anweisungen mal ausprobiert. Der Datenpunkt ändert sich nicht. Liegt der Fehler nun an der CCU?

Danke für die Unterstützung.
Titel: Antw:HMCCUDEV - Set Befehl bei Integer Datapoint
Beitrag von: zap am 13 März 2018, 07:26:42
ja, entweder an der CCU oder an der Firmware des Thermostaten.
gibt es für den ein Firmware Update?

Update: die neuste Firmwafe ist die 1.8 vom 19.2.2018

auch die CCU sollte natürlich die aktuelle Firmware haben.
Titel: Antw:HMCCUDEV - Set Befehl bei Integer Datapoint
Beitrag von: josch123 am 17 März 2018, 14:01:45
Ich habe die Firmware der CCU und des Thermostat aktualisiert und den Befehl noch einmal abgesetzt:
Zitat von: zap am 12 März 2018, 18:28:00
dom.GetObject("HmIP-RF.000A97098ED3B0:1.SET_POINT_MODE").State(1);

Leider ändert sich der Datenpunkt nach wie vor nicht. Über das HMWeb UI kann ich den Wert aber problemlos setzen und den veränderten Wert über FHEM auslesen. 

Grüße,
Joschka
Titel: Antw:HMCCUDEV - Set Befehl bei Integer Datapoint
Beitrag von: zap am 17 März 2018, 17:11:39
Versuch mal in der CCU das:


(datapoints.Get("HmIP-RF.000A97098ED3B0:1.SET_POINT_MODE")).State(1);

Titel: Antw:HMCCUDEV - Set Befehl bei Integer Datapoint
Beitrag von: Chris8888 am 17 März 2018, 20:26:42
Hallo zusammen,
ich habe das gerade mal getestet und bei mir ist das genauso.
Der Set-Befehl über die FHEM-GUI reagiert nicht.

Aber:
Das setzen über die 99_MyUtils und auch per Homebridge klappen wie gewohnt.

Einen Eintrag im Log habe ich auch nicht. CCU ist aktuell, die Thermostate laufen noch auf 1.4 und 1.8.
Den gleichen Fehler bekomme ich allerdings auch auf einem HmIP-STHD mit 1.6.

VG
Christian

Update: "Das setzen über die 99_MyUtils und auch per Homebridge klappen wie gewohnt." arbeiten beide bei mir über den 1.CONTROL_MODE. der läuft tadellos. set xxx datapoint 1.CONTROL_MODE 1
Wenn ich das hier in meiner CCU aufrufe (natürlich mit meinem Devicenamen) passiert leider nichts: (datapoints.Get("HmIP-RF.000A97098ED3B0:1.SET_POINT_MODE")).State(1);
Titel: Antw:HMCCUDEV - Set Befehl bei Integer Datapoint
Beitrag von: zap am 17 März 2018, 22:47:49
Dann würde ich sagen, dass es ein Bug in der CCU oder. im Device ist, der sich nur auf SET_POINT_MODE auswirkt.
Titel: Antw:HMCCUDEV - Set Befehl bei Integer Datapoint
Beitrag von: Chris8888 am 18 März 2018, 08:10:27
kann es sein das es schon immer so wahr? Ist länger her, aber ich nutze ja nicht umsonst ausschließlich den Control_Mode zum Setzen von Auto/Manuel.
Set_Point_Mode nutze ich nur zur Anzeige der Ist-Situation.
Ist mir vielleicht nie als Bug aufgefallen....
Titel: Antw:HMCCUDEV - Set Befehl bei Integer Datapoint
Beitrag von: zap am 18 März 2018, 10:23:38
Kann schon sein. Ich habe keine ip Thermostate. Aber ich stelle mal eine Frage im Homematic Forum.
Titel: Antw:HMCCUDEV - Set Befehl bei Integer Datapoint
Beitrag von: josch123 am 22 März 2018, 22:50:19
Control Mode klappt für meine Bedürfnisse. Danke für den Tipp.  :)

Vielleicht ist der Set_Point_Mode einfach nur ein [RE] datapoint.
Titel: Antw:HMCCUDEV - Set Befehl bei Integer Datapoint
Beitrag von: Chris8888 am 23 März 2018, 14:03:35
lt. Deviceinfo nicht...aber ggf wirklich ein Bug
Titel: Antw:HMCCUDEV - Set Befehl bei Integer Datapoint
Beitrag von: pcbastler am 31 März 2021, 17:50:46
To be continued:
(datapoints.Get("HmIP-eTRV-B.00201BE9A51583:1.SET_POINT_MODE")).State(1);
hat auch bei Firmware 2.57.4 auf der CCU2 den gleichen Fehler, umschalten in der Web-GUI klappt und wird auch sofort an FHEM duchgereicht.
Gibt es inzwischen dafür einen Workaround? Control-Mode kennt das HmIP-Ventil nicht.
Titel: Antw:HMCCUDEV - Set Befehl bei Integer Datapoint
Beitrag von: rossu am 26 Januar 2022, 11:17:45
Hallo,
ich habe die Lösung gefunden.
Auch bei den IP Geräten (wie HmIP-eTRV-E) gibt es noch den Datapoint 1.CONTROL_MODE (für Auto/Manuelle Steuerung der Heizungsthermostate). Der Datapoint 1.CONTROL_MODE wird aber unter Datapoint in FHEM nicht angezeigt.

Hier das Codebeispiel für FHEM zum setzen des manuellen Mode:
set kzo_heizkoerper_thermostat datapoint 1.CONTROL_MODE 1
Danach ist der Wert von 1.SET_POINT_MODE auf 1 gesetzt.

Zitat von: pcbastler am 31 März 2021, 17:50:46
Control-Mode kennt das HmIP-Ventil nicht.
DOCH KENNT ES
LG Uli