Homematik HM-Sec-Key

Hallo,
mit
HM_WriteValueBoolean(xxxxx, „STATE“, false);
wird verschlossen und mit
HM_WriteValueBoolean(xxxxx, „STATE“, true);
wird aufgeschlossen.
Aber trotzdem das über die STATE Variable erfolgreich gesteuert wird, bleibt die Variable bei mir immer auf „true“.
Da ich nach erfolgter Aktion den Erfolg protokolliere, ist das trotz verschlossener Tür falsch. (Ich gebe HM sogar genug Zeit für die Verarbeitung, bevor ich den wert abfrage.) Die ERROR Variable sagt „kein Fehler“.
Da ich gern die STATE Variable auswerten will und anhand des Werts eine Aktion durchführen oder verwerfen will, stört das.

Weiß hier jemand mehr?

Kann ich so nicht bestätigen, bei mir geht sie bei ZU auf FALSE (Aus)!

Gruß Heiko

Was zeigt denn der Status auf der CCU an?

„Zustand unbestimmt“

Dann scheint mir der Antrieb falsch justiert zu sein. Vielleicht nochmal ne Lernfahrt machen.

Zudem würde ich die alten HM Befehle gegen RequestAction austauschen.

Ist doch aber die DIRECTION oder bin ich da jetzt falsch? Die ist bei mir auch oft „undefined“!

Gruß Heiko

Wo lese ich denn im CCU2-Webfront den Status ab?

Eine neue Lernfahrt kann ich mal machen. Ob’s was bringt, weiß ich nicht. Habe das KeyMatic gerade neu; das alte war nach 25 Monaten mechanisch kaputt. Das Verhalten mit der STATUS-Variablen war beim alten auch so. Störte mich schon lange. Aber trotz falschen Status funktioniert das grundsätzlich recht zuverlässig.

Alte HM-Befehle? Ich denke, die sind für HomeMatic obligatorisch. Warum RequestAction? Eine Erklärung wäre hilfreich.

Das ist tatsächlich etwas unklar im WebUI, aber Zu/Auf gibt meines Erachtens nach den Zustand an. Also wenn du über Symcon schaltest, sollte der Zustand sich ändern.

@bumaas: Ja, so habe ich es auch. Unplausibel. Der Zustand im CCU2-Webfront ändert ich ja auch. Aber ich will ja die Variable in IPS verarbeiten und nicht im Webfront persönlich nachschauen. Der Zusatnd wird bei „Zu“ nicht nach IPS in STATUS übertragen. So richtig gut habe ich HomeMatic ja noch nie gefunden …
@Boui N. B.
Der Code „STATUS“ ist lesend und schreibend definiert. Der Code „OPEN“ wird über dieselbe Instanz-ID angesprochen und ist nur fürs Schreiben definiert und daher in IPS nicht als separate Variable gelistet. Daher kann ich „OPEN“ auch nicht mit RequestAction(Ex) ansprechen, weil das ja nicht von STATUS über die ID unterschieden werden kann. Wie sich hier also die Lösung bei der Verwendung von RequestAction befinden kann, erschließt sich mir nicht.

Dann hatte ich das völlig falsch in Erinnerung und behaupte das Gegenteil.

Sorry für die Verwirrung.
Da muss ich mir das zu Hause nochmal ansehen, wenn ich vor Ort bin.
Mhhhmmm

War keine Absicht.

Ok, vielleicht noch einmal ganz zurück.

STATE ist lesend und schreibend und dient der Verriegelung/Entriegelung des Schlosses. Also dem Fahren des „Riegels“. Im Webfront sieht es bei mir so aus:
image

Ich kann es bedienen, das Schloss reagiert und der Status ändert sich.

Ist das bei dir auch so?

Letztendlich entspricht das einem RequestAction() auf die Variable „STATUS“. Ist das bei dir vergleichbar?

Nicht zu verwechseln mit OPEN. Open ist eine Action bei Homematic, um das Schloss noch kurzzeitig über die Entriegelungsposition zu fahren und somit den Schnapper zurückzuziehen.

Das ist wohl STATE_UNCERTAIN. Wenn der gesetzt ist, weiß die Homematic nicht, in welcher Position der Riegel ist. Passiert bei manueller Bedienung des Schlosses oder bei falscher Justierung.

1 „Gefällt mir“

Richtig. Mit dem Parameter STATE und true/false schließe ich den Riegel auf/zu. Das funktioniert auch. Aber die STATE-Variable in IPS ändert sich nicht und bleibt auf true (auf=unverriegelt).
Hier mal die Aktion, wie sie bei mir ins Ramdisk-Protokoll protokolliert wird:

13.04.-18:08:37 Feuchte und Temp. KG-Bad (Nr. 1) = 25% bei 26,00°C STAND-BY
13.04.-18:09:11 TuerAktion AKTION=2
13.04.-18:09:11 TuerAktion BEGINN: ERROR=0 STATE=unverriegelt
13.04.-18:09:12 TuerAktion: ERROR=0 Tür wird verschlossen.
13.04.-18:09:32 TuerAktion NACHHER: ERROR=0 STATE=unverriegelt
13.04.-18:09:34 TuerAktion AKTION=1
13.04.-18:09:34 TuerAktion BEGINN: ERROR=0 STATE=unverriegelt
13.04.-18:09:35 TuerAktion: ERROR=0 Tür wird aufgeschlossen.
13.04.-18:09:55 TuerAktion NACHHER: ERROR=0 STATE=unverriegelt
13.04.-18:10:00 Lamellen: 100% 65454,1 Lux EXECUTED (== 100)

Aktion=2 ist „verriegeln“; Aktion=1 ist „aufschließen“; Öffnen ist dann analog Aktion=3
Ich löse das über ValueButtons per IPS-View aus. Das Script ruft sich selbst per Timer nochmal auf, um den Status danach zu checken.
STATE_UNCERTAIN habe ich jetzt zum Test mal aktiv im Script vorher auf „false“ gesetzt.
Man sieht also, dass sich STATE bei mir nicht ändert. Ist zwar eine Lappalie, da die Funktion an sich ja da ist, aber na ja …

Ja, weil die Keymatic ihren Status nicht kennt.
Gibt einige Beiträge hier im Forum wo genau das Verhalten beschrieben ist und mit einer manuellen Kalibrierung gelöst wurde.
Solange STATE_UNCERTAIN ansteht, wird da nie ein korrekter Status in der CCU und IPS ankommen.
Michael

1 „Gefällt mir“

Danke, dann werde ich mal versuchen, neu zu kalibrieren.
10 Min. später …
Bei mir war als Wert für „Drehwinkel Stellung verriegelt“ 990 eingetragen. Habe das auf 950 reduziert und eine Ab-/Aufschließfahrt gemacht. Der STATUS war jetzt korrekt!! Und: HM hat den Wert selbst nochmals auf 945 geändert. Sehr interessant …

Schmunzelnden Glückwunsch.
Manche Probleme lösen sich doch ganz einfach im Forum.

1 „Gefällt mir“