HMW_IO_12_Sw7_DR on-for-timer

Begonnen von Jojo11, 14 November 2016, 19:42:36

Vorheriges Thema - Nächstes Thema

Jojo11

Hallo,

folgendes Verhalten meines HMW_IO_12_Sw7_DR habe ich eben entdeckt und wollte mal fragen, ob das so gewollt ist:

Wenn ich für einen der Schaltausgänge ein "on-for-timer 300" definiere und innerhalb der 5 Minuten ein "on" hinterherschicke, wird der Verbraucher trotzdem nach 5 Minuten abgeschaltet. Der state des Kanals ist nach einem "on-for-timer" auch "on" und nicht wie z.B. bei homematic Funk "timedOn" (oder so ähnlich). Das ist für mich insofern etwas schwierig zu handhaben, als dass ich nicht zwischen on-for-timer und on unterscheiden kann. Ist das ein Feature oder könnte man das Verhalten evtl. anpassen (z.B. das at zum Ausschalten nach "on" löschen)?

Danke und schöne Grüße
Jo

Thorsten Pferdekaemper

Hi,

wie sich das bei den Funk-Geräten verhält weiß ich nicht, aber HM-Wired kann eigentlich gar kein on-for-timer. Das ist im FHEM-Modul implementiert. Meiner Meinung nach ist das schlecht, weil ich finde, dass ein FHEM-Modul nur das abbilden sollte, was das Gerät kann (zumindest bei hinreichend "intelligenten" Geräten.) Eigentlich würde ich das "on-for-timer" am liebsten ganz rauswerfen. Das mache ich natürlich nicht, da es bestimmt ein paar Leute verwenden.
Jetzt könnte man natürlich sagen, dass man es richtig machen sollte, wenn es das Teil schon gibt. Allerdings könnte es jetzt auch wieder sein, dass jemand das Verhalten als "Feature" verwendet (möglicherweise auch ungewollt).
Jetzt mal angenommen, ich würde das on-for-timer "komplettieren" wollen. Dann dürfte es da noch ein paar andere Sachen zu beachten geben: on-for-timer gibt es nur für Kanäle, die subType "switch" haben. Für die gibt es prinzipiell on,off und toggle (möglicherweise gibt es Geräte, die auch noch anderes haben, aber das ignorieren wir jetzt mal).

  • on: Hier soll der Kanal eingeschaltet bleiben, aber der Timer wird gelöscht. (Das scheint zumindest Deine Meinung zu sein. Man könnte aber auch anderer Meinung sein.)
  • off: Kanal ausschalten und Timer löschen.
  • toggle: Wie off?
Jetzt kann der Kanal noch gepeert sein. D.h. über irgend eine Taste kann ein "on/off/toggle" an den Kanal gesendet werden, ohne dass das über FHEM läuft. Der Vollständigkeit halber müsste man das jetzt auch mit beachten (oder?). Das ist jetzt gar nicht so einfach. Da müsste man für jedes eingehende Event prüfen, ob der entsprechende Kanal gepeert ist und dann entsprechend reagieren. Außerdem gibt es bei den Peerings noch einige Einstellmöglichkeiten, wie z.B. das Einschalten zu verzögern. Das müsste man dann auch irgendwie auswerten und mit dem Timer abgleichen. Ich weiß nicht, ob ich das sauber hinbekommen würde.

Jetzt noch zum state "timedOn": Bei HMW kommen die states von den Readings des Geräts. Natürlich könnte man das überschreiben, aber das Gerät sendet kurz danach den tatsächlichen Zustand ("on"), der in's Reading übernommen wird. Das könnte man theoretisch auch unterdrücken, aber durch die direkten Peerings kann es dann leicht vorkommen, dass man nicht den tatsächlichen Zustand des Kanals sieht.

Hmmm, vielleicht sollte man das "on-for-timer" doch ganz abschaffen...

Gruß,
  Thorsten
FUIP

Jojo11

Ui, das mit den peerings hatte ich nicht bedacht. Das macht die Sache in der Tat komplizierter. Vielleicht wäre es dann wirklich besser, das on-for-timer zu entfernen. Wenn man es weiß ist es ja ok, aber ich war von einem bestimmten Verhalten ausgegangen. Zudem war es Zufall, dass ich es überhaupt entdeckt habe  ::)

Schöne Grüße
Jo

Thorsten Pferdekaemper

Warten wir mal ab. Vielleicht äußert sich ja noch jemand dazu.
Gruß,
   Thorsten
FUIP