Aller au contenu

FGS-223 Double Switch 2


Alexandru

Messages recommandés

Bonjour ,

 

Je viens d'installer un module FGS-223 Fibaro, le switch S1 je l'utilisé pour allumer un circuit d'éclairage , mais pour S2 je voudrais bien déclencher des scènes .

La question est de savoir comment utiliser cette fonction de S2?

Merci a vous tous pour aide Capture d’écran 2016-12-11 à 13.07.47.png

Lien vers le commentaire
Partager sur d’autres sites

Salut @Alexandru, j'ai cherché ça aussi en son temps, voici la scène que j'ai adaptée de ce que j'avais trouvé. Le périphérique 35 est mon FGS-223, le 37 est relié à mes spots et le simple clic les allume.

 

(Tu verras que je déclenche une autre scène en faisant un double-clic : allumer/éteindre le radiateur infrarouge).

 

--[[ 
%% properties 
35 sceneActivation
%% globals 
--]]

local NumScene = tonumber(fibaro:getValue(35, "sceneActivation"))

if (NumScene == 26)
then
fibaro:debug("Bouton gauche (S2) appuyé (court):")

if ((tonumber(fibaro:getValue(37, 'value'))) == 0)
then
fibaro:call(37,'turnOn')
fibaro:debug("Allumage des spots")
else
fibaro:call(37,'turnOff')
fibaro:debug("Extinction des spots")
end

elseif (NumScene == 24)
then
fibaro:debug("Bouton gauche (S2) appuyé (double-clic): exécution de la scène 1") 
fibaro:startScene(1)
end

Les numéros de scène et ce à quoi ça correspond sont indiqués sur le tutoriel (merci à Domotique Store, la source) que j'ai suivi pour y arriver.

  • Upvote 1
Lien vers le commentaire
Partager sur d’autres sites

Bonjour,

J'ai essayé de trouver les numéros de scènes , en fonction du bouton appuyé , dans mon cas (S2) , mais apparemment j'ai ça ...

 

Bien a vous,

--[[
%% properties
168 sceneActivation
%% globals
--]]

local NumScene = fibaro:getValue(168, "sceneActivation")
fibaro:debug("Numéro de scène: " ..NumScene)


[DEBUG] 12:05:20: line 8: attempt to concatenate local 'NumScene' (a nil value)
[DEBUG] 12:30:19: line 8: attempt to concatenate local 'NumScene' (a nil value)
[DEBUG] 12:48:31: line 8: attempt to concatenate local 'NumScene' (a nil value)
[DEBUG] 12:48:36: line 8: attempt to concatenate local 'NumScene' (a nil value)

 

Lien vers le commentaire
Partager sur d’autres sites

  • 1 mois après...

Bonsoir,

J'espère que cela peut-être utile...

--[[
%% properties
%% events
165 CentralSceneEvent
%% globals
--]]

-- use first slave for "CentralSceneEvent" ID (not master, not switch itself.).

local trigger = fibaro:getSourceTrigger()

 --trick to quickly interpret the data held in "trigger":
 fibaro:debug (json.encode(trigger))

if (trigger.type == "other") then
  fibaro:debug("Scene started by clicking 'start' button")
else
  local pressSource = fibaro:getSourceTrigger().event.data
  fibaro:debug("CentralSceneEvent received from key: "..pressSource.keyId)
  if pressSource.keyAttribute == "Pressed" then
    fibaro:debug("Pressed") -- replace with scene/device/VD
  elseif pressSource.keyAttribute == "Pressed2" then
    fibaro:debug("Pressed 2 times") -- replace with scene/device/VD
  elseif pressSource.keyAttribute == "Pressed3" then
    fibaro:debug("Pressed 3 times") -- replace with scene/device/VD
  elseif pressSource.keyAttribute == "HeldDown" then
    fibaro:debug("HeldDown") -- replace with scene/device/VD
  elseif pressSource.keyAttribute == "Released" then
    fibaro:debug("Released") -- replace with scene/device/VD
  else
    fibaro:debug("Unknown CentralSceneEvent:"..pressSource.keyAttribute)
  end
end


 

Lien vers le commentaire
Partager sur d’autres sites

[DEBUG] 21:36:01: {"type":"event","event":{"type":"CentralSceneEvent","data":{"keyId":2,"keyAttribute":"Pressed2","deviceId":165,"icon":{}}}}
[DEBUG] 21:36:01: CentralSceneEvent received from key: 2
[DEBUG] 21:36:01: Pressed 2 times
[DEBUG] 21:36:32: {"type":"event","event":{"data":{"deviceId":165,"icon":{},"keyAttribute":"Pressed2","keyId":2},"type":"CentralSceneEvent"}}
[DEBUG] 21:36:32: CentralSceneEvent received from key: 2
[DEBUG] 21:36:32: Pressed 2 times
[DEBUG] 21:36:46: {"type":"event","event":{"data":{"keyId":2,"icon":{},"keyAttribute":"Pressed3","deviceId":165},"type":"CentralSceneEvent"}}
[DEBUG] 21:36:46: CentralSceneEvent received from key: 2
[DEBUG] 21:36:46: Pressed 3 times
[DEBUG] 21:37:00: {"type":"event","event":{"type":"CentralSceneEvent","data":{"keyId":2,"icon":{},"deviceId":165,"keyAttribute":"Pressed"}}}
[DEBUG] 21:37:00: CentralSceneEvent received from key: 2
[DEBUG] 21:37:00: Pressed
[DEBUG] 21:37:01: {"event":{"data":{"icon":{},"keyId":2,"deviceId":165,"keyAttribute":"Pressed"},"type":"CentralSceneEvent"},"type":"event"}
[DEBUG] 21:37:01: CentralSceneEvent received from key: 2
[DEBUG] 21:37:01: Pressed

 

  • Upvote 1
Lien vers le commentaire
Partager sur d’autres sites

J'ai quelques soucis avec le FGS-223.

 

Je n'arrive pas a faire déclencher des scènes avec ce module, sceneActivation n'est jamais appelé, quoique j'essaie.

Par contre, CentralSceneEvent est bien appelé, mais c'est quand même moins pratique.

 

Quelqu'un a réussi à faire fonctionner ses scripts avec sceneActivation ? C'est pourtant une des fonctionnalités listées dans les caractéristiques de ce module..

 

De la même manière, est-il possible de ne pas switcher la sortie 2 en appuyant sur le bouton 2, ou la sortie 1 en appuyant sur le bouton 1 ?

Lien vers le commentaire
Partager sur d’autres sites

Ca n'est pas que je ne veux pas, je comprenais pas en fait pourquoi ca n'était plus sceneActivation.

 

Entre-temps j'ai contacté le support de Fibaro qui m'a répondu étonnement rapidement avec des exemples et tout.

 

Par contre, dis-moi, pourquoi pour toi c'est mieux CentralSceneEvent ? Une raison particulière ? 

Lien vers le commentaire
Partager sur d’autres sites

Bonsoir @netsuo et @GCaster,

 

Je n'ai pas dit que c'etait mieux, les nouveaux modules qui sortent sont avec CentralSceneEvent, fibaro Button, le swipe... On est bien obligé de faire avec ;-)

 

C'est juste un coupe a prendre, entre le keyId et le KeyAttribute, c'est vrai qu'au premier abord c'est mois simple que sceneActivation ;-)

Lien vers le commentaire
Partager sur d’autres sites

J'apprends peut-être rien à personne mais j'ai trouvé je ne sais plus où (à force de chercher partout des infos) que l'on peut spécifier dans l'entête l'événement à capturer. Par exemple avec mon code de changement d'ambiance Philips HUE ci-dessous.

Le code se déclenche pour le bouton 1 du device 31, événement "Pressed2", pour double click.

 

Ça permet de bien découper en scènes distinctes.

--[[
%% properties
%% events
31 CentralSceneEvent 1 Pressed2
%% globals
--]]
 
local trigger = fibaro:getSourceTrigger()
local hue_bande_led = 6;
local button = 33;
local switched_on = fibaro:getValue(button, 'value') == "1" and true or false;
local switch_text = switched_on and 'turnOn' or 'turnOff'; 

if (trigger["type"] ~= "other") then
	local pressSource = fibaro:getSourceTrigger()["event"]["data"];
    fibaro:call(hue_bande_led, switch_text);
    fibaro:debug('Switch: '..switch_text);
  	if (switched_on) then
    	fibaro:call(hue_bande_led, "changeSaturation", 99);
    	fibaro:call(hue_bande_led, "changeBrightness", 77);
    	fibaro:call(hue_bande_led, "changeHue", 55963);   
    	fibaro:debug('Change Hue');
  	end
end

 

Modifié par netsuo
  • Upvote 1
Lien vers le commentaire
Partager sur d’autres sites

  • 1 mois après...
×
×
  • Créer...