Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. ioBroker Allgemein
    4. Node-red iobroker Objekte in homekit einbinden

    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

    Node-red iobroker Objekte in homekit einbinden

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

      @mickym Das funktioniert soweit. Allerdings muss ich sowohl im HomeKit als auch in Jarvis den Schalter bei an zweimal drücken, bis die Steckdose schaltet (siehe Video). Bei aus geht es bei beiden sofort. Ich habe den Haken bei "Send only on then ack==true" im in-Node wieder rausgenommen, denn mit ging es irgendwie gar nicht. Hast du noch eine Idee woran das liegen könnte?
      RPReplay_Final16411111702.mov
      NACHTRAG: Habe es gerade mit einer anderen Steckdose (meross) probiert, in dem ich den Flow kopiert habe und nur das Objekt ausgetauscht habe. Da funktioniert es einwandfrei. Scheint an der shelly Steckdose zu liegen.

      Und beim Rolladen habe ich das Problem, wenn ich den über Jarvis steuere bleibt der Schalter in homekit so stehen:
      Bildschirmfoto 2022-01-02 um 09.03.31.jpeg
      Hier die Ausgabe
      Bildschirmfoto 2022-01-02 um 09.06.16.png

      mickym 1 Reply Last reply Reply Quote 0
      • mickym
        mickym Most Active @Minta79 last edited by

        @minta79 Nun bei dem Rollladen musst Du halt wenn Du über Jarvis steuerst auch noch die Node mit der Position als TargetState füttern. Ansonsten stellt die Node halt nur fest dass CurrentPosition nicht mit TargetPosition übereinstimmt. Also einfach die Position triggern lassen und dann die Node mit der TargetPosition füttern. Nachdem ja insgesamt das Passthrough ausgeschaltet wurde (und das funktioniert - habe es ja selbst getestet), sollte es somit auch keine Endlosschleifen mehr geben. 🙂

        Das mit dem Send only when ack==true rauszunehmen, halte ich nicht für sinnvoll. Ich meine Du kannst mit dem iobroker manuell steuern, ob ein state bestätigt oder nicht bestätigt gesetzt wird und ob es funktioniert oder nicht. Normalerweise sende eine Visualisierung unbestätigte Werte wie vis, jarvis oder auch HomeKit an den Adapter. Der sendet das dann an die Hardware und bestätigt das dann auch mit ACK=true.
        In Node-Red kannst Du überprüfen, welche Nachrichten rein kommen und in diesem Fall geht es ja nur darum, dass der Status richtig angezeigt wird. Zur Statusübermittlung an die NOde brauchen wir nur bestätigte Nachrichten.

        Wenn Du steuerst musst halt immer darauf achten, dass Du in Deiner iobroker Out Node nur ACK=false schickst und das machst Du indem Du immer commands nie values schickst.

        M 1 Reply Last reply Reply Quote 0
        • M
          Minta79 @mickym last edited by

          @mickym
          Das mit dem Rolladen hat geklappt 👍
          Den Haken bei "Send only when ack==true" habe ich wieder reingesetzt,

          Warum die Shelly Steckdose so komisch reagiert und ich die zweimal anschalten muss, wie im Video oben zu sehen, weißt du auch nicht oder?

          mickym 1 Reply Last reply Reply Quote 0
          • mickym
            mickym Most Active @Minta79 last edited by mickym

            @minta79 Mit der Shelly weiss ich nicht, aber Du musst halt mal genau schauen, was passiert.

            Vielleicht liegt es am Shelly Adapter. Ich habe auch keine Ahnung ob dieses Verhalten kommt wenn Du mit Homekit oder über Jarvis schaltest, wa passiert wenn Du den Datenpunkt über iobroker schaltest (bestätigt unbestätigt). Du musst doch erst mal rausfinden, was dieses Verhalten bedingt - jedenfalls hat das mit der Rückmeldung und dem ACK=true beim Setzen des Status der Homekit Node nichts zu tun. Du schaltest ja nichts mit den iobroker In Nodes in Node Red, sondern Du aktualisierst nur noch den Status der Nodes. Da es kein passthrough gibt schalten die In-Nodes nichts mehr. Lediglich die Homekit NOde an sich schaltet. Vielleicht übersetzt Du mal true und false in ON und OFF - vielleicht mag das der Shelly Adapter lieben. IN mqtt ist das so, aber der Adapter mag das selbst übersetzen. Deshalb mag ich diese Adapter alle nicht - aber das ist ein anderes Thema. Eventuell musst Du ein Shelly Spezi fragen - der wird wahrscheinlich sagen es liegt an NodeRed - aber man kann ja nicht mehr machen, als irgendeinen Wert true/false ON/OFF mit oder ohne ACK schreiben. Probiere es einfach manuell im iobroker aus und wie es am Besten passt, so schickst Du es halt raus. Inzwischen solltest Du genügend Kenntnisse haben.

            Du kannst ja prüfen, wenn Du das erste Mal was rausschickst, ob das dann gleich wieder rein kommt. Vielleicht spukt Dir ja auch jarvis in die Suppe. Das musst Du befürchte ich alleine rausfinden. Ich kann Dir nur sagen, wie es funktionieren sollte und Dir Tipps geben, wie Du halt debuggst.

            M 1 Reply Last reply Reply Quote 0
            • M
              Minta79 @mickym last edited by

              @mickym Vielen Dank für deine Hilfe! Werde mal auf die Suche gehen.

              mickym 1 Reply Last reply Reply Quote 0
              • mickym
                mickym Most Active @Minta79 last edited by mickym

                @minta79 sagte in Node-red iobroker Objekte in homekit einbinden:

                @mickym Vielen Dank für deine Hilfe! Werde mal auf die Suche gehen.

                Und falls es gar nicht anders geht ,dann musst halt mit einer Trigger Node alle Zwischennachrichten des Shelly Datenpunktes wegwerfen. Aber das sollte wirklich erst dann passieren, wenn man dem Ganzen auf den Grund gegangen ist.

                Also am Besten mal aufschreiben, was man gemacht hat und wie es sich verhalten hat, damit man dann ggf. logisch die richtigen Schlussfolgerungen ziehen kann. Eventuell auch mal den Schalter aus jarvis rausnehmen. Du musst immer die Systeme einzeln betrachten um dem ganzen auf die Spur zu kommen. 😉

                M 1 Reply Last reply Reply Quote 0
                • M
                  Minta79 @mickym last edited by

                  @mickym ok mache ich. Danke 😊

                  1 Reply Last reply Reply Quote 0
                  • M
                    Minta79 last edited by

                    @mickym Manchmal ist es ganz einfach - habe rausgefunden, dass die Shelly Steckdose noch eine alte Firmware hatte. Sie hatte mir vorgegaukelt aktuell zu sein, war sie aber nicht. Und siehe da nach dem Update funktioniert alles einwandfrei 🙂

                    mickym 1 Reply Last reply Reply Quote 0
                    • mickym
                      mickym Most Active @Minta79 last edited by mickym

                      @minta79 Na das ist doch mal sehr erfreulich. 🙂 - Freut mich für Dich!

                      Für mich natürlich auch, dass ich nicht an meinem Verstand zweifeln muss. 😉

                      1 Reply Last reply Reply Quote 0
                      • B
                        Blackeye @mickym last edited by

                        Hi,

                        das passt zwar nicht ganz, aber fast 🙂
                        Ich verstehe das mit dem Übersetzen nicht ganz. Ich habe einen Shelly und möchte den an HomeKit anbinden. Der Schalter hat im Output folgendes stehen:

                        object
                        relays: array[1]
                        0: object
                        ison: false
                        has_timer: false
                        timer_started: 0
                        timer_duration: 0
                        timer_remaining: 0
                        source: "http"
                        meters: array[1]
                        0: object
                        inputs: array[1]

                        Der ison Teil zeigt hier true oder false....wie muss ich was anpassen, dass der Schalter ein sauberen true oder false gibt?

                        Vielen Dank!

                        mickym 1 Reply Last reply Reply Quote 0
                        • B
                          Blackeye last edited by

                          Hi,

                          das passt zwar nicht ganz, aber fast 🙂
                          Ich verstehe das mit dem Übersetzen nicht ganz. Ich habe einen Shelly und möchte den an HomeKit anbinden. Der Schalter hat im Output folgendes stehen:

                          object
                          relays: array[1]
                          0: object
                          ison: false
                          has_timer: false
                          timer_started: 0
                          timer_duration: 0
                          timer_remaining: 0
                          source: "http"
                          meters: array[1]
                          0: object
                          inputs: array[1]

                          Der ison Teil zeigt hier true oder false....wie muss ich was anpassen, dass der Schalter ein sauberen true oder false gibt?

                          Vielen Dank!

                          1 Reply Last reply Reply Quote 0
                          • mickym
                            mickym Most Active @Blackeye last edited by mickym

                            @blackeye

                            Hier mal grundsätzlich wenn Du dieses Objekt hast.

                            [{"ison":true,"has_timer":false,"timer_started":0,"timer_duration":0,"timer_remaining":0,"overpower":false,"source":"http"}]
                            

                            Dann ziehst Du es Dir einfach aus dem Objekt raus. Wenn Du mqtt nutzt - hast Du aber direkt einen Datenpunkt im relay Datenpunkt

                            b5de7f93-2942-4253-98bc-dae8a24ac287-image.png und musst nicht den Info Datenpunkt bemühen.

                            Wie gesagt, um das true oder false aus dem Objekt rauszuholen gehst am besten ins Debug Fenster und kopierst den Pfad raus.

                            Du nimmst eine Change Node und extrahierst den Wert, wie hier gezeigt - in dem Du mit der Maus rechts neben den Dich interessierenden Wert gehst und den Pfad kopierst.

                            25319103-6a1c-49cb-9016-ea23bc3ad118-image.png

                            copy path.gif

                            Ansonsten lieber den Relay 0 Wert nehmen und on und off in true und false übersetzen:

                            2b83f934-4cf1-4be9-bd9b-d583eb3c3d86-image.png

                            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

                            850
                            Online

                            31.9k
                            Users

                            80.1k
                            Topics

                            1.3m
                            Posts

                            3
                            72
                            3704
                            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