Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. ioBroker Allgemein
    4. Yet another HomeKit adapter

    NEWS

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    Yet another HomeKit adapter

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

      Hallo eumats,

      ich bin ja wirklich keiner, der nicht sucht und einfach Seine Fragen wild platziert.

      Ich habe Google und die Forensuche eigentlich schon benutzt, aber dann wohl nicht richtig, wenn es dazu schon einschlägige Themen gibt, wälze ich mich einfach weiter durch. Vielen Dank für den Hinweis.

      Grüße

      1 Reply Last reply Reply Quote 0
      • W
        worfinator last edited by

        Du kannst die Bridge nur einmal adden. Die anderen User musst du dann einladen. Ist ansich recht easy. Einfach mal ein paar Anleitungen durch-googeln.

        1 Reply Last reply Reply Quote 0
        • W
          worfinator last edited by

          Ich habe mit Hilfe meiner über OCCU eingebundenen Netatmo-Station das "AirQuality" Gerät von YAHKA bzw. Homekit umgesetzt.

          Stumpf aber die Bewertung sieht erstmal vielversprechend aus.

          Vielleicht interessiert das ja den ein oder anderen hier.

          Script und Einbindung anbei.

          /* !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!*/
          //Skript zur Bewertung der AirQuality im HomeKit YAHKA-Adapter
          /* !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!*/
          
          // Variablen erstellen
          createState('AirQuality', {
              name: 'Air-Quality-Bewertung'
          });
          
          /* !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!*/
          //Wohnzimmer
          /* !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!*/
          
          // Variablen erstellen
          createState('AirQuality.Wohnzimmer', {
              name: 'AirQuality im Wohnzimmer'
          });
          
          //Alle 5 Minuten Luftqualität prüfem
          schedule("*/5 * * * *", function () 
          {
          var co2 = getState("hm-rega.0.1992"/*CO2_Wohnzimmer*/).val;
          var temp_in = getState("hm-rpc.0.CUX9002001.1.TEMPERATURE"/*NetAtmo Innen:1.TEMPERATURE*/).val;
          var hum_in = getState("hm-rpc.0.CUX9002001.1.HUMIDITY"/*NetAtmo Innen:1.HUMIDITY*/).val;
          
          if (co2 <= 1750)
          {
             note=5;
          }
          
          if (co2 <= 1500)
          {
             note=4;
          }
          
          if (co2 <= 1250)
          {
             note=3;
          }
          
          if (co2 <= 100)
          {
             note=2;
          }
          
          if (co2 <= 750)
          {
             note=1;
          }
          
          if (temp_in <= 18.5)
          {
            note=note+2;
          }
          
          if (temp_in >= 24.0)
          {
            note=note+2;
          }
          
          if (hum_in >= 60)
          {
            note=note+2;
          }
          
          if (hum_in <= 35)
          {
            note=note+2;
          }
          
          if (note > 6)
          {
            note=6;
          }
          
            setState("javascript.0.AirQuality.Wohnzimmer"/*AirQuality im Wohnzimmer*/, note, true); 
          });
          
          

          Die IDs der Geräte müssen natürlich auf den jeweiligen Fall umgeändert werden.
          5820_airqualitysensor.png

          1 Reply Last reply Reply Quote 0
          • R
            rom.wagner80 last edited by

            Hallo zusammen, muss das Thema Rollläden nochmal auffassen:

            Habe KNX Rollläden, welche ich über Yahka ansteuere. Das klappt auch alles soweit. Als Target Position die soll und bei current Position die Istposition eingetragen. Soweit, so gut. Wenn ich jetzt allerdings über einen KNX-Taster den Rollladen runter fahre, so ändert sich zwar der istwert, der Sollwert bleibt aber bei z.B. 100, weil durch den Taster nur ein Befehl für Kurz-, bzw. Langzeit kommt. Rufe ich dann z.B. Ne Stunde später Homkit auf, dann scheint es, als würde im Homekit die Rolllade fahren und fahren, obwohl sie es nicht tut. Das Problem ist dann der Unterschied zwischen soll und Istposition. Gibt es da irgendjemanden, der Ähnliches beobachtet und das Problem gelöst hat?

            Ich hoffe ihr konntet mir folgen 😉

            Schönen Gruß

            1 Reply Last reply Reply Quote 0
            • K
              keysrichards last edited by

              Hallo zusammen,

              ich habe in ioBroker einen Datenpunkt für die Waschmaschine (true=Waschmaschine läuft, false=Waschmaschine läuft nicht). Jetzt möchte ich in Apple Home diesen Datenpunkt visualisieren (nicht verändern, nur anzeigen). Habe mir da als Servicetyp "Fan" vorgestellt, der würde sich dann drehen, wenn die Waschmaschine läuft.

              Wie stelle ich den Servicetyp "Fan" so ein, dass er nur anzeigt und sich nicht, durch draufdrücken, verändert? Oder gibt es aus eurer Sicht eine elegantere Methode, sich diesen Datenpunkt anzeigen zu lassen?

              Danke im Voraus.

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

                @rom.wagner80:

                Hallo zusammen, muss das Thema Rollläden nochmal auffassen:

                Habe KNX Rollläden, welche ich über Yahka ansteuere. Das klappt auch alles soweit. Als Target Position die soll und bei current Position die Istposition eingetragen. Soweit, so gut. Wenn ich jetzt allerdings über einen KNX-Taster den Rollladen runter fahre, so ändert sich zwar der istwert, der Sollwert bleibt aber bei z.B. 100, weil durch den Taster nur ein Befehl für Kurz-, bzw. Langzeit kommt. Rufe ich dann z.B. Ne Stunde später Homkit auf, dann scheint es, als würde im Homekit die Rolllade fahren und fahren, obwohl sie es nicht tut. Das Problem ist dann der Unterschied zwischen soll und Istposition. Gibt es da irgendjemanden, der Ähnliches beobachtet und das Problem gelöst hat?

                Ich hoffe ihr konntet mir folgen 😉

                Schönen Gruß `

                Das Problem habe ich bei meinen Fibaro Rolladen Aktoren auch. Kann man an einem Datenpunkt bei KNX festellen, ob der Rolladen still steht oder sich bewegt?

                1 Reply Last reply Reply Quote 0
                • R
                  rom.wagner80 last edited by

                  @eumats:

                  @rom.wagner80:

                  Hallo zusammen, muss das Thema Rollläden nochmal auffassen:

                  Habe KNX Rollläden, welche ich über Yahka ansteuere. Das klappt auch alles soweit. Als Target Position die soll und bei current Position die Istposition eingetragen. Soweit, so gut. Wenn ich jetzt allerdings über einen KNX-Taster den Rollladen runter fahre, so ändert sich zwar der istwert, der Sollwert bleibt aber bei z.B. 100, weil durch den Taster nur ein Befehl für Kurz-, bzw. Langzeit kommt. Rufe ich dann z.B. Ne Stunde später Homkit auf, dann scheint es, als würde im Homekit die Rolllade fahren und fahren, obwohl sie es nicht tut. Das Problem ist dann der Unterschied zwischen soll und Istposition. Gibt es da irgendjemanden, der Ähnliches beobachtet und das Problem gelöst hat?

                  Ich hoffe ihr konntet mir folgen 😉

                  Schönen Gruß `

                  Das Problem habe ich bei meinen Fibaro Rolladen Aktoren auch. Kann man an einem Datenpunkt bei KNX festellen, ob der Rolladen still steht oder sich bewegt? `

                  Nein, leider nicht. Bekomme über den Bus nur ein kurzes Signal, wenn die Taste kurz bzw. Lang gedrückt wird.

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

                    Ändert sich der IST-Wert am Datenpunkt bei Rolladenlauf ständig oder nur wenn der Lauf beendet ist?

                    1 Reply Last reply Reply Quote 0
                    • R
                      rom.wagner80 last edited by

                      @eumats:

                      Ändert sich der IST-Wert am Datenpunkt bei Rolladenlauf ständig oder nur wenn der Lauf beendet ist? `
                      Nur wenn der Lauf beendet ist.

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

                        @rom.wagner80:

                        Nur wenn der Lauf beendet ist. `

                        Versuch es mal damit…

                        Blocky Export...

                        ! ````
                        <xml xmlns="http://www.w3.org/1999/xhtml"><block type="comment" id="y-2HEmkl+M]R.WjzxaCE" x="-787" y="-537"><field name="COMMENT">Hier bei Object ID den Datenpunkt IST-Position eintragen</field>
                        <next><block type="on_ext" id="tWe5sMj`+Pa==Qa%e:S{"><mutation items="1"></mutation>
                        <field name="CONDITION">ne</field>

                            <value name="OID0"><shadow type="field_oid" id="KTV~)9`v*~3G*Pq3AtZe"><field name="oid">default</field></shadow></value> 
                            <statement name="STATEMENT"><block type="comment" id="]}?djMl)4%kSXGz2_#;g"><field name="COMMENT">Bei mehrfachem Triggern, den alten Timer löschen</field>
                                <next><block type="timeouts_cleartimeout" id="w|1*GQ6Ggi]Xx3`#fEWl"><field name="NAME">timeout</field>
                                    <next><block type="comment" id="ACWFoMpEdc[;o-sS1|vh"><field name="COMMENT">Lieber etwas warten, falls sich der IST-Wert noch mal ändert.</field>
                                        <next><block type="timeouts_settimeout" id="//kr9FBsV5Gi3}#YaQ?B"><field name="NAME">timeout</field>
                                            <field name="DELAY">5</field>
                                            <field name="UNIT">sec</field>
                                            <statement name="STATEMENT"><block type="controls_if" id="tPba%M?[iOzgzMgV})GS"><value name="IF0"><block type="logic_compare" id="??*6OcLZxHavMfw/4Li%"><field name="OP">NEQ</field>
                                                    <value name="A"><block type="variables_get" id="zbKdzEaoO[[OFM1)`G_t"><field name="VAR">IST-Wert</field></block></value> 
                                                    <value name="B"><block type="variables_get" id="}D^Rc#^h%Mzo~yj)?+Ce"><field name="VAR">SOLL-Wert</field></block></value></block></value> 
                                                <statement name="DO0"><block type="comment" id="+BNC.QgfHOh?m-}wU~7|"><field name="COMMENT">Hier bei Object ID den Datenpunkt IST-Position eintragen</field>
                                                    <next><block type="control" id="+ERi2QWY.ITzPg@!8y03"><mutation delay_input="false"></mutation>
                                                        <field name="OID">Object ID</field>
                                                        <field name="WITH_DELAY">FALSE</field>
                                                        <value name="VALUE"><block type="variables_get" id="Y0f(3.=GA,.67oqPHd-j"><field name="VAR">IST-Wert</field></block></value></block></next></block></statement></block></statement></block></next></block></next></block></next></block></statement></block></next></block></xml> 
                        
                        [3610_clipboard01.jpg](/assets/uploads/files/3610_clipboard01.jpg)
                        1 Reply Last reply Reply Quote 0
                        • R
                          rom.wagner80 last edited by

                          Hey. Sowas wäre mir im Leben nicht eingefallen. Werd es morgen direkt mal testen. Vielen Dank dir

                          1 Reply Last reply Reply Quote 0
                          • R
                            rom.wagner80 last edited by

                            Aber muss ich zum Schluss nicht den Sollwert und nicht den Istwert reinschreiben? Weil die Istposition übernimmt er ja nach erfolgter fahrt richtig und das Problem ist ja, dass die Sollposition beim Tastendruck nicht geändert wird…

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

                              @rom.wagner80:

                              Aber muss ich zum Schluss nicht den Sollwert und nicht den Istwert reinschreiben? Weil die Istposition übernimmt er ja nach erfolgter fahrt richtig und das Problem ist ja, dass die Sollposition beim Tastendruck nicht geändert wird… `

                              Der IST-Wert muss in den Sollwert geschrieben werden damit in Homekit wieder die Anzeige korrekt ist.

                              1 Reply Last reply Reply Quote 0
                              • R
                                rom.wagner80 last edited by

                                @eumats:

                                @rom.wagner80:

                                Aber muss ich zum Schluss nicht den Sollwert und nicht den Istwert reinschreiben? Weil die Istposition übernimmt er ja nach erfolgter fahrt richtig und das Problem ist ja, dass die Sollposition beim Tastendruck nicht geändert wird… `

                                Der IST-Wert muss in den Sollwert geschrieben werden damit in Homekit wieder die Anzeige korrekt ist. `

                                Genau. Aber du schreibst in deinem Script ja den Ist-Wert in das Objekt Istwert, oder? Jedenfalls dein Kommentar im blockly deutet darauf hin.

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

                                  @rom.wagner80:

                                  @eumats:

                                  @rom.wagner80:

                                  Aber muss ich zum Schluss nicht den Sollwert und nicht den Istwert reinschreiben? Weil die Istposition übernimmt er ja nach erfolgter fahrt richtig und das Problem ist ja, dass die Sollposition beim Tastendruck nicht geändert wird… `

                                  Der IST-Wert muss in den Sollwert geschrieben werden damit in Homekit wieder die Anzeige korrekt ist. `

                                  Genau. Aber du schreibst in deinem Script ja den Ist-Wert in das Objekt Istwert, oder? Jedenfalls dein Kommentar im blockly deutet darauf hin. `
                                  Ups.in Object ID muss natürlich der Sollwert rein. Ist wohl doch schon zu spät…

                                  1 Reply Last reply Reply Quote 0
                                  • R
                                    rom.wagner80 last edited by

                                    Kein Problem. Bin froh, dass ich nicht ganz auf dem Schlauch stehe 😉

                                    Dank dir nochmal für deine Hilfe. Werd morgen berichten, wie es läuft .

                                    Gute Nacht

                                    1 Reply Last reply Reply Quote 0
                                    • R
                                      rom.wagner80 last edited by

                                      @rom.wagner80:

                                      Dank dir nochmal für deine Hilfe. Werd morgen berichten, wie es läuft .

                                      Gute Nacht `

                                      Also, die Grundfunktion ist Super. Klappt alles wie es soll, im HomeKit wird alles richtig angezeigt….ABER 🙂 nach den eingestellten 5 Sekunden kommt es hin und wieder vor, dass die Rolllade noch ein zehntel Sekündchen fährt. ich denke das liegt daran, dass der Jalousieaktor irgendwo stehen bleibt und dann durch den Sollwert auf genau die Prozentzahl fährt. Beispiel : Istwert tatsächlich: 25,4 % Istwert angezeigt : 25 % Sollwert nach 5 Sekunden 25 %. somit fährt der Rollladen noch um 0,4 Prozent nach oben...dafür vielleicht noch ne Idee ? 🙂 brauch ich den Timeout von 5 Sekunden überhaupt ? Weil bei erneuter Bewegung der Rolllade und der damit einhergehenden Veränderung des Istwertes wird der Trigger erneut ausgeführt und somit die Sollposition wieder berrechnet

                                      1 Reply Last reply Reply Quote 0
                                      • R
                                        rom.wagner80 last edited by

                                        Hey,

                                        Gerade beim ansteuern der Rolllade durch Taster noch gesehen, dass es Log-Einträge über den Vorgang gibt… was kann das bedeuten?
                                        2476_errorlog.jpeg

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

                                          @rom.wagner80:

                                          Hey,

                                          Gerade beim ansteuern der Rolllade durch Taster noch gesehen, dass es Log-Einträge über den Vorgang gibt… was kann das bedeuten? `

                                          Poste mal einen Screenshot der RAW Daten des Datenpunktes…

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

                                            @rom.wagner80:

                                            @rom.wagner80:

                                            Dank dir nochmal für deine Hilfe. Werd morgen berichten, wie es läuft .

                                            Gute Nacht `

                                            Also, die Grundfunktion ist Super. Klappt alles wie es soll, im HomeKit wird alles richtig angezeigt….ABER 🙂 nach den eingestellten 5 Sekunden kommt es hin und wieder vor, dass die Rolllade noch ein zehntel Sekündchen fährt. ich denke das liegt daran, dass der Jalousieaktor irgendwo stehen bleibt und dann durch den Sollwert auf genau die Prozentzahl fährt. Beispiel : Istwert tatsächlich: 25,4 % Istwert angezeigt : 25 % Sollwert nach 5 Sekunden 25 %. somit fährt der Rollladen noch um 0,4 Prozent nach oben...dafür vielleicht noch ne Idee ? 🙂 brauch ich den Timeout von 5 Sekunden überhaupt ? Weil bei erneuter Bewegung der Rolllade und der damit einhergehenden Veränderung des Istwertes wird der Trigger erneut ausgeführt und somit die Sollposition wieder berrechnet `
                                            Lass dir mal in deinem Skript per Debug die Werte für IST und SOLL ausgeben

                                            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

                                            896
                                            Online

                                            31.6k
                                            Users

                                            79.5k
                                            Topics

                                            1.3m
                                            Posts

                                            204
                                            1746
                                            620468
                                            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