NEWS
Node-red iobroker Objekte in homekit einbinden
-
@minta79 Gut dann musst Du mit dem ACK Flag arbeiten.
Unterbrich mal die Verbindung von der iobroker In Node und der HomeKit Node. Mache eine Debug Node an die iobroker In Node und analsiere das komplete Nachrichtenobjekt in der Debug Node.
Ein Debug Node mit dem kompletten Nachrichtenobjekte machst Du an die Homekit Node.
Die Nachricht die aus der Homekit Node rauskommt, sollte kein gesetztes ACK Flag haben. (Wenn Du die Steckdose über die APP bedienst)Die Nachricht aus der iobroker IN Node sollte ein ACK Flag gleich true haben. (Wenn Du die Steckdose anderweitig steuerst Jarvis etc.)
STOP:
Vielleicht geht das Ganze auch einfacher:
Schau mal wenn Du hier einfach in Deiner Bridge Konfiguration den Passthrough Haken rausmachst:
Dann sollte es auch keine Endlosschleifen geben. Wenn das nicht funktioniert, dann müssen wir die erste Methode anwenden.
Zusätzlich setzt Du in Deinen Iobroker In-Nodes noch
dann sollten die Nachrichten nicht doppelt kommen, insbesondere sollten dann die Nachrichten, die Du über jarvis oder andere Visualisierungen schreibst ausfilterst.
-
@mickym wenn ich den Haken rausnheme, geht die Steckdose kurz an und nach 2-3 Sekunden wieder aus
-
- Welchen Haken - Hast Du den Haken in Deiner HomeKit KonfigNode rausgenommen?
Das ist Prio 1.
- Den Haken in der Iobroker IN Node "Send only on then ack === true" den reinmachen und nicht rausmachen.
-
- den Haken bei "Allow Message Passthrough" habe ich rausgenomme
- den haken habe ich gerade gesetzt - trotzdem geht der Schalter nach ein paar Sekunden wieder aus - das muss doch an dem ACK Flag liegen, denn wenn ich den Status im iobroker Objekt setze passiert das gleiche wenn ich nicht "bestätige"
-
@minta79 sagte in Node-red iobroker Objekte in homekit einbinden:
@mickym ja den Haken bei "Allow Message Passthrough"
Wie gesagt und den Haken in der iobroker IN rein machen.
Die erste Nachricht dürfte gar nicht mehr rein kommen:
ACK = false.
Die Payload sollte dann auch nur noch false durchlassen - sprich Lampe ist ausgeschaltet.
-
@mickym Ausgabe sieht jetzt so aus
-
-
Nun die payload aus der homekit Node hast Du nicht ausgeklappt - da sehe ich nicht viel.
- Klapp das mal aus.
-
Die iobroker IN Node passt doch nun, es kommt nur noch eine Nachricht mit ACK = True und da ist die Steckdose aus (payload = false)
-
Hast Du die iobroker IN Node wieder mit der HomeKit NOde verbunden?.
Es sollte ja nun wenn Du das Objekt im iobroker schaltest, nichts mehr aus der Homekit Node rauskommen. Es sollte nur noch eine Nachricht rauskommen, wenn Du über die Home App schaltest.
Wie gesagt schaut aber eigentlich gut aus . dass kein ACK Flag gesetzt wird. Zu guter Letzt klemmst Du einfach die iobroker out Node ab und schaust ob Du einen Unterschied feststellen kannst, wenn Du aus der HomeApp oder über die iobrokerIn Node etwas in die Homekit App schickst.
-
-
@mickym Habe den Node wieder verbunden. Hier der komplette flow und die Ausgabe, wenn ich im iobroker objekt manuell schalte
-
@mickym Habe den out node abgeklemmt.
So sieht es aus, wenn ich über den homekit schalter schalte:
und so wenn ich das iobroker objekt manuell anpasse
-
@minta79 Wenn Du manuell schaltest sehe ich momentan nur AUS in der iobroker IN Node.
Ja schaut doch gut aus. Im ersten Fall ist ausgeschaltet, im zweiten eingeschaltet. Kommt so aus der IN Node - jedesmal eindeutig mit ACK = true raus.
Es sollte wenn Du nun manuell im iobroker schaltest keine Nachricht mehr aus der Homekit Node rauskommen und so sieht es doch jetzt aus.
Sprich wenn Du über jarvis oder sonst wie im iobroker schaltest, sollte in Deiner HomeApp immer der korrekte Status angezeigt werden und keine Nachricht aus der Homekit Node kommen.
-
@mickym said in Node-red iobroker Objekte in homekit einbinden:
Es sollte wenn Du nun manuell im iobroker schaltest keine Nachricht mehr aus der Homekit Node rauskommen.
Kommt auch nicht.
Aber der Schalter bleibt einfach nicht an, wenn ich ihn über Homekit betätige
-
@minta79 Nochmal Du hast doch gerade die Verbindung zur iobroker out gekappt - also kannst Du über HomeApp nicht schalten. Kannst Du das nicht einfach lassen und nur schauen, ob an aus angezeigt wird, wenn Du im iobroker schaltest?
WICHTIG ist doch nun erst mal, dass der korrekte Status in der HomeApp angezeigt wird, wenn Du im iobroker schaltest und keine Nachricht rauskommt. Ist denn das der Fall???
-
@mickym said in Node-red iobroker Objekte in homekit einbinden:
WICHTIG ist doch nun erst mal, dass der korrekte Status in der HomeApp angezeigt wird, wenn Du im iobroker schaltest und keine Nachricht rauskommt. Ist denn das der Fall??
Das funktioniert.
-
@minta79 OK - dann ist die EIngabeseite ok.
So wie sieht Deine ChangeNode aus mit der Du in die iobroker-out Node schreibst.
-
-
@minta79 Ok und wenn Du in der Home App schaltest - dann zeig diese Nachricht nochmal.
So ich habe es nun bei mir alles nachgestellt:
Auf der Eingabeseite kann ich on oder off eingeben, es wird der korrekte Status in der HomeApp angezeigt, wird aber keine Nachricht durchgelassen.
Schalte ich in der Home App kommt richtig:
Deine Ausgabe hilft mir nichts Du musst alle Objekte und payloads ausklappen!!!
-
-
@minta79 Die iobroker In Nodes interessieren nicht mehr - das hast Du doch schon bestätigt, dass das funktioniert.
Im Prinzip geht es doch nur darum, ob die App ausgibt, wenn eingeschaltet:
payload.On = true
oder ausgeschaltet:
payload.On = false
Wenn das richtig rauskommt, dann muss auch das schalten gehen. Natürlich muss in der iobroker Out Node ein command und kein value stehen.
-
@mickym ok. Irgendwie ist hier grad was durcheinander. Aber das bekomme ich jetzt grad nicht raus. Wenn ich im iobroker True/false setzte schaltet die Steckdose gar nicht. Wenn ich den HomeKit Schalter drücke bekomme ich sie nur aus. Keine Ahnung. Ich schaue das morgen in Ruhe noch mal an.
Vielen Dank noch mal bis hierhin!!!! -
@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:
Hier die Ausgabe