Aller au contenu
d@m!Ch94

Fibaro Keyfob FGKF-601 - Télécommande porte-clés Z-Wave+

Recommended Posts

salut 

 

voici un début de code qui fonctionne bien

 

et dans GEA:

 

GEA.add({"Global", "BUTTON_CARES", "1"},  -1, "", {{....
GEA.add({"Global", "BUTTON_CARES", "2"},  -1, "", {{...

etc

 

--[[
%% properties
%% events
621 CentralSceneEvent 1 Pressed
621 CentralSceneEvent 1 Released
621 CentralSceneEvent 1 HeldDown
621 CentralSceneEvent 1 Pressed2
621 CentralSceneEvent 1 Pressed3
%% globals
--]]



local fonctions = {
-- ------------------------------------------------
-- cares 1 Clic
-- ------------------------------------------------
    ["Pressed"] = function()
      fibaro:debug("cares 1 click");
   fibaro:setGlobal("cares", 1)
  end,
-- ------------------------------------------------
-- cares 2 Clic
-- ------------------------------------------------
    ["Pressed2"] = function()
      fibaro:debug("cares 2click");
    fibaro:setGlobal("cares", 2)
    end,
-- ------------------------------------------------
-- cares 3 Clic
-- ------------------------------------------------
    ["Pressed3"] = function()
      fibaro:debug("cares 3 Clic");
     fibaro:setGlobal("cares", 3)

   end,

-- ------------------------------------------------
-- cares long 
-- ------------------------------------------------     
    ["HeldDown"] = function() 
      fibaro:debug("cares long");
fibaro:setGlobal("cares", 4)

   	end,
-- ------------------------------------------------
-- cares long relaché
-- ------------------------------------------------
    ["Released"] = function()
      fibaro:debug("cares long relaché");
fibaro:setGlobal("cares", 5)
    end,
  
 
 
}


local startSource = fibaro:getSourceTrigger();
action = startSource.event.data.keyAttribute;
fonctions[action]();

 

  • Upvote 2

Partager ce message


Lien à poster
Partager sur d’autres sites
salut 
 
voici un début de code qui fonctionne bien
 
et dans GEA:
 
GEA.add({"Global", "BUTTON_CARES", "1"},  -1, "", {{....GEA.add({"Global", "BUTTON_CARES", "2"},  -1, "", {{...etc

 

--[[%% properties%% events621 CentralSceneEvent 1 Pressed621 CentralSceneEvent 1 Released621 CentralSceneEvent 1 HeldDown621 CentralSceneEvent 1 Pressed2621 CentralSceneEvent 1 Pressed3%% globals--]]local fonctions = {-- -------------------------------------------------- cares 1 Clic-- ------------------------------------------------   ["Pressed"] = function()     fibaro:debug("cares 1 click");  fibaro:setGlobal("cares", 1) end,-- -------------------------------------------------- cares 2 Clic-- ------------------------------------------------   ["Pressed2"] = function()     fibaro:debug("cares 2click");   fibaro:setGlobal("cares", 2)   end,-- -------------------------------------------------- cares 3 Clic-- ------------------------------------------------   ["Pressed3"] = function()     fibaro:debug("cares 3 Clic");    fibaro:setGlobal("cares", 3)  end,-- -------------------------------------------------- cares long -- ------------------------------------------------        ["HeldDown"] = function()      fibaro:debug("cares long");fibaro:setGlobal("cares", 4)  	end,-- -------------------------------------------------- cares long relaché-- ------------------------------------------------   ["Released"] = function()     fibaro:debug("cares long relaché");fibaro:setGlobal("cares", 5)   end,}local startSource = fibaro:getSourceTrigger();action = startSource.event.data.keyAttribute;fonctions[action]();

 


Merci @971jmd.
je teste ça ce soir

À plus

Envoyé de mon SM-G935F en utilisant Tapatalk

Partager ce message


Lien à poster
Partager sur d’autres sites

Bonne idée @971jmd de passer par une variable que tu récupères dans GEA pour faire tes scenarios.

 

Tu aurais pu aussi passer par une etiquette ;-) sauf si tu as beosin de la date de modfication uniquement possible avec les VGs.

Super idée tout de même, ca te permet de tout centraliser dans GEA

Partager ce message


Lien à poster
Partager sur d’autres sites

salut 

 

qu’appelle tu  étiquette ?

 

 

Partager ce message


Lien à poster
Partager sur d’autres sites

Etiquette = "label" sur un VD.

 

Pepite est notre Monsieur Label ;)

 

  • Upvote 1

Partager ce message


Lien à poster
Partager sur d’autres sites

@Lazer

 

Oui j'avoue je suis repéré ;-)

En fait, je suis devenu plutot LABEL que Variable globale suite au bug connu des VGs, un jour suite à une fausse manip de ma part, un clic malencontreux au niveau du panneau de variable tout etait planté.

etant doné que je suis un boulet..ca m'evite quelques mesaventures ;-)

 

Pour ceux qui n'ont jamais testé : un petit save dans le panneau et vous verrez ;-)

 

 

  • Upvote 2

Partager ce message


Lien à poster
Partager sur d’autres sites

Oui, puis c'est nettement plus lisible je trouve que d'avoir des milliers de VG :)

  • Upvote 1

Partager ce message


Lien à poster
Partager sur d’autres sites

Des milliers de VG c'est plus lisible, car on ne les voit pas, tandis que les labels poluent l'interface des VD sur l'écran principal.

Tout est question de point de vue et d'usage.

 

Perso je mixe les 2, des labels uniquement si j'ai besoin de voir l'information rapidement (exemple : depuis l'application), et des VG si je n'ai pas besoin de voir cette info.

Dis autrement, les labels sont des variables "utilisateur", alors que les VG sont des variables "techniques".

Partager ce message


Lien à poster
Partager sur d’autres sites
Le 14/03/2017 à 09:05, pepite a dit :

Bonne idée @971jmd de passer par une variable que tu récupères dans GEA pour faire tes scenarios.

 

Tu aurais pu aussi passer par une etiquette ;-) sauf si tu as beosin de la date de modfication uniquement possible avec les VGs.

Super idée tout de même, ca te permet de tout centraliser dans GEA

salut, 

juste pour comprendre, comment passer justement par une étiquette ? 

Partager ce message


Lien à poster
Partager sur d’autres sites

Ahh met attentions Lazer, moi j'ai le tout dans un seul VD qui sert de stockeur, pas des tonnes de VD qui polluent. Mais au final j'ai fais le ménage pour en avoir le moins possible, des 2 sortes.

Partager ce message


Lien à poster
Partager sur d’autres sites

De même pour moi, j'ai les 2, mais je stocke tout dans un seul VD aussi pour les labels ;-)

 

@971jmd

Créé une etiquette dans un VD.

Dans ton code Remplace

fibaro:setGlobal("cares", 5)

 

par

fibaro:call(idduVD, "setProperty", "ui.label.value", 5)

 

puis dans GEA

{"Label", id_vd, nom_du_label", 5}

 

Partager ce message


Lien à poster
Partager sur d’autres sites

salut @pepite

 

faut il crée un bouton ?

 

dans GEA

GEA.add({"Label", 74, "coco", 5},-1,"test")

Modifié par 971jmd

Partager ce message


Lien à poster
Partager sur d’autres sites

Un bouton ?

On parle d'etiquette, pourquoi un bouton ?

  • Upvote 1

Partager ce message


Lien à poster
Partager sur d’autres sites

Hum, la pile de ma seconde telco mise en route vient de passer dans le rouge. On va mettre ça sur les piles d'origines qui devaient être à chier.

Partager ce message


Lien à poster
Partager sur d’autres sites
Il y a 6 heures, pepite a dit :

Un bouton ?

On parle d'etiquette, pourquoi un bouton ?

nous ne somme pas trop dans le sujet, mai j'ai fini par comprendre

 

dans 30s affecte la valeur "activé" à la label 1 id 625

Dans :  GEA.add(true, 30, "", {{"Label", 625, "Label1", "activé"}}) 

 

mai juste une autre chose, y-a-t-il la possibilités de faire le contraire 

 

si Label1 ID625 passe a la valeur = activée alors........

GEA.add({"Label", 625, "Label1", "activé"} , -1 , "", {.........}) 

 

pour ne pas polluée le topic  Keyfob FGKF-601, tu me répondre dans le topic GEA

 

Partager ce message


Lien à poster
Partager sur d’autres sites

@971jmd sais tu si on peut intégrer dans ton code les autres boutons ?

Partager ce message


Lien à poster
Partager sur d’autres sites

Hum, bon la pile de ma seconde telco vient de passer dans le rouge. Vais attendre qu'elles soient 100% vide, et je repartirai avec un jeu neuf pour juger. On va mettre ça sur le dos des piles d'origines qui étaient pourries.

Et vous ça donne quoi ?

 

Sinon après presque 1 mois, quel bonheur cette télécommande !

Partager ce message


Lien à poster
Partager sur d’autres sites

Idem, que du bonheur cette télécommande !

Concernant la pile la mienne est toujours à 50 % et n'a jamais été à 100%, soit les piles sont foireuses, soit la jauge n'est pas correctement étalonnée...


Envoyé de mon iPhone en utilisant Tapatalk

  • Upvote 1

Partager ce message


Lien à poster
Partager sur d’autres sites

C'est pour ça, je vais laisser dedans, on verra bien.

Partager ce message


Lien à poster
Partager sur d’autres sites

Hum, je viens de capter un truc, il y avait aussi un autocollant sous la pile... J'avais pas fais gaffe. Bon je ne vois pas trop ce que cela change qu'il y soit ou non, mais peut être que cela n'a pas aidé...

Partager ce message


Lien à poster
Partager sur d’autres sites

Bon, bah énorme :

Du coup j'ai enlevé cet autocollant arrière, une des 2 est passé à 100%, la seconde à 100% 1 minute puis 50%... Magique. A suivre donc. Qqun d'autre avait fait le boulet comme moi ?

Mais bon, j'avoue ne pas comprendre ce que cela change, car il n'y a aucun contact au centre à l'arrière où se trouve l'autocollant.

Partager ce message


Lien à poster
Partager sur d’autres sites

J'utilise cela comme code pour tous les 6 boutons dans une scène. Je n'ai pas encore activé les double et triple click des paramètres 21 à 26.

 


--[[
%% properties
%% globals
%% events
563 CentralSceneEvent 1
563 CentralSceneEvent 2
563 CentralSceneEvent 3
563 CentralSceneEvent 4
563 CentralSceneEvent 5
563 CentralSceneEvent 6
%% killOtherInstances
--]]

function actions(button,action)
  	if button=="1" then
    	if action=="Pressed" then
    		fibaro:debug("Appui Carre Simple")
    	elseif action=="HeldDown" then
    		fibaro:debug("Appui Carre long")
    	elseif action=="Released" then
    		fibaro:debug("Appui Carre relache")
  		end
  	elseif button=="2" then
    	if action=="Pressed" then
    		fibaro:debug("Appui rond Simple")
    	elseif action=="HeldDown" then
    		fibaro:debug("Appui rong long")
    	elseif action=="Released" then
    		fibaro:debug("Appui rond relache")
  		end
  	elseif button=="3" then
    	if action=="Pressed" then
    		fibaro:debug("Appui Croix Simple")
    	elseif action=="HeldDown" then
    		fibaro:debug("Appui Croix long")
    	elseif action=="Released" then
    		fibaro:debug("Appui Croix relache")
  		end
  	elseif button=="4" then
    	if action=="Pressed" then
    		fibaro:debug("Appui triangle Simple")
    	elseif action=="HeldDown" then
    		fibaro:debug("Appui triangle long")
    	elseif action=="Released" then
    		fibaro:debug("Appui triangle relache")
  		end
  	elseif button=="5" then
    	if action=="Pressed" then
    		fibaro:debug("Appui Moins Simple")
    	elseif action=="HeldDown" then
    		fibaro:debug("Appui Moins long")
    	elseif action=="Released" then
    		fibaro:debug("Appui Moins relache")
  		end
  	elseif button=="6" then
    	if action=="Pressed" then
    		fibaro:debug("Appui Plus Simple")
    	elseif action=="HeldDown" then
    		fibaro:debug("Appui Plus long")
    	elseif action=="Released" then
    		fibaro:debug("Appui Plus relache")
  		end
	end
end

local trigger = fibaro:getSourceTrigger()
local action = ""
local button = ""
fibaro:debug("Source : "..trigger["type"])
if (trigger["type"] == "other") then
	action=""  
else
  	local pressSource = fibaro:getSourceTrigger()
	button = tostring(pressSource.event.data.keyId)
  	action = pressSource.event.data.keyAttribute
end
if action ~= "" then
  	fibaro:debug("button : "..button.." / Action : "..action)
	actions(button,action)
end

 

Partager ce message


Lien à poster
Partager sur d’autres sites

Bon, bah celle de ma femme reste à 100% désormais et la mienne à 50%. Je vais tenter de gratter la colle de l'autocollant qui reste encore un peu :)

  • Upvote 1

Partager ce message


Lien à poster
Partager sur d’autres sites

Une photo de l'interieur Mr nico pour se rendre compte ?

Envoyé de mon SM-G928F en utilisant Tapatalk

Partager ce message


Lien à poster
Partager sur d’autres sites

On vient de m'offrir ce nouveau jouet pas mal un peu petit pour mes grosses mains :)

 

Voici un morceau de code pour tester la télécommande

 

--[[
%% events
388 CentralSceneEvent

--]]

-- trigger de la télécommade 388 CentralSceneEvent

local sourceTrigger = fibaro:getSourceTrigger();
if (sourceTrigger['type'] == 'event') then
  NomBouton = sourceTrigger.event.data.keyId
  ValeurBouton = sourceTrigger.event.data.keyAttribute
  fibaro:debug("Non Bouton "..NomBouton.." - Valeur du Bouton : "..ValeurBouton)
end

 

Partager ce message


Lien à poster
Partager sur d’autres sites

×