NEWS
Yahka Konfiguration für Garagentor mit Licht
-
Wobei es nicht ratsam ist die Datenpunkte unter ScriptEnabled abzulegen…
-
Wobei es nicht ratsam ist die Datenpunkte unter ScriptEnabled abzulegen… `
Ok, super! Werde ich mal probieren. Wo soll ich die Datenpunkte dann ablegen? LgGesendet von iPhone mit Tapatalk
-
Ok, super! Werde ich mal probieren. Wo soll ich die Datenpunkte dann ablegen? Lg
Gesendet von iPhone mit Tapatalk `
Fast wo du magst. Meine liegen nun unter javascript.0.virtualDevice.Schalter.Garagentor
-
Grüß Euch,
danke für den tipp mit dem Skript.
Leider funktioniert es nicht so richtig bzw. pfuscht irgendwas hinein und das Tor bleibt stehen wenn ich es mit der Homematic FB od den Homematic Taste öffne:
HK funktioniert, alleine , nur wenn ich mit FB aufmache und Homekit zu machen will, funktioniert es nicht.
hier der Code:
`on({id: 'hm-rpc.0.BidCoS-RF.8.PRESS_SHORT', change: "ne"}, function (obj) { var value = obj.state.val; var oldValue = obj.oldState.val; if (getState("javascript.0.schalteGaragentor_HK"/*schalteGaragentor_HK*/).val === 1) { // Tor geschlossen if (getState("hm-rpc.0.BidCoS-RF.8.PRESS_SHORT").val === true) { // Öffne das Tor setState("javascript.0.schalteGaragentor_HK"/*schalteGaragentor_HK*/, 0, true); } } else if (getState("javascript.0.LageGaragentor_HK").val === 0) { // Tor offen if (getState("hm-rpc.0.BidCoS-RF.8.PRESS_SHORT").val === true) { // Schließe das Tor setState("javascript.0.schalteGaragentor_HK"/*schalteGaragentor_HK*/, 1, true); // Tor wird geschlossen } } }); on({id: 'javascript.0.schalteGaragentor_HK', change: "ne"}, function (obj) { var value = obj.state.val; var oldValue = obj.oldState.val; if (getState("javascript.0.LageGaragentor_HK").val === 1) { // Tor geschlossen if (getState("javascript.0.schalteGaragentor_HK").val === 0) { // Öffne das Tor setState("hm-rpc.0.BidCoS-RF.8.PRESS_SHORT", true); } } else if (getState("javascript.0.LageGaragentor_HK").val === 0) { // Tor offen if (getState("javascript.0.schalteGaragentor_HK").val === 1) { // Schließe das Tor setState('hm-rpc.0.BidCoS-RF.8.PRESS_SHORT', true); } } }); und hier die Konvertierung: [code]var timeout; on({id: 'hm-rpc.0.KEQ0905365.1.STATE', change: "ne"}, function (obj) { var value = obj.state.val; var oldValue = obj.oldState.val; timeout = setTimeout(function () { if (getState("hm-rpc.0.KEQ0905365.1.STATE").val === false) { // Definiere Tor für HK als geschlossen setState("javascript.0.LageGaragentor_HK"/*LageGaragentor_HK*/, 1, true); setState("javascript.0.schalteGaragentor_HK", 1, true); } else { // Definiere Tor für HK als offen setState("javascript.0.schalteGaragentor_HK", 0, true); setState("javascript.0.LageGaragentor_HK"/*schalteGaragentor_HK*/, 0, true); } }, 1000); }); [/code]` Irgendetwas passt da nicht bzw. habe ich da einen Denkfehler !? LG Jürgen
-
"Mein" Skript geht von gewissen Grundvoraussetzungen aus.
1. Mein Tor hat nur einen Taster (kurzer Impuls für 1sec) für hoch und runten. D.b. z.B. Tor offen, Tast-Aktor ansteuern -> Tor geht zu, Tast-Aktor erneut an steuern -> Tor stoppt, Tast-Aktor erneut an steuern -> Tor fährt wieder zu, ….
2. Wenn der Sensor false zeigt ist das Tor zu, bei true offen
Treffen diese Grundvoraussetzungen bei dir aus zu?
NACHTRAG:
Ich habe Deinen Code gerade mal an meinen aktuellen angepasst um ihn besser zu verstehen.
Dabei habe ich das Timeout für das Setzen der Informationen für HK bei manueller Betätigung hochgesetzt.
12:00 Uhr: Fehler im Code korrigiert
! ````
var Schalter = 'hm-rpc.0.BidCoS-RF.8.PRESS_SHORT'
Sensor = 'hm-rpc.0.KEQ0905365.1.STATE',
schalteGaragentor = 'javascript.0.schalteGaragentor_HK',
LageGaragentor = 'javascript.0.LageGaragentor_HK',
TimeoutHKSetzen = 5000,
timeout;
! on({id: Schalter, change: "ne"}, function (obj) {
var StatusSchalter = getState(Schalter).val,
StatusSchalteGaragentor = getState(schalteGaragentor).val;if (StatusSchalteGaragentor === 1) {
// Tor geschlossen
if (StatusSchalter === true) {
// Öffne das Tor
setState(schalteGaragentor , 0);
}
} else if (StatusSchalteGaragentor === 0) {
// Tor offen
if (StatusSchalter === true) {
// Schließe das Tor
setState(schalteGaragentor, 1);
// Tor wird geschlossen
}
}
});! // Folgender Abschnitt sorgt für die Steuerung des Homematic-Aktors aus HK heraus
on({id: schalteGaragentor, change: "ne"}, function (obj) {
var StatusLageGaragentor = getState(LageGaragentor).val,
StatusSchalteGaragentor = getState(schalteGaragentor).val;if (StatusLageGaragentor === 1) {
// Tor geschlossen
if (StatusSchalteGaragentor === 0) {
// Öffne das Tor
setState(Schalter, true);
}
} else if (StatusLageGaragentor === 0) {
// Tor offen
if (StatusSchalteGaragentor === 1) {
// Schließe das Tor
setState(Schalter, true);
}
}
});! //und hier die Konvertierung:
! on({id: Sensor, change: "ne"}, function (obj) {
StatusSensor = getState(Sensor).val,timeout = setTimeout(function () {
if (StatusSensor === false) {
// Definiere Tor für HK als geschlossen
setState(LageGaragentor, 1);
setState(schalteGaragentor, 1);
} else {
// Definiere Tor für HK als offen
setState(LageGaragentor, 0);
setState(schalteGaragentor, 0);
}
}, TimeoutHKSetzen);
}); -
Hallo eumats,
danke für deine Antwort.
Das Hochsetzten des Timouts habe ich schon probiert, der einzige unter schied ist, dass ich das konvertieren des HK Status in einem eigenen Skript mache, ist das ein Unter schied?
Hier nochmal meine genaue Ausgangslage:
Hörmann Gargentor mit Hörmann Modul für Status(offen/geschlossen)
Homematic 4 Fach Aktor, wo ein Kanal für 1s eingeschaltet wird
Homematic Schließer Interface, Frägt Status von Hörmann Modul ab (offen/geschlossen)
Homematic Virtual Taster, kurzer Tastendruck schaltet Kanal am Aktor.
Zusätlich habe ich 2 Homematic Fernbedienungen mi direkte Verknüpfungen zum Aktor (1s ein aus)
Ich probiere aber mal dein Skript, mal schauen ob das ein Unterschied ist.
LG
-
Mein Skript sollte keinen Unterschied bringen. Ich habe es beim Durchgehen nur etwas "optimiert"…
Was heißt denn Garagentor offen bei Dir? true oder false?
Welchen Status hat denn der Taster bei 1sec geschlossen? true/false, 0/1
NACHTRAG:
Was passiert denn genau beim manuellen Bedienen? Das Tür läuft an und bleibt irgendwann stehen?
-
Hi,
Was heißt denn Garagentor offen bei Dir? true oder false?
das Schließerinterface gibt bei offen true zurück.
Welchen Status hat denn der Taster bei 1sec geschlossen? true/false, 0/1
Das ist eine Virutelle Taste von der ccu, die gilt als gedrückt wenn es auf true gesetzt ist, ohh oder brauche ich da einen virt schalter ein/aus!?
NACHTRAG:
Was passiert denn genau beim manuellen Bedienen? Das Tür läuft an und bleibt irgendwann stehen?
das Tor bleibt stehen.
lg
-
"Mein" Skript geht von gewissen Grundvoraussetzungen aus.
1. Mein Tor hat nur einen Taster (kurzer Impuls für 1sec) für hoch und runten. D.b. z.B. Tor offen, Tast-Aktor ansteuern -> Tor geht zu, Tast-Aktor erneut an steuern -> Tor stoppt, Tast-Aktor erneut an steuern -> Tor fährt wieder zu, ….
2. Wenn der Sensor false zeigt ist das Tor zu, bei true offen
Treffen diese Grundvoraussetzungen bei dir aus zu? `
Treffen die Aussagen bei Dir auch zu?PS: Ich habe Deine Code in meinem Post noch mal angepasst. Da war ein Fehler drin…
-
Was hast du geändert?
Sowie ich das Verstanden habe, ist es bei mir fast gleich, nur das der Datenpunkt beim Virtuellen Taster immer auf True bleibt, vlt ist das das Problem.
Geht dein taster von true wieder auf flase?
LG
Jürgen
-
Was hast du geändert? `
Bei 2x setState hatte ich die falsche Variable drin…
Sowie ich das Verstanden habe, ist es bei mir fast gleich, nur das der Datenpunkt beim Virtuellen Taster immer auf True bleibt, vlt ist das das Problem.
Geht dein taster von true wieder auf flase? `
Mein Taster geht nach 1sec wieder auf false… Ich habe aber auch Fibaro Z-Wave Aktoren und kenne mich mit Homematic nicht aus...
Aber da im Skript der Status des Taster auf true abgefragt wird, sollte Du ein true/false abbilden..
-
Hi,
ok, jetzt habe ich es geschnallt:
habe jetzt direkt meinen Aktor eingetragen und wie es aussieht funktioniert es mit HK und mit Fernbedienung.
Nur was noch nicht ganz passt ist wenn ich das tor schließe, zeigt HK an Tor wird geschlossen und nach ein paar sek zeigt es wieder geöffnet an. Erst wenn der Tor Sensor geschlossen meldet zeigt HK geschlossen an, sollte nicht die Sanduhr kommen bis tor geschlossen ist ?
on({id: "hm-rpc.0.KEQ0595573.4.STATE"/*Tor-OEFFNER.STATE*/, change: "ne"}, function (obj) { var value = obj.state.val; var oldValue = obj.oldState.val; if (getState("javascript.0.schalteGaragentor_HK"/*schalteGaragentor_HK*/).val === 1) { // Tor geschlossen if (getState("hm-rpc.0.KEQ0595573.4.STATE").val === true) { // Öffne das Tor setState("javascript.0.schalteGaragentor_HK"/*schalteGaragentor_HK*/, 0, true); } } else if (getState("javascript.0.LageGaragentor_HK").val === 0) { // Tor offen if (getState("hm-rpc.0.KEQ0595573.4.STATET").val === true) { // Schließe das Tor setState("javascript.0.schalteGaragentor_HK"/*schalteGaragentor_HK*/, 1, true); // Tor wird geschlossen } } }); on({id: 'javascript.0.schalteGaragentor_HK', change: "ne"}, function (obj) { var value = obj.state.val; var oldValue = obj.oldState.val; if (getState("javascript.0.LageGaragentor_HK").val === 1) { // Tor geschlossen if (getState("javascript.0.schalteGaragentor_HK").val === 0) { // Öffne das Tor setState("hm-rpc.0.BidCoS-RF.8.PRESS_SHORT", true); } } else if (getState("javascript.0.LageGaragentor_HK").val === 0) { // Tor offen if (getState("javascript.0.schalteGaragentor_HK").val === 1) { // Schließe das Tor setState('hm-rpc.0.BidCoS-RF.8.PRESS_SHORT', true); } } });
Hier das Video zum Problem: https://www.youtube.com/watch?v=y3mbrshBlsA
LG
Jürgen
-
Dann in die einzelnen Bereiche wo etwas gesetzt wird mal mit console.log sinnvolle Ausgaben reinpacken und mal das Log schicken.
-
Hi,
javascript.0 2018-03-01 19:12:55.938 warn at Object. (script.js.common.garagehomekit:10:6)
javascript.0 2018-03-01 19:12:55.935 warn Wrong type of javascript.0.schalteGaragentor_HK: "number". Please fix, while deprecated and will not work in next versions.
javascript.0 2018-03-01 19:12:55.932 warn at Object. (script.js.common.garagehomekit:9:7)
javascript.0 2018-03-01 19:12:55.929 warn Wrong type of javascript.0.LageGaragentor_HK: "number". Please fix, while deprecated and will not work in next versions.
javascript.0 2018-03-01 19:12:34.327 warn at Object. (script.js.common.garage_hk_konvertiert:8:7)
javascript.0 2018-03-01 19:12:34.313 warn Wrong type of javascript.0.schalteGaragentor_HK: "number". Please fix, while deprecated and will not work in next versions.
javascript.0 2018-03-01 19:12:17.190 warn at Object. (script.js.common.garagehomekit:14:7)
javascript.0 2018-03-01 19:12:17.187 warn Wrong type of javascript.0.LageGaragentor_HK: "number". Please fix, while deprecated and will not work in next versions.
javascript.0 2018-03-01 19:12:17.184 warn at Object. (script.js.common.garagehomekit:13:7)
javascript.0 2018-03-01 19:12:17.181 warn Wrong type of javascript.0.schalteGaragentor_HK: "number". Please fix, while deprecated and will not work in next versions.
javascript.0 2018-03-01 19:11:57.424 warn at Object. (script.js.common.garagehomekit:10:6)
javascript.0 2018-03-01 19:11:57.421 warn Wrong type of javascript.0.schalteGaragentor_HK: "number". Please fix, while deprecated and will not work in next versions.
javascript.0 2018-03-01 19:11:57.418 warn at Object. (script.js.common.garagehomekit:9:7)
javascript.0 2018-03-01 19:11:57.415 warn Wrong type of javascript.0.LageGaragentor_HK: "number". Please fix, while deprecated and will not work in next versions.
Kann das die Datenpunkte .LageGaragentor_HK und schalteGaragentor_HK nicht passen ? Ich habe die als Logik definiert?
LG
-
LageGaragentor_HK und schalteGaragentor_HK müssen vom Typ number sein, denn es werden ja 0 und 1 eingetragen. Aber das ist nicht der Grund für das von dir beschriebene Verhalten.
-
Hallo,
wollte nur bescheid geben, dass es bei mir jetzt funktioniert.
Habe die Datenpunkte auf Numbers umgestellt und noch einen kleinen Fehler im Skript ausgebessert.
Werde meine Beschreibung noch hier posten, wenn ich mehr Zeit habe.
Danke für die Unterstützung.
LG
Jürgen
-
Hallo zusammen,
ich bin neu hier und auf diese Lösung gestoßen.
Das ist genau das was ich bräuchte.
@ Jürgen kannst du bitte dein komplettes Skript einstellen?
Wäre dir sehr dankbar, da ich mich noch nicht so gut auskenne und den Fehler, den du ausgebessert hast nicht finden kann.
Das mit den Datenpunkten habe ich soweit umgesetzt.
Besten Dank und LG
-
Hallo zusammen,
Ich hätte da auch mal eine Frage zum Thema.
Ich schalte mein Garagentorantrieb mit einem Homematic schaltaktor der kurz (1sec) schaltet. Den Zustand des Tores gibt mir ein Homematic fensterkontakt.
Wenn ich im Yahka Adapter den Schalter als Lampe einstelle kann ich das Tor such öffnen und schließen. Schöner wäre es natürlich wenn ich alles als Garagentor konfigurieren könnte aber leider bekomme ich es nicht hin. Ist das überhaupt mit den beiden Geräten (schaltaktor und fensterkontakt) so möglich?
Lg
-
Ja, das geht. Wie ist in diesem und in dem "großen" yahka Thread beschrieben…
-
Heißt ich muss mit einem Script arbeiten und es geht nicht mit den normalen Einstellungen im Adapter.