NEWS
Hilfe!! Keymatic in Yakha einbinden
-
Hallo,
ich habe kein Keymatic Schloss, habe ich mich aber mit der Funktionalität des Yahka "Lockmechanism" Dienstes beschäftigt weil überlege mir ein Schloss zu besorgen das ich sowohl im IoBroker als auch im HomeKit steuern kann.
Dieser funktioniert eigentlich ganz einfach:
im LockStatus muss ein Int stehen - 0 = unlocked, 1 = locked, 2 = jammed, 3 = unknown
im LockTarget muss auch ein int stehen - 0 : Schloss soll Oeffnen, 1 : Schloss soll Schliessen
Wie die Datenpunkte in Keymatic aussehen weiss nicht.
Mit 1 oder 2 Scripten und 2 manuell angelegten Datenpunkten für Yahka sollte das aber recht problemlos ansprechbar sein.
Script 1: Trigger of LockTarget geändert, Wenn auf 0, dann Keymatic Aufschliessen setzen, Wenn auf 1 Keymatic zuschliessen setzen.
Wenn das Keymatic Schloss nur ein "State" Objekt hat (Wie z.Bsp. ein Licht, bei dem "on" gleichzeitig das schalten als auch den Status liefert), dann muss der LockStatus (ggf. mit etwas Verzögerung) auf den entsprechenden Status gesetzt werden (Wichtig: Wenn Wert Anpassung acknowledged, dann LockStatus = LockTarget, ansonsten LockStatus = 2)
Wenn es getrennte Datenpunkte sind, dann sollte das 2. Script Trigger auf den Statusdatenpunkt vom Keymatik haben. Auch hier wieder Trigger auf Veränderung. Wenn dabei ein Sollzustand erreicht wird (Auf oder zu), dann muss sowohl LockTarget als auch LockStatus auf den entsprechenden Wert gesetzt werden. Beide sind wichtig, damit der Status im HomeKit richtig umgesetzt wird.
Wichtig ist: Nur eine Lösung zur Anzeige des Status geht auch, allerdings muss dann die Verbindung vom HomeKit zum Schliessen des Schlosses entfernt werden, und über das Script das die mit Yahka verbundenen Datenpunkte überwacht muss ein Schliessvorgang simuliert werden, da HomeKit ansonsten immer "unlocking…" oder "locking..." als Status anzeigt !
Ich hoffe damit kommst Du erst einmal weiter ?
A
-
Hallo,
ich habe kein Keymatic Schloss, habe ich mich aber mit der Funktionalität des Yahka "Lockmechanism" Dienstes beschäftigt weil überlege mir ein Schloss zu besorgen das ich sowohl im IoBroker als auch im HomeKit steuern kann.
Dieser funktioniert eigentlich ganz einfach:
im LockStatus muss ein Int stehen - 0 = unlocked, 1 = locked, 2 = jammed, 3 = unknown
im LockTarget muss auch ein int stehen - 0 : Schloss soll Oeffnen, 1 : Schloss soll Schliessen
Wie die Datenpunkte in Keymatic aussehen weiss nicht.
Mit 1 oder 2 Scripten und 2 manuell angelegten Datenpunkten für Yahka sollte das aber recht problemlos ansprechbar sein.
Script 1: Trigger of LockTarget geändert, Wenn auf 0, dann Keymatic Aufschliessen setzen, Wenn auf 1 Keymatic zuschliessen setzen.
Wenn das Keymatic Schloss nur ein "State" Objekt hat (Wie z.Bsp. ein Licht, bei dem "on" gleichzeitig das schalten als auch den Status liefert), dann muss der LockStatus (ggf. mit etwas Verzögerung) auf den entsprechenden Status gesetzt werden (Wichtig: Wenn Wert Anpassung acknowledged, dann LockStatus = LockTarget, ansonsten LockStatus = 2)
Wenn es getrennte Datenpunkte sind, dann sollte das 2. Script Trigger auf den Statusdatenpunkt vom Keymatik haben. Auch hier wieder Trigger auf Veränderung. Wenn dabei ein Sollzustand erreicht wird (Auf oder zu), dann muss sowohl LockTarget als auch LockStatus auf den entsprechenden Wert gesetzt werden. Beide sind wichtig, damit der Status im HomeKit richtig umgesetzt wird.
Wichtig ist: Nur eine Lösung zur Anzeige des Status geht auch, allerdings muss dann die Verbindung vom HomeKit zum Schliessen des Schlosses entfernt werden, und über das Script das die mit Yahka verbundenen Datenpunkte überwacht muss ein Schliessvorgang simuliert werden, da HomeKit ansonsten immer "unlocking…" oder "locking..." als Status anzeigt !
Ich hoffe damit kommst Du erst einmal weiter ?
A `
Hallo Asgothian,
vielen Dank für das tolle Feedback.
Ohne es jetzt genau zu wissen, glaube ich, gibt es irgendwo solche Status auch in der keymatic…. aber wie du ja auch schon schreibst, mit Script bestimmt umsetzbar....
Ich bin derzeit leider noch unterwegs und komme erst nächste Woche zum testen....
Danach werd ich mal Feedback geben!
Vielen Dank
Gruß
Bischof
Gesendet von iPhone mit Tapatalk
-
Bist Du weitergekommen? Wollte auch Keymatic in Yakha einbinden und kriege es auch nicht hin…
Wir wird zwar der State angezeigt (leider umgekehrt, also zu ist auf und andersherum), aber ich kann das Schloß leider nicht bedienen.
-
Zeig doch mal Screenshots des Objektbaums vom keymatik schloss und schreib welche Datenpunkte was bewirken und wie sie sich ändern wenn du das Schloss manuell schließt, bzw. wie du das Schloss durch setzen der Datenpunkte schließt, dann Kaninchen dir ein paar Hinweise geben.
A.
-
Hallo Asgothian,
danke für Dein Hilfe.
Anbei der Screenshot. Ich weiß leider selbst nicht zu 100% was welcher Datenpunkt bewirkt. Etwas eindeutiges gibt es nicht wirklich…
Der einzige State der sich verändert ist Schloss Waschküche.state von auf (true) auf geschlossen (false). Setze ich die Werte in ioBroker, öffnet oder schließt sich auch das Schloss.Während des Schließvorganges gibt es noch weitere Bewegung bei den "Error" Werten, aber das ist für das Schließen und öffnen egal, denke ich. Diese Werte werden ja auch zu Yahka übernommen, aber invertiert, also in Yahka steht Tür geschlossen, obwohl sie auf ist. Irgendeine Aktion kann ich aber leider nicht damit auslösen.
Schloss offen:
Schloss geschlosse:
So es funktioniert offenbar als Switch. Nicht als Lock. Das ist natürlich nicht soo schön, wegen des falschen Symbols. Der State ist nun bei ON eingetragen. Gibt es da eine Chance das hinzubekommen?
-
Hin zu bekommen ist das auf jeden Fall.
am Einfachsten mit Yahka 0.9.1, siehe Screenshot. An Stelle von javascript.0.SwitchObject muss bei dir das HEQ0407235.1.STATE Objekt drin stehen.
bei älterer Version von Yahka müsstest du dir 2 Scripte und 2 temp-Objekte machen:
1. Script:
on({id: <heq0407235.1.state>}, function(obj) {
if (obj.newState.val) setState( <scriptobjekt1>, 0,true); else setState(<scriptobjekt1>,1,true);
}
});
on({id: <scriptobjekt1>}, function(obj) {
setState( <heq0407235.1.state>, obj.newState.val == 0);
}
});
<scriptobjekt1>ist dann für Yahka lockkurrentstate, <scriptobjekt2>ist dann fuer Yahka locktargetstate
Wichtig: du musst die Namen der Objekte in <> korrigieren, so das sie bei dir passen.</scriptobjekt2></scriptobjekt1></heq0407235.1.state></scriptobjekt1></scriptobjekt1></scriptobjekt1></heq0407235.1.state>
16286_screen_shot_2019-02-09_at_11.51.20_.png -
Yes!!! Du bist mein Held!!!
Danke Dir. Hab das Skript aus dem Screenshot genommen, habe auch die neuste Yahka Version.
Eine Sache noch:
Wenn ich sperre oder aufschließe bekomme ich drei Push Nachrichten. Schloss abgeschlossen. Schloss aufgeschlossen. Schloss abgeschlossen. Und anderesherum. Auch das Symbol, zeigt erst abgeschlossen, dann aufgeschlossen um letztlich zum Endzustand abgeschlossen zu wechseln. Noch eine Idee woran das liegt?
-
Das kann ich so genau leider nicht sagen. Ich gehe davon aus das es damit zu tun hat das das Schloss etwas zeit braucht den Wert per Ack auch zu bestätigen. Umgehen kannst du das nur wenn du fuer den "status" einen eigenen Script-gesteuerten Datenpunkt einfügst, den du dann selber aktualisierst, so das ist und soll nicht auf den gleichen Datenpunkt zeigen.
So z.Bsp.
im locktargetstate to Homekit
setTimeout(function() { setState(<name eines/von/hand/gebauten/states="">, value, true); }, 100);
if (value) return 0;
return 1;
im locktargetstate from Homekit
setTimeout(function() { setState(<name eines/von/hand/gebauten/states="">, (value===0), true); }, 100);
return (value===0);
Dann kannst du den LockCurrentState auf das oben angegebene Objekt linken.
A.</name></name>
-
So ganz zufrieden bin ich mit der hier vorgestellten Lösung ehrlich gesagt noch nicht.
Ich habe einen HmIP-DLD (quasi die HMIP-Keymatic), der ja die Kommandos "entriegeln", "verriegeln" und "öffnen" kennt. Ich möchte also, dass ich z.B. per Siri den DLD in diese drei unterschiedlichen Stellungen bringen kann. Als Zustände gibt es "entriegelt", "verriegelt" und "unbekannt".
Hat das schon jemand entsprechend umgesetzt?
-
Also soweit habe ich es mit den Services "LockMechanism" und "Switch" ganz gut ohne Skript hinbekommen.
Für das Öffnen habe ich mir noch einen zusätzlichen Schalter definiert (da hätte ich aber gerne, dass er wieder automatisch ausschaltet, um eine Taster-Funktion zu realisieren).
Der Zustand "UNKNOWN" wird dann in Homekit als "Klemmt" angezeigt.
Auch per Siri über die Watch funktioniert es ganz gut.
Das Öffnen per Siri will aber noch nicht. Jemand eine Ahnung, wie ich den Schalter konfigurieren muss, damit ich ihn auch direkt per Siri ansprechen kann?
-
Hallo.
Auch ich habe einen HmIP-DLD aber nicht den Yahka Adapter.
Für den HmIP-DLD habe ich einen Alias erstellt. Um das Händling zu vereinfachen habe ich den Alias um zwei Datenpunkte LOCK & UNLOCK erweitert. Diese Datenpunkte können einfach auf true/false gesetzt werden und lösen entsprechen die Aktion am DLD aus.
Vermutlich wird dies auch den Umgang mit Assisten und andern Adaptern erleichtern.Hier mal ein paar Bilder.
-
Kurz noch was zu meinem vorherigen Posting.
Ihr müsst unbedingt überall den Haken bei "is simple value" entfernen. Leider kommt der automatisch jedes Mal wieder, wenn man die Einstellungen aufruft. Das scheint mir ein Bug des yahka-Adapters zu sein. Vergisst man vor dem Abspeichern, den Haken zu entfernen, klappt es nicht mit dem Öffnen und Schließen des DLD.
Das hat mich eben fast zur Verzweiflung gebracht.
-
Hallo ich habe mal eine Frage an die Experten,
es geht um ein Schloss welches im KNX System hängt und nun per HomeKit gesteuert werden soll.
Folgende Ausgangssituation.
Türschloss ist im KNX System mit einem normalen Relaisausgang angesteuert. Heißt ich steuere den Ausgang an, dann gibt dieser für 3 Sekunden 230Volt aus und das Türschloss geht auf. Nach den 3 Sekunden geht das Schloss wieder zu und die Tür ist in der Zwischenzeit aufgemacht worden.
Nun versuche ich das ganze über Yahka mit HomeKit zu verbinden.
Das funktioniert auch soweit aber bei HomeKit gibt es ja mehrere Zustände... abgeschlossen, Aufgeschlossen usw...
Ich habe das Problem dass wenn ich die Tür anwähle dann aufgeschlossen kommt aber nicht automatisch auf abgeschlossen zurückspringt.
Heißt ich drücke auf Türe öffnen, dann öffnet sich die Türe. Im Display steht dann aufgeschlossen. Hier sollte dann automatisch nach 3 Sekunden wieder abgeschlossen stehen.Hat hier jemand Erfahrung und kann mir einen Tipp geben wie ich das lösen könnte?
Hier noch meine Momentane Konfiguration