Autor Thema: [ASC] Lock out korrekt einrichten  (Gelesen 3445 mal)

Online marvin78

  • Developer
  • Hero Member
  • ****
  • Beiträge: 5942
[ASC] Lock out korrekt einrichten
« am: 03 November 2021, 13:52:42 »
Hallo,

ich möchte einen Aussperrschutz mit der aktuellen ASC-Version einrichten. In einem entsprechenden Device habe ich folgende Attribute gesetzt:

attr DEVICE ASC_LockOut hard
attr DEVICE ASC_LockOut_Cmd inhibit
attr DEVICE ASC_ShuttersPlace terrace
attr DEVICE ASC_WindowRec tk.TerrasseSeite:status
attr DEVICE ASC_WindowRec_subType threestate

(status ist ein userReading, das ein Event erzeugt)

Da es einen in der Doku erwähnten Befehl nicht mehr gibt (siehe unten), also folgendes:

Erwartung: Wenn ich das den Dehgriff auf open stelle, fährt der Rollladen danach weder per ASC noch per Taster (da inhibit gesetzt wird).

Realität: Per Taster kann ich den Rollladen fahren (ASC hatte noch keine Fahrt, das teste ich später noch). Inhibit wird bei open nicht gesetzt. Notifydev ist vorhanden, Inibit kann durch ASC gesetzt werden (siehe weiter unten).

Angestellte Vermutung nach dem groben durchforsten des Forums (die Doku gibt dazu ja wenig bis nichts her, da die Zusammenhänge nur in diversen Forenthreads vorhanden sind und die Befehle früher wohl andere Namen hatten bzw. nicht mehr existieren, die Zusammenhänge in der Doku aber offenbar noch auf den alten Stand sind): Ich muss den Befehl

set ASC hardLockOut on
verwenden.

Erwartung:
Nun funktioniert das gewünschte Verhalten.

Realität: Es blockiert sofort alle Rollladen hart mit inhibit (der Drehgriff hat keinen Einfluss, der Rollladen lässt sich per Taster nicht bedienen, alle so konfigurierten Rollladen erhalten den inhibit Befehl sofort). Das ist im Wiki gut beschrieben. Da habe ich es zunächst aber nicht gesucht. Ich verwende immer zuerst die Doku.


Die Frage ist also: Wie muss man einen Lockout-Schutz korrekt einrichten?

Als Hinweise: Es gibt keine Abhänigkeiten von Anwesenheiten. Es gibt keine weiteren ASC-Positionen für den Rollladen als auf, zu und lüften, sodass hier nichts weiter, als ein Threestatesensor, dessen Status von ASC (per API überprüpft) auch korrekt erkannt wird, einen Einfluss haben sollte. Der Rolladen war beim Test auf komplett geöffnet.  Das alles lässt sich beliebig reproduzieren. Es ist also nicht so, dass inhibit mal gesetzt wird und mal nicht. Ich habe all das per Log und API überprüft.

Danke.


Edit: Ein Hinweis zur Ergänzung: Den Befehl, der in der aktuellen Doku erwähnt wird:

set ASC-Device lockOut soft
den es vermutlich auch mal mit hard gegeben hat, gibt es ja nicht (mehr). Ist der ersatzlos gestrichen? Die Doku macht so allerdings wenig Sinn, da der oben genannte Befehl für hardLockOut hier hin verweist und dieser offenbar ganz etwas anderes tut. Ist ein globales Setzen also nicht nötig? Reicht per Definition das Attribut ASC_LockOut? Das würde nicht erklären, dass inhibit zwar bei einem set ASC hardLockout on gesetzt wird, nicht aber durch den Kontakt, obwohl dessen Status richtig erkannt wird.

Ich werde hier noch weiter testen, möchte aber die Frage geklärt haben, ob oben genannte Attribute reichen sollten, um den Ausperrschutz für ein einzelnes Fenster zu realisieren und ich den Fehler bei mir suchen muss.


Weiteres Edit: Bei ASC_Debug=1 kommt nichts weiter ins Log, wenn ich einen Drehgriff auf open setze. Das Event ist aber im Eventmonitor erkennbar. Gibt es also weitere Voraussetzungen dafür, dass ASC das Event überhaupt erkennt? Wurde ein Attribut/ein möglicher Status vergessen? Ich habe nicht die Zeit durch den ganzen Code zu schauen, einen kurzen Blick habe ich aber rein geworfen. Funktioniert Lockout bzw. Drehgriff-Events nur dann, wenn manuell gefahren wurde (IsAfterShuttersManualBlocking)?
« Letzte Änderung: 03 November 2021, 15:28:20 von marvin78 »
Informativ Informativ x 1 Liste anzeigen

Online marvin78

  • Developer
  • Hero Member
  • ****
  • Beiträge: 5942
Antw:[ASC] Lock out korrekt einrichten
« Antwort #1 am: 03 November 2021, 15:47:37 »
Es ist tatsächlich, wie vermutet. Die manuelle Fahrt beeinflusst das Verhalten dieser Funktion (was extrem unlogisch ist - das mag bei Ventilate und Co. Sinn ergeben aber nicht hier).

Wenn also manuell gefahren wurde und die im Attribut oder per Default eingestellte Zeit für das Blocking noch nicht verstrichen ist, funktioniert der LockOut Schutz NICHT. Das ist natürlich so quatsch.

Schuld ist IsAfterShuttersManualBlocking($shuttersDev) - Zeile 247 in EventProcessingFunctions. Das darf natürlich beim LockOut so nicht geprüft werden. Das sollte nur für die entsprechenden Fahrten geprüft werden. Der Lockout-Schutz muss IMMER möglich sein, egal ob gerade manuell gefahren wurde oder nicht.

Danke für die Aufmerksamkeit :)
« Letzte Änderung: 03 November 2021, 15:49:24 von marvin78 »
Informativ Informativ x 1 Liste anzeigen

Offline CoolTux

  • Developer
  • Hero Member
  • ****
  • Beiträge: 27896
Antw:[ASC] Lock out korrekt einrichten
« Antwort #2 am: 04 November 2021, 10:38:50 »
Danke Dir Marvin, das schaue ich mir gerne an.
Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://www.paypal.com/paypalme/MOldenburg
My FHEM Git: https://git.cooltux.net/FHEM/
Mein Dokuwiki:
https://www.cooltux.net
Gefällt mir Gefällt mir x 1 Liste anzeigen

Online marvin78

  • Developer
  • Hero Member
  • ****
  • Beiträge: 5942
Antw:[ASC] Lock out korrekt einrichten
« Antwort #3 am: 04 November 2021, 10:44:18 »
Super. Danke. Bitte auch nochmal über die commandref schauen und die Stelle mit dem genannten Befehl, den es nicht mehr gibt ggf. nachbessern.
Informativ Informativ x 1 Liste anzeigen

Online marvin78

  • Developer
  • Hero Member
  • ****
  • Beiträge: 5942
Antw:[ASC] Lock out korrekt einrichten
« Antwort #4 am: 05 November 2021, 16:32:36 »
Folgefrage: Ich habe dazu noch nichts gefunden. Produziert ASC ein Event wenn ein Rollladen wegen eines Lockouts nicht gefahren werden kann (bspw. für eine entsprechende Benachrichtigung)?

Offline CoolTux

  • Developer
  • Hero Member
  • ****
  • Beiträge: 27896
Antw:[ASC] Lock out korrekt einrichten
« Antwort #5 am: 05 November 2021, 17:17:22 »
Folgefrage: Ich habe dazu noch nichts gefunden. Produziert ASC ein Event wenn ein Rollladen wegen eines Lockouts nicht gefahren werden kann (bspw. für eine entsprechende Benachrichtigung)?

Nein.
Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://www.paypal.com/paypalme/MOldenburg
My FHEM Git: https://git.cooltux.net/FHEM/
Mein Dokuwiki:
https://www.cooltux.net

Online marvin78

  • Developer
  • Hero Member
  • ****
  • Beiträge: 5942
Antw:[ASC] Lock out korrekt einrichten
« Antwort #6 am: 05 November 2021, 20:25:02 »
Schade. Ist nicht 100%ig wichtig aber ggf. kannst du es mal  auf ne Wunschliste setzen.
Informativ Informativ x 1 Liste anzeigen

Online marvin78

  • Developer
  • Hero Member
  • ****
  • Beiträge: 5942
Antw:[ASC] Lock out korrekt einrichten
« Antwort #7 am: 06 November 2021, 19:50:06 »
Ein weiterer Punkt hierzu: eigentlich muss der Aussperrschutz nicht geschaltet werden, wenn der Rollladen unten ist und die Tür geöffnet wird. Dann sollte eher Lüften angefahren werden können. Aussperrschutz dann, wenn Rollladen geöffnet werden sollte (open pos). Ist aber sicher in der aktuellen Struktur schwer umzusetzen.
« Letzte Änderung: 06 November 2021, 19:51:48 von marvin78 »
Informativ Informativ x 1 Liste anzeigen

Offline CoolTux

  • Developer
  • Hero Member
  • ****
  • Beiträge: 27896
Antw:[ASC] Lock out korrekt einrichten
« Antwort #8 am: 10 November 2021, 19:15:59 »
Ich habe eben mal in den Code geschaut. Also es sollte kein Unterschied machen ob Blocking Time oder nicht. Es sollte sofort und unmittelbar gesperrt werden sobald terrace, LockOut hard und LockOut_Cmd inhibit gesetzt ist.
Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://www.paypal.com/paypalme/MOldenburg
My FHEM Git: https://git.cooltux.net/FHEM/
Mein Dokuwiki:
https://www.cooltux.net

Online marvin78

  • Developer
  • Hero Member
  • ****
  • Beiträge: 5942
Antw:[ASC] Lock out korrekt einrichten
« Antwort #9 am: 10 November 2021, 19:38:02 »
Hm. Ich lese den Code anders (wobei ich irren kann, ist ja nicht mein Code) und es verhält sich in der Praxis auch anders. Es wird nur gesperrt, wenn die Blockzeit abgelaufen ist. Das habe ich hin und her getestet. Ich habe deshalb die Blockzeit auf 1 Sekunde gesetzt. So läuft es.

Auch wird geblockt, wenn der Rollladen unten ist. Das ergibt, aus meiner Sicht, keinen großen Sinn. Es müsste dann erst wieder bei open_pos geblockt werden.
« Letzte Änderung: 10 November 2021, 19:42:21 von marvin78 »

Offline CoolTux

  • Developer
  • Hero Member
  • ****
  • Beiträge: 27896
Antw:[ASC] Lock out korrekt einrichten
« Antwort #10 am: 10 November 2021, 19:57:17 »
Sorry Du hast Recht. Ich habe es eben gesehen. Ich schau mal wie ich das am besten hinbekomme.
Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://www.paypal.com/paypalme/MOldenburg
My FHEM Git: https://git.cooltux.net/FHEM/
Mein Dokuwiki:
https://www.cooltux.net
Gefällt mir Gefällt mir x 1 Liste anzeigen

Online marvin78

  • Developer
  • Hero Member
  • ****
  • Beiträge: 5942
Antw:[ASC] Lock out korrekt einrichten
« Antwort #11 am: 25 November 2021, 08:43:38 »
Konnstest du dir diesen Komplex schon ansehen @CoolTux?

Offline CoolTux

  • Developer
  • Hero Member
  • ****
  • Beiträge: 27896
Antw:[ASC] Lock out korrekt einrichten
« Antwort #12 am: 25 November 2021, 09:10:18 »
Leider noch keine Zeit gefunden. Bin aber dran.

https://git.cooltux.net/FHEM/mod-AutoShuttersControl/issues/67
Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://www.paypal.com/paypalme/MOldenburg
My FHEM Git: https://git.cooltux.net/FHEM/
Mein Dokuwiki:
https://www.cooltux.net
Gefällt mir Gefällt mir x 1 Liste anzeigen

Online marvin78

  • Developer
  • Hero Member
  • ****
  • Beiträge: 5942
Antw:[ASC] Lock out korrekt einrichten
« Antwort #13 am: 25 November 2021, 09:12:55 »
Super. Danke.

Offline loetmeister

  • Full Member
  • ***
  • Beiträge: 453
Antw:[ASC] Lock out korrekt einrichten
« Antwort #14 am: 28 November 2021, 15:24:48 »
Hallo,

wenn es eine neue ASC Version gibt, würde ich mich (auch) zum testen anbieten.  8)
Hatte heute an der Terassentür den ersten Fensterkontakt angeschlossen, um das Verhalten nachzuvollziehen.

Gruß,
Thomas
Informativ Informativ x 1 Liste anzeigen