Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. ioBroker Allgemein
    4. Yahka Konfiguration für Garagentor mit Licht

    NEWS

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    Yahka Konfiguration für Garagentor mit Licht

    This topic has been deleted. Only users with topic management privileges can see it.
    • P
      Patrik last edited by

      Ja das im Video, das würde mir gefallen. Licht kann zeitgleich mit dem Öffnen des Tores an gehen.

      Mit freundlichen Grüßen

      1 Reply Last reply Reply Quote 0
      • juergen2908
        juergen2908 last edited by

        Grüß Euch,

        habe den yahka adpater am laufen.

        Möchte auch gerne mein Garagentor(hörmann) mit homekit steuern.

        Zurzeit habe ich auf der ccu einen virtuellen taster, womit ich das Tor auf und zumachen kann. Den Status bekomme ich vom Torantrieb, wo ein homematic Schließer Interface drauf hängt.

        Jetzt würde ich gerne in homekit einen Garagenöffner einbauen sowie im Video: https://www.youtube.com/watch?v=peofWQu5QaQ

        Leider weiss ich nicht wie ich das mit dem timer machen soll :?:

        vlt. kann mir wer dabei helfen?

        lg

        Jürgen

        1 Reply Last reply Reply Quote 0
        • S
          slad80 last edited by

          Hallo jürgen,

          Schau hier mal bei eumats seinem Beitrag rein hat mir weitergeholfen beim Thema Garagentoröffner. super script vielleicht kannst es für dich passen abwandeln http://forum.iobroker.net/viewtopic.php … 158#p95158

          gruß

          Sven

          1 Reply Last reply Reply Quote 0
          • eumats
            eumats last edited by

            Wobei es nicht ratsam ist die Datenpunkte unter ScriptEnabled abzulegen…

            1 Reply Last reply Reply Quote 0
            • juergen2908
              juergen2908 last edited by

              @eumats:

              Wobei es nicht ratsam ist die Datenpunkte unter ScriptEnabled abzulegen… `
              Ok, super! Werde ich mal probieren. Wo soll ich die Datenpunkte dann ablegen? Lg

              Gesendet von iPhone mit Tapatalk

              1 Reply Last reply Reply Quote 0
              • eumats
                eumats last edited by

                @juergen2908:

                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

                1 Reply Last reply Reply Quote 0
                • juergen2908
                  juergen2908 last edited by

                  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
                  
                  1 Reply Last reply Reply Quote 0
                  • eumats
                    eumats last edited by

                    "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);
                    });

                    1 Reply Last reply Reply Quote 0
                    • juergen2908
                      juergen2908 last edited by

                      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

                      1 Reply Last reply Reply Quote 0
                      • eumats
                        eumats last edited by

                        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?

                        1 Reply Last reply Reply Quote 0
                        • juergen2908
                          juergen2908 last edited by

                          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

                          1 Reply Last reply Reply Quote 0
                          • eumats
                            eumats last edited by

                            @eumats:

                            "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…

                            1 Reply Last reply Reply Quote 0
                            • juergen2908
                              juergen2908 last edited by

                              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

                              1 Reply Last reply Reply Quote 0
                              • eumats
                                eumats last edited by

                                @juergen2908:

                                Was hast du geändert? `

                                Bei 2x setState hatte ich die falsche Variable drin…

                                @juergen2908:

                                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..

                                1 Reply Last reply Reply Quote 0
                                • juergen2908
                                  juergen2908 last edited by

                                  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

                                  1 Reply Last reply Reply Quote 0
                                  • eumats
                                    eumats last edited by

                                    Dann in die einzelnen Bereiche wo etwas gesetzt wird mal mit console.log sinnvolle Ausgaben reinpacken und mal das Log schicken.

                                    1 Reply Last reply Reply Quote 0
                                    • juergen2908
                                      juergen2908 last edited by

                                      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

                                      1 Reply Last reply Reply Quote 0
                                      • eumats
                                        eumats last edited by

                                        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.

                                        1 Reply Last reply Reply Quote 0
                                        • juergen2908
                                          juergen2908 last edited by

                                          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

                                          1 Reply Last reply Reply Quote 0
                                          • R
                                            Rookie3 last edited by

                                            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

                                            1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate
                                            FAQ Cloud / IOT
                                            HowTo: Node.js-Update
                                            HowTo: Backup/Restore
                                            Downloads
                                            BLOG

                                            711
                                            Online

                                            31.9k
                                            Users

                                            80.1k
                                            Topics

                                            1.3m
                                            Posts

                                            11
                                            144
                                            17317
                                            Loading More Posts
                                            • Oldest to Newest
                                            • Newest to Oldest
                                            • Most Votes
                                            Reply
                                            • Reply as topic
                                            Log in to reply
                                            Community
                                            Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                            The ioBroker Community 2014-2023
                                            logo