Bei den Hand- und Wandsendern des HomeMatic Systems werden Tastendrücke nur über einen geänderten Zeitstempel der jeweiligen Variablen detektiert. Es findet also kein Wechsel von TRUE nach FALSE statt. Jedoch ist es möglich einen kurzen von einem langen Tastendrück zu unterscheiden. In IP-Symcon gibt es hierzu zwei Variablen: PRESS_SORT, PRESS_LONG.
Die beiden folgenden Beispiele zeigen, wie die Tastendrucke bei Hand- und Wandsendern ausgewertet werden.
Hinweis: In den Kanaleinstellungen des jeweiligen Key muss der Übertragungsmodus auf „Standard“ stehen!
(HomeMatic Konfiguration)
Beispiel 1: Toggeln (Wechsel TRUE<>FALSE) einer Variable
[ul]
[li] legen Sie eine neue Variable ‚Toggle Test‘ vom Typ Boolean an[/li][li] legen Sie eine neues Skript ‚Toggle Test‘ an[/li][li] geben Sie den u.g. Code ein[/li][li] passen Sie die ID der Variablen an[/li][li] fügen Sie dem Skript ein ‚Ausgelöstes Ereignis / Bei Variablenaktualisierung‘[/li][li] und wählen Sie die Variable ‚ PRESS_SHORT‘ aus[/li][/ul]
SetValue(44929, !GetValue(44929));
Bei kurzen Tastendrücken sollte sich nun der Status der Variablen von TRUE<>FALSE wechseln.
Beispiel 2: Toggeln (Schalten Ein<>Aus) eines Aktors bzw. Beleuchtung (hier HomeMatic)
[ul]
[li] legen Sie eine neues Skript ‚Licht…‘ an[/li][li] geben Sie u.g. Code ein[/li][li] passen Sie die beiden IDs des Aktors an (HM Device, STATE)[/li][li] fügen Sie dem Skript ein ‚Ausgelöstes Ereignis / Bei Variablenaktualisierung‘[/li][li] und wählen Sie die Variable ‚PRESS_LONG‘ aus[/li][/ul]
HM_WriteValueBoolean(40403, "STATE" , !GetValue(53077));
Bei langen Tastendrücken sollte nun die Lampe ein- und ausgeschaltet werden.
Beispiel-Screenshot:
MST