Fehler in HomeKit-Integration des Aeotec Garage-Door-Controller

Hallo @Volker,

ich habe mich heute noch mal in der Tiefe mit dem Garage-Door-Controller befasst und bin auf einen Fehler (Verwechslung) gestoßen…

Es gibt ja die 4 folgenden Stati:

  • value=0 -> offen
  • value=1 -> geschlossen
  • value=3 -> öffnet
  • value=4 -> schließt

In homee ist die Implementierung korrekt.
In HomeKit scheinen mir aber die Stati öffnet/ schließt vertauscht worden zu sein.

Wenn in homee das Tor öffnet, steht HomeKit auf schließt und wenn in homee das Tor schließt, zeigt HomeKit öffnet an.

Kannst du dir das bitte anschauen.

Vielen Dank.

Grüße
Michael

Wurde der Controller als Rollladen/Jalousie oder als richtiges Garagentor in HomeKit hinzugefügt? :wink:

Weder noch… :stuck_out_tongue_winking_eye:
Ist ein simuliertes virtuelles Gerät mit den Attributen des Aeotec Garage Door Controller… zwei Magnetkontakte am Toranschlag offen/ geschlossen triggern dann den Status.
In homee passt es wie gesagt super.

War mir schon klar :see_no_evil:
Ich meine in HomeKit ist es da ein Gerät mit dem Typ „Window Covering“ oder „Garage Door Opener“, denn je nach dem sind die Charakteristiken unterschiedlich :wink:

O. k.…
Wenn ich dich jetzt richtig verstehe, ist die Architektur des Aeotec nicht geeignet, um ihn als Garage Door Opener von homee nach HomeKit gemäß der Apple Richtlinien zu übergeben.

Dazu kommen wir noch :wink:
Ich will doch nur wissen ob das Icon in der Apple Home App ein Garagentor (mit Auto) oder eine Jalousie ist :smile:

Achso… Ist ein Tor mit Auto… also regelrechter Garage Door Controller.

Zeigt auch an: geschlossen, öffnet, geöffnet, schließt.
Nur ist der Status vertauscht zwischen schließen und öffnen.

Hab das gerade mal bei mir durchgespielt. Sowohl in homee als auch in HomeKit wird bei mir der Status korrekt angezeigt. Wenn ich öffnen klicke, steht in beiden Apps „öffnen“ und beim Schließen passt es auch. Es handelt sich also wohl nicht um einen Fehler in der Implementierung.
Viele Grüße Tom

Ok… wo klickst du (welche App)?
Interessant wären die Statusänderungen der Attribute… du hast nicht zufällig NodeRed?:wink:

Kann auch keinen Fehler in unserer Implementierung finden :man_shrugging:

Ich habe jeweils in der Web-App von homee auf öffnen oder schließen geklickt und dann den Status am iPhone in der Home-App überprüft.
NodeRed habe ich nicht im Einsatz.

Ok… ich muss dann noch mal weiter suchen…
Wenn ich über HomeKit beziehungsweise über die homee App bediene, stimmt der Status bei mir auch.

Wenn ich das Tor mit der Fernbedienung manuell öffne, dann nicht.

Gibt es noch ein weiteres Attribut im Aeotec, was ich beachten bzw. anpassen/ ansteuern könnte?

Welche Attribute hast du denn?

Eigentlich brauchst du für HomeKit nur das UpDown (135), hier allerdings auf den current_value und target_value achten.

Daran könnte es evt. liegen… muss ich noch mal testen.

Beim Übergang des Zustandes „geschlossen“ (current = 1) zu „öffnet“ müsste ich höchstwahrscheinlich (target = 0) und (current = 3) übergeben, oder?

Das teste ich mal…

Hey medicus07,
ich versuche mich gerade daran den Simulierten Aeotec Garentor öffner von Github in Node Red zu basteln. Allerdings schnall ich es nicht wie ich jetzt meinen Shelly UNI mit zwei Reed Kontakten für Auf sowie Zu mit dem Virtuellen Gerät zu verheiraten… Kannst du mir da helfen ?

Gruß Topper

Hi Topper,

du könntest die Stati der Reed-Kontakte per MQTT in NR bringen…

Damit hast du dann 4 Stati:

  • Reed am Toranschlag „zu“ öffnet: Tor öffnet
  • Reed am Toranschlag „auf“ schließt: Tor offen
  • Reed am Toranschlag „auf“ öffnet: Tor schließt
  • Reed am Toranschlag „zu“ schließt: Tor geschlossen
1 „Gefällt mir“

Hey danke für die Antwort.
Ich dann die Shelly und Reed Kontakte direkt über den Shelly Adapter in iobroker auslesen. Soweit so gut.

Jetzt finde ich aber irgendwie nicht den passenden Weg wie ich aus True bzw. False an den simulierten Homee device Adapter andocke … stehe da irgendwie auf den Schlauch … muss ja auf die variablen 0-4 kommen und dies an die ID 700 melden.

Hoffe du kannst mir folgen.

@Volker

Ich muss das Thema noch mal aufgreifen…

Auf der Ebene vhih und homee funktioniert alles bestens. Über NR und vhih werden als current_value die Werte 0-4 ans Gerät (CAAtrributeTypeUpDown (135)) gesendet und dort wird durch jede Nachricht CV und TV geändert.

Also z.B. CV=3 und TV=3 für „öffnet“. Die Anzeige in der homee GUI passt, alles schick. Man kann auch Werte in „unlogischerweise“ schicken, z.B. CV/TV=3 (öffnet) auf einen bestehenden Status CV/TV=0 (offen), in homee passt alles.

Jetzt zum Problem:
In HomeKit passt das allerdings nicht… nur warum nicht. Das HomeKit Device braucht seine stringente, logische Reihenfolge (geschlossen -> öffnet -> offen -> schließt -> geschlossen), sonst funktioniert es nicht.

Warum funktioniert es bei echten Geräten korrekt und bei vhih nicht? Liegt es evt. daran, dass bei vhih CV und TV den selben Wert annehmen?

Du musst den iobroker-in mit einer Funktion koppeln, die den Wert true/false umwandelt auf das Attribute und den current_value:

[{"id":"b44bd615.26f7c8","type":"rbe","z":"c9962df.09d63d","name":"","func":"rbe","gap":"","start":"","inout":"out","property":"payload","x":570,"y":3940,"wires":[["1cf072e.ba2f48d","48458ce3.3f8a9c","53e90985.3925b"]]},{"id":"1cf072e.ba2f48d","type":"function","z":"c9962df.09d63d","name":"","func":"if (msg.payload === 'true') //geschlossen\n{return [{payload: {\"attribute\":{ \"id\": 700, \"value\": 1 }}}];}\nif (msg.payload === 'false') //öffnet\n{return [{payload: {\"attribute\":{ \"id\": 700, \"value\": 3 }}}];}","outputs":1,"noerr":0,"initialize":"","finalize":"","libs":[],"x":730,"y":3940,"wires":[["d4554781.decd7"]]}]

geschlossen=1
öffnet=3
offen=0
schließt=4
gestoppt=2

Guten Morgen,
Vielen Dank für deine Hilfe.
Der Code hat mir schonmal in so fern geholfen das ich nicht mehr 4-7 mal von HomeKit die Meldung Tor auf und Zu bekomme währen es fährt…

Benutzt du denn den Aeon Garagentor als Homme in Homee gerät über node Red ?
Sind bei dir auch 2 Sensoren einmal für auf und einmal für zu verknüpft ?

Vielleicht hast du mal nen Screenshot von Node Red parat.