brutella / hkknx-public

hkknx is a HomeKit KNX bridge for KNX.
https://hochgatterer.me/hkknx
97 stars 6 forks source link

Jalousien / Rollladen %-Angabe für Offen/Geschlossen festlegen #81

Closed steschi closed 3 years ago

steschi commented 3 years ago

Hey!

Folgendes Problem: Angenommen ich habe einen Rollladen zu 50% offen mit Lamellenposition 0° (also offen). Wenn ich nun auf die Rollladen-Schaltfläche tippe wird sie wie gewünscht 100% geschlossen. Da meine Rollladen-Aktoren aber danach die bestehende Lamellenposition anfahren (0°) ändert sich die Ist-Position der Lamellen nicht ganz auf 100% sondern auf 98~99%. Dadurch wird in Homekit dauerhaft "Schließen ..." angezeigt + Loading-Indikator, weil 100% nicht erreicht werden.

Eventuell könnte man einen gewissen Offen/Geschlossen Bereich definieren? 0-2% / 98-100%

Danke für die tolle Arbeit dieser Software! Bin gerade am Testen und werde mir die Lizenz holen sobald ich weiß, dass das meiste funktioniert. Keine Lust mehr auf Homebridge.

Und guten Rutsch!

chef76 commented 3 years ago

Hast Du die GAs wie folgt eingetragen?

image

Bei Lesen und Initialisieren der Soll-Position die Ist-Position?

Dann sollte Dein Problem behoben sein. Das hatte bis jetzt so gut wie jeder vor Dir beim ersten Einrichten seiner Jalousien.

steschi commented 3 years ago

Danke! So funktioniert es viel besser! Denke sowas sollte in eine Doku? Habe leider den Issue von @chef76 übersehen, sonst hätte ich mir diesen Issue sparen können.

Leider zeigt er (je nach Lamellenposition) trotzdem "98% geöffnet" statt "Geöffnet". Ist aber nur ein kleiner Schönheitsfehler. Glaube immernoch, dass es super wäre wenn khknx auf Wunsch "fast ganz auf" bzw "fast ganz zu" so rundet, dass 2% -> 0% und 98% -> 100% ist.

chef76 commented 3 years ago

Leider zeigt er (je nach Lamellenposition) trotzdem "98% geöffnet" statt "Geöffnet". Ist aber nur ein kleiner Schönheitsfehler. Glaube immernoch, dass es super wäre wenn khknx auf Wunsch "fast ganz auf" bzw "fast ganz zu" so rundet, dass 2% -> 0% und 98% -> 100% ist.

... das macht keinen Sinn, da dein Aktor als ist, Position 98 % zurück meldet. Das Problem liegt darin, dass bei Auf kein reiner Auf Befehl gesendet wird, sondern 0 % (100 % geöffnet) und durch die Lamellenposition der Aktor den Behang wieder etwas zurück fährt.

Drum hab ich mir jetzt über Logik Szenen gebaut, die Auf senden.

steschi commented 3 years ago

Ich würde jetzt nicht sagen, dass es "keinen Sinn" macht. Schließlich würde man dadurch das Lamellenproblem lösen. Muss denn immer 1<->1 durchgeschliffen werden was KNX sagt? Ich denke doch, dass dieses Projekt dazu dient KNX mit Homekit gut zu verbinden und gewisse Problemstellen auszubügeln. Und wenn 98% Position + 90° Lemellenstellung in KNX anliegt kann sehr einfach in Homekit auf 100% "gerundet" werden um die Systeme so gut zu koppeln.

Man könnte auch einfach eine gewisse Wertebereichsanpassung erlauben, sprich: 0% bis 100% in Homekit entsprechen 2% bis 98% in KNX, alles darüber oder darunter wird in den jeweiligen Wertebereich gerundet.

Würde mich ja an einen Pull-Request für eine mögliche Lösung machen aber leider ist das Projekt closed source.

steschi commented 3 years ago

Naja, das eigentliche Probleme dieses Issues ist ja behoben. Vielen Dank nochmal für die Hilfe. Vielleicht kann ja @brutella über die Idee mit der Wertebereichsanpassung kurz nachdenken.

chef76 commented 3 years ago

Ich halte das halt für keine saubere Lösung.

Sauber wäre in der Bridge noch die GA für AUF/AB anzulegen und bei einer HomeKit-Anforderung von 0% oder 100% entsprechend AUF/AB auf den Bus zu senden.

steschi commented 3 years ago

Verstehe was du meinst. Funktioniert aber auch nur wenn der Aktor bei Auf/Ab dann die Lamellenposition zurücksetzt oder? Weil sons sind’s am Ende doch wieder nur „98% geschlossen“.

Die richtig saubere Lösung wäre vermutlich überhaupt, wenn HomeKit sowas wie Auf/Zu anbietet statt nur %-Positionen.

chef76 commented 3 years ago

... das machen alle Aktoren, da sich die Lamelle beim Hochziehen ja sowieso verstellt. Dann fährt der Behang bis an den oberen Endschalter - fertig 0% (100% geöffnet). Die 98 % ergeben sich ja dadurch, dass der Behang wieder etwas abfahren muss, um die Lamelle zu verstellen. Funktioniert ohne Probleme. Probiers halt mal aus, entweder mit einem Taster oder per ETS.

brutella commented 3 years ago

Die richtig saubere Lösung wäre vermutlich überhaupt, wenn HomeKit sowas wie Auf/Zu anbietet statt nur %-Positionen.

Macht es einen Unterschied ob ein Zu-Befehl oder 100% Sollposition gesendet wird? Der Rollladen wird schlußendlich bei beiden Fällen bei 98% geschlossen stehen oder?

chef76 commented 3 years ago

Hallo Mathias,

Eben leider nicht. Wenn man 0 Prozent (100 % geöffnet) sendet fährt die Jalousie ganz hoch. Um dann die Lamelle auf 0 % zu stellen fährt sie wieder ein kleines Stück ab. Dann schaut sie aus dem Kasten raus und es werden halt nur 98 % geöffnet angezeigt. Wenn Du für 100 % oder 0 % auf eine separate GA 1/Ab oder 0/Auf senden würdest, wäre die Welt für Jalousien in Ordnung. Bei Rolladen tritt das Problem vermutlich nicht auf. Wäre toll wenn Du das lösen könntest.

Danke!

brutella commented 3 years ago

Wenn Du für 100 % oder 0 % auf eine separate GA 1/Ab oder 0/Auf senden würdest, wäre die Welt für Jalousien in Ordnung.

Irgendwie ist mir noch nicht ganz klar was es für einen Unterschied macht. Könntest du das nochmal genauer erläutern?

chef76 commented 3 years ago

Hab Dir in #82 geantwortet, da der hier ja geschlossen ist.