NEWS
UNSOLVED Garagentor mit sonoff und reedkontakte in Yahka Homekit
-
Was für den ein oder anderen vielleicht noch interessant sein könnte:
Je nach "Öffnen/Schließen-Logik" des Tores, kann es nützlich/notwenig sein, dass Skript noch leicht anzupassen.
Bei meinem Tor (Bosch C-500C) ist es so, dass wenn man während des Öffnens nochmals einen Befehl sendet, das Tor stehenbleibt. Bei wieder erneutem Senden eines Befehls, schließt das Tor wieder (und geht eben nicht weiter auf).
Passiert das alles (Öffnen,Anhalten, wieder Schließen) in weniger als der im Skript angegeben Zeit, passiert Folgendes:
Beim Öffnen wird eine Änderung des GPIO Status (auf "unwahr" = offen) erkannt, sodass TargetDoorState sofort auf 0 gesetzt wird und ein Timer mit x Sekunden (bei mir 18) gestartet wird, der dann (nach eben x Sekunden) auch den CurrentDoorState auf 0 setzt. Wird aber zwischenzeitlich (innerhalb der x Sekunden das Tor wieder geschlossen, setzt das Skript beide States wieder (richtigerweise) auf 1 (=geschlossen). Der Timer läuft aber dennoch weiter, sodass der CurrentDoorState (fälschlicherweise) wieder auf 0 gesetzt wird.
Langer Rede kurzer Sinn:
-
@Gunter said in Garagentor mit sonoff und reedkontakte in Yahka Homekit:
Hallo mucki,
danke, aber ich verstehe das nicht.
Im yahka Adapter muss ich doch ein Gerät und dazu Services anlegen.
Welche Kategorie muss ich bei den Geräteeigenschaften wählen?
Ist da die Kategorie "Garage door opener" die richtige?Gruß
GunterDie Kategorie "Garage door opener" passt schon.
Allerdings wird die Zuordnung der Standard-Datenpunkte deiner Garagentorsteuerung nicht 1:1 auf das passen was Yahka erwartet. Deswegen solltest du im Objektbaum im Javascript Adapter einen Ordner anlegen, in dem du die für die Steuerung notwendigen Datenpunkte anlegst.
Auf diese Verweist du dann sowohl im Script das die Steuerung übernimmt als auch in Yahka fuer "target door state" und "current door state", so das du das Tor dann auch aus HomeKit steuern kannst.Das Anlegen eines Verzeichnisses für die Datenpunkte dient nur der Ordnung. Bei vielen Skripten kann man sonst leicht die Übersicht verlieren.
A.
-
Hallo zusammen,
ich bin auch neu hier, eure Kommentare und Erklärungen haben mir schon sehr geholfen. Leider funktioniert bei mir anscheinend die Kommunikation zwischen Skript und Sonoff nicht. Ich benutze übrigens einen TH10 als Schalter. Ich sehe in den Instanzen den Zustand des Reedschalters unter Sonoff, dieser wird aber nicht auf CurrentDoorState übertragen. Gleiches gilt in umgekehrter Richtung: Über die Home-App kann ich den TargetDoorState ändern, es erfolgt aber kein Schaltvorgang am Relais des Sonoff.
Hat jemand einen Tip für mich, ich weiß echt nicht mehr weiter.Gruß
Alex -
@Khan7 sagte in Garagentor mit sonoff und reedkontakte in Yahka Homekit:
Hallo zusammen,
ich bin auch neu hier, eure Kommentare und Erklärungen haben mir schon sehr geholfen. Leider funktioniert bei mir anscheinend die Kommunikation zwischen Skript und Sonoff nicht. Ich benutze übrigens einen TH10 als Schalter. Ich sehe in den Instanzen den Zustand des Reedschalters unter Sonoff, dieser wird aber nicht auf CurrentDoorState übertragen. Gleiches gilt in umgekehrter Richtung: Über die Home-App kann ich den TargetDoorState ändern, es erfolgt aber kein Schaltvorgang am Relais des Sonoff.
Hat jemand einen Tip für mich, ich weiß echt nicht mehr weiter.Gruß
AlexHi Alex,
wie sieht denn dein Script dazu aus?Grüße
Thomas -
Hallo Thomas,
eigentlich genauso wie weiter oben im Thread beschrieben:
Gruß
Alex -
@Khan7
Hi Alex,
die von dir angelegten States (CurrentDoorState und TargetDoorState) sollten im Objektbaum nicht unter "scriptEnabled" liegen. Schau mal ob du sie entweder direkt oder in einem zusätzlichen Unterverzeichnis unter "javascript.0" anlegst. Also zum Beispiel: javascript.0 -> Torsteuerung - > CurrentDoorState & TargetDoorState.Dann sollte es funktionieren.
Viele Grüße
Thomas -
Hallo Thomas,
leider hat auch das nicht geholfen. Mir ist aber jetzt aufgefallen, dass die Werte aus dem Skript als "nicht bestätigt" markiert sind. Ist das vielleicht der Grund warum das nicht funktioniert?
Wenn ja, wie kann ich die Signale denn überhaupt bestätigen?Gruß
Alex -
Hi Alex,
sorry - ich war paar Tage offline.Wie ändert sich denn der Wert im "TargetDoorState" wenn du in der HomekitApp das Tor schaltest? Wir der Wert dann als "Bestätigt" angezeigt? Eigentlich sollte das so sein.
In dem Zusammenhang noch eine Frage. Funktioniert denn die jetzt Änderung des "CurrentDoorState" in Bezug auf deinen Reedkontakt?Grüße
Thomas -
Hallo Thomas,
Der Wert von "TargetDoorState" wechselt wenn ich den Button in der Home-App betätige, aber weiter passiert nichts.
"CurrentDoorState" verändert sich auch nicht, obwohl im Sonoff der Zustand dort ebenfalls zwischen true und false wechselt.Gruß
Alex -
Hi Alex,
wenn du in der HomeKit-App das Tor schaltest und sich somit der Wert von TargetDoorState ändert, wird dieser als Bestätigt angezeigt?
Kannst du bitte mal dein Script als Javascript-Export posten? Vielleicht kommen wir so dem Fehlverhalten auf die SchlicheGrüße
Thomas -
Hallo Thomas,
ich habe es jetzt doch hinbekommen: das Skript lief schlicht und einfach nicht, deswegen ließen sich die Zustandsänderungen auch nicht übertragen. Eine Verschiebung des Skripts weg vom Ordner "global" hin zu einem selbst kreierten Ordner namens "Garage" hat Wirkung gezeigt. Dort lief das Skript dann. Ich habe das Skript per "Zustand erzeugen" auch die Variablen selbst erzeugen lassen. Diese habe ich dann mit dem Skript verknüpft und dem Adapter Yahka bekannt gemacht und das war's dann. Jetzt geht alles wie es soll. Vielen Dank auch für deine mir entgegen gebrachte Geduld.
Gruß
Alex -
@Khan7
Hi Alex,
das freut mich zu hören und ist doch prima wenn es jetzt läuft. Dafür ist das Forum daGrüße Thomas
-
Hallo,
könnte mich vll. jemand unterstützen, ich habe versucht das Script auf eine Rollo Steuerung zu übertragen und auch mit Yahka steuern zu können, hatte einen extra Thread eröffnet:
https://forum.iobroker.net/topic/20630/rollo-steuerung/7Danke euch
-
Kann mir hier jemand helfen - die Steuerung erfolgt via Shelly - funktioniert soweit. Ich frage mit einem XIAOMI Türkontakt ab, ob das Tor auf oder zu ist. Wie binde ich den Kontakt ein? Im Moment steht bei mir immer "geöffnet" - obwohl es zu ist.
-
Bin auch dabei meine Torsteuerung mittels YAHKA und einem Wemos mit ESPEasy zu bewerkstelligen.
Was spricht dagegen den Status "CurrentDoorState" mit dem Reed-Kontakt abzugleichen und nicht mit einem Timeout zu setzen? -
@valbuz
Da spricht garnichts dagegen. Ganz im Gegenteil. Voraussetzung ist dann allerdings, dass zwei Reed-Kontakte pro Tor zur Verfügung stehen. Einer zur Erkennung, dass das Tor komplett geöffnet ist und ein weiterer zur Erkennung, dass das Tor komplett geschlossen ist. -
@ThomasLPZ sagte in Garagentor mit sonoff und reedkontakte in Yahka Homekit:
@valbuz
Da spricht garnichts dagegen. Ganz im Gegenteil. Voraussetzung ist dann allerdings, dass zwei Reed-Kontakte pro Tor zur Verfügung stehen. Einer zur Erkennung, dass das Tor komplett geöffnet ist und ein weiterer zur Erkennung, dass das Tor komplett geschlossen ist.Hallo,
ich habe an einem WEMOS mini zwei Reedkontakte. 1x offen und 1x geschlossen.
Wie muss ich jetzt das Blockly anpassen, dass es ohne den Timeout funktioniert?Ich muss doch dann die Punkte:
state CurrentDoorState
state TargetDoorState
mit den Reedkontakten aktualiesieren richtig?Danke Klaus
-
@ThomasLPZ
Zunächst vielen Dank, für Dein Script.
Ich hab da mal eine Frage, und zwar hat mein Tor eine Hinderniserkennung. Bedeutet, wenn das Tor beim Schließen gegen etwas fährt, dann öffnet es wieder ganz.In dem Fall steht bei mir im Homekit "Schließen..."
Hast Du eine Idee für eine Anpassung der Scripts für diesen Fall? Also, wenn das Kommando zum Schließen gekommen ist, der Reed-Kontakt aber nach x Sekunden nicht bestätigt, dass das Tor zu ist, soll der Vorgang wiederholt werden.
Das ganze vielleicht 3 Mal, und dann soll das Tor aufgeben, und Homekit offen anzeigen.Ich habe nur eine Reed Kontakt, weswegen ich nur erkennen kann, ob das Tor zu ist.
Edit: Falsche Person angesprochen.
-
@thomaslpz Ich muss das Thema wieder aufleben lassen
Ich habe das Script genauso wie beschrieben übernommen. Gesteuert wird mit einer Shelly1 (Switch). Soweit auch alles erfolgreich in Yahka übernommen. Zustände werden richtig angezeigt und das steuern über HomeKit funktioniert.
Das einzige Problem ist nur, wenn ich in der Garage den Taster drücke, stopt das Tor das auffahren sobald Objekt ID (Input/Detach) auf false springt. Der Input ist in meinem Fall ein Rollenendschalter.
Hier noch mein Blockly Script:
-
@andre-2 Ändere mal beim Trigger vom TargetDoorState die "Auslösung durch" auf "unbestätigte Änderung"
Viele Grüße
dragst3r