2. Tasten-Druck Fibaro auswerten

Ich habe Fibaro Relay Switch 2x1,5kW FGS211 im Einsatz.

Würde gerne einen 2. Tastendruck auswerten und eine weitere Schaltfunktion ausführen.

Beispiel:
Wenn ich im KG den Taster 2 x kurz hintereinander betätige soll das Licht im Flur EG ebenfalls ausgeschaltet werden.

Hat jemand so etwas schon realisiert ?? bzw, eine Idee…

LG

Jürgen

Wenn ich das richtig verstanden habe, ist hier scene activation das richtige für dich?

Gesendet von meinem GT-I9300 mit Tapatalk

Und wenn im KG die Taste nur 1x betätigt wird bleibt das Licht im EG an!?

Ich glaube man kann bei IPS (noch nicht) die Zeit der letzten Aktualisierung ermitteln …
Geht dann so:
Mann benötigt eine Float-Variable [Schaltzeit] in der die Zeit der letzten Betätigung gespeichert wird.
Dann noch eine Ereignissteuerung bei Statusänderung der Kellerlampe.
Und ein Script zum auswerten/steuern das vom Ereignis gestartet wird.


$last = GetValueFloat(39986 /*[KG-Lampe\Schaltzeit]*/);
$now = microtime(true);
setValue(39986 /*[KG-Lampe\Schaltzeit]*/,$now);
if($now-$last <= 2.0)
{
   ZW_SwitchMode(33600 /*[EG-Lampe]*/, (GetValueBoolean(46340 /*[KG-Lampe\Status]*/))) ;
}

Schaltet man innerhalb von 2 Sekunden die Kellerlampe
AUS AN AUS geht das Licht im Erdgeschoss auch AUS
AN AUS AN -> EG Licht geht auch AN

-Joe

Hi Joe,
Aktualisierung geht doch.

Ich mache mit einem mehrmaligen Schalten (in kurzer Zeit) einen zusätzlichen Aktor an, noch in anderen Abhängigkeiten (wie Stromverbrauch…).
Die grundsätzliche Frage ist halt, ob Du ein Betätigen unabhängig von IPS zum Schalten mindestens einer Lampe führen soll. Für mich ist dies eine Bedingung, praktisch auch im Ausfall von IPS wenigstens das Licht noch anzubekommen. Ohne diese „Notwendigkeit“ ist man sicher freier in den Möglichkeiten:

<?
//
$Geschaltet=49118 /*[Licht und Steckdosen\ZimerrZ-Wave Dimmer (NodeID 017)\Geschaltet]*/;
$RunScript=54931 /*[Energieverbrauch\Plugwise-Stecker\Zimmer\Einschalten]*/;
$PlugObject=16566 /*[Program\IPSLibrary\data\hardware\Plugwise\Circles\PC\Status]*/;
//
// Ermittlung letzte Aktualisierungszeit
   $time = microtime(true);
   $timeupdate_auto=IPS_GetVariable($Geschaltet);                 //hier für einfachsten Fall die FIBARO-Status-Variable
   $timeupdate_auto= $timeupdate_auto['VariableUpdated'];
   $Difftime=(floor(abs($time-$timeupdate_auto)));
   if ($Difftime<1) {
//     echo "Lichtschalter prellt $Difftime";
   Goto Ende_Script;
   }
// echo"Schalter betätigt vor $Difftime sec     ";
   If ($Difftime<4)  {
//  echo "Erneute Bedienung registriert";
       IPS_RunScript($RunScript);
   }
   Ende_Script:
   SetValue($Geschaltet,True);     //diese Variable dient nur zur Unterscheidung ob per Hand oder per IPS geschaltet wurde (sonst den Stati des Fibaros auswerten)
?>

Ups,

ich hatte bei IPS_GetInstance gesucht und dort bei TimeStamp „reserved“ gefunden …

Saubere Sache so!

-Joe

:slight_smile:

ich glaube das wird nur beim Dimmer unterstützt oder ??

Ansonst wäre das die beste Lösung.

Vielen Dank für Lösungsansätze / Scripte…werde das morgen mal probieren.