uncleseb Posté(e) le 12 mai 2014 Signaler Partager Posté(e) le 12 mai 2014 Bonjour j'essaye de créer une scène pour les boutons de ma minimote , ca ne fonctionne uniquement si après avoir appuyé sur le bouton je clique sur démarrer dans la config de la scène. Sinon les boutons seuls n'ont aucun effet. Qu'ai je oublié ? id 62 est ma minimote id 56 ma tv id 27 une lampe merci de vos aides --[[ %% properties 62 sceneActivation %% globals --]] local ButtonPressed = fibaro:getValue(62, "sceneActivation") if ( tonumber(ButtonPressed) == 1) then fibaro:call(56, "turnOn") fibaro:debug("MiniMote button 1 pressed") elseif ( tonumber(ButtonPressed) == 3) then fibaro:call(56, "turnOff") fibaro:debug("MiniMote button 2 pressed") elseif ( tonumber(ButtonPressed) == 5) then fibaro:call(27, "turnOn") fibaro:debug("MiniMote button 3 pressed") elseif ( tonumber(ButtonPressed) == 6) then fibaro:call(27, "turnOff") fibaro:debug("MiniMote button 3 long pressed") else fibaro:debug("No response") end Lien vers le commentaire Partager sur d’autres sites More sharing options...
JossAlf Posté(e) le 12 mai 2014 Signaler Partager Posté(e) le 12 mai 2014 Utilise les tag pour le codes c'est plus lisible : --[[ %% properties 62 sceneActivation %% globals --]] local ButtonPressed = fibaro:getValue(62, "sceneActivation") if ( tonumber(ButtonPressed) == 1) then fibaro:call(56, "turnOn") fibaro:debug("MiniMote button 1 pressed") elseif ( tonumber(ButtonPressed) == 3) then fibaro:call(56, "turnOff") fibaro:debug("MiniMote button 2 pressed") elseif ( tonumber(ButtonPressed) == 5) then fibaro:call(27, "turnOn") fibaro:debug("MiniMote button 3 pressed") elseif ( tonumber(ButtonPressed) == 6) then fibaro:call(27, "turnOff") fibaro:debug("MiniMote button 3 long pressed") else fibaro:debug("No response") end Je regarde plus en détail... Lien vers le commentaire Partager sur d’autres sites More sharing options...
JossAlf Posté(e) le 12 mai 2014 Signaler Partager Posté(e) le 12 mai 2014 C'est pas simplement le retour à ligne après %% en ligne 3 sur le code du message précédent ? Voici la correction : --[[ %% properties 62 sceneActivation %% globals --]] local ButtonPressed = fibaro:getValue(62, "sceneActivation") if ( tonumber(ButtonPressed) == 1) then fibaro:call(56, "turnOn") fibaro:debug("MiniMote button 1 pressed") elseif ( tonumber(ButtonPressed) == 3) then fibaro:call(56, "turnOff") fibaro:debug("MiniMote button 2 pressed") elseif ( tonumber(ButtonPressed) == 5) then fibaro:call(27, "turnOn") fibaro:debug("MiniMote button 3 pressed") elseif ( tonumber(ButtonPressed) == 6) then fibaro:call(27, "turnOff") fibaro:debug("MiniMote button 3 long pressed") else fibaro:debug("No response") end Lien vers le commentaire Partager sur d’autres sites More sharing options...
Shad Posté(e) le 12 mai 2014 Signaler Partager Posté(e) le 12 mai 2014 Détail regarde ton entête avec properties, sa marchera mieux si tu supprimes le retour à la ligne . Et sinon tu as un tuto ici, http://www.domotique-fibaro.fr/index.php/topic/729-gestion-minimote/ Lien vers le commentaire Partager sur d’autres sites More sharing options...
JossAlf Posté(e) le 12 mai 2014 Signaler Partager Posté(e) le 12 mai 2014 Tiens en passant un petit truc pour te faire économiser des boutons : Les boutons sont organisés comme suit (en regardant la télécommande face à soit vers le haut) Appui court 1 3 - Appui long 2 4 Appui court 5 7 - Appui long 6 8 Si tu utilises une variable en plus, tu peux savoir si ton module est allumé ou éteint. En appuyant sur le bouton 1 de ta télécommande tu allumes et éteins alternativement ton module 56 En appuyant sur le bouton 2 de ta télécommande tu allumes et éteins alternativement ton module 27 Voici le code : --[[ %% properties 62 sceneActivation %% globals --]] local ButtonPressed = fibaro:getValue(62, "sceneActivation") -- module 56 if ( tonumber(ButtonPressed) == 1) then local MaVariable=fibaro:getValue(56,'value') if (MaVariable=='0')then figaro:call(56, "turnOn") else figaro:call(56, "turnOff") end --appui long 1 rien encore elseif ( tonumber(ButtonPressed) == 2) then --- --- --Module 27 elseif ( tonumber(ButtonPressed) == 3) then local MaVariable=fibaro:getValue(27,'value') if (MaVariable=='0')then figaro:call(27, "turnOn") else figaro:call(27, "turnOff") end -- appui long 2 rien encore elseif ( tonumber(ButtonPressed) == 4) then --- --- --Autre exemple pour le module 9 elseif ( tonumber(ButtonPressed) == 5) then local MaVariable=fibaro:getValue(9,'value') if (MaVariable=='0')then fibaro:call(9, "turnOn") else fibaro:call(9, "turnOff") end -- appui long 3 rien encore elseif ( tonumber(ButtonPressed) == 6) then --- --- --Autre exemple pour le module 10 elseif ( tonumber(ButtonPressed) == 7) then local MaVariable=fibaro:getValue(10,'value') if (MaVariable=='0')then fibaro:call(10, "turnOn") else fibaro:call(10, "turnOff") end --Autre exemple pour le module 36 elseif ( tonumber(ButtonPressed) == 8) then local MaVariable=fibaro:getValue(36,'value') if (MaVariable=='0')then fibaro:call(36, "turnOn") else fibaro:call(36, "turnOff") end end C'est pas beau ça ? Lien vers le commentaire Partager sur d’autres sites More sharing options...
uncleseb Posté(e) le 12 mai 2014 Auteur Signaler Partager Posté(e) le 12 mai 2014 le copier/coller...pas toujours bon trop fort !!! Ca fonctionne un grand merci !!! Autre question , si je dois éteindre plusieurs id , le mieux est de faire une ligne pour chacun ou de les mettre sur la même ligne séparés par une virgule ? Lien vers le commentaire Partager sur d’autres sites More sharing options...
JossAlf Posté(e) le 12 mai 2014 Signaler Partager Posté(e) le 12 mai 2014 Comme tu veux. Je trouve plus lisible de faire des lignes pour chaque module (Comme ça je peux commenter pour savoir à quoi correspond le module 9 ou 75). Si tu envisages savoir des millions de lignes de code tu peux optimiser avec les virgules... Lien vers le commentaire Partager sur d’autres sites More sharing options...
JossAlf Posté(e) le 12 mai 2014 Signaler Partager Posté(e) le 12 mai 2014 trop fort !!! Ca fonctionne un grand merci !!! Tu as pris le code avec la variable en plus pour n'utiliser qu'un bouton pour on et off ? Lien vers le commentaire Partager sur d’autres sites More sharing options...
uncleseb Posté(e) le 12 mai 2014 Auteur Signaler Partager Posté(e) le 12 mai 2014 Tiens en passant un petit truc pour te faire économiser des boutons : Les boutons sont organisés comme suit (en regardant la télécommande face à soit vers le haut) Appui court 1 3 - Appui long 2 4 Appui court 5 7 - Appui long 6 8 Si tu utilises une variable en plus, tu peux savoir si ton module est allumé ou éteint. En appuyant sur le bouton 1 de ta télécommande tu allumes et éteins alternativement ton module 56 En appuyant sur le bouton 2 de ta télécommande tu allumes et éteins alternativement ton module 27 Voici le code : --[[ %% properties 62 sceneActivation %% globals --]] local ButtonPressed = fibaro:getValue(62, "sceneActivation") -- module 56 if ( tonumber(ButtonPressed) == 1) then local MaVariable=fibaro:getValue(56,'value') if (MaVariable=='0')then figaro:call(56, "turnOn") else figaro:call(56, "turnOff") end --appui long 1 rien encore elseif ( tonumber(ButtonPressed) == 2) then --- --- --Module 27 elseif ( tonumber(ButtonPressed) == 3) then local MaVariable=fibaro:getValue(27,'value') if (MaVariable=='0')then figaro:call(27, "turnOn") else figaro:call(27, "turnOff") end -- appui long 2 rien encore elseif ( tonumber(ButtonPressed) == 4) then --- --- --Autre exemple pour le module 9 elseif ( tonumber(ButtonPressed) == 5) then local MaVariable=fibaro:getValue(9,'value') if (MaVariable=='0')then fibaro:call(9, "turnOn") else fibaro:call(9, "turnOff") end -- appui long 3 rien encore elseif ( tonumber(ButtonPressed) == 6) then --- --- --Autre exemple pour le module 10 elseif ( tonumber(ButtonPressed) == 7) then local MaVariable=fibaro:getValue(10,'value') if (MaVariable=='0')then fibaro:call(10, "turnOn") else fibaro:call(10, "turnOff") end --Autre exemple pour le module 36 elseif ( tonumber(ButtonPressed) == 8) then local MaVariable=fibaro:getValue(36,'value') if (MaVariable=='0')then fibaro:call(36, "turnOn") else fibaro:call(36, "turnOff") end end C'est pas beau ça ? La...tu me scotches Je débute c'est brutal pour moi Mais si efficace Je vais regarder ça de plus près Merci !!!! Lien vers le commentaire Partager sur d’autres sites More sharing options...
JossAlf Posté(e) le 12 mai 2014 Signaler Partager Posté(e) le 12 mai 2014 Tu peux faire un copier coller j'ai mis t'es ID ! Mais vire les exemples avec les modules 9 et 10 (pour les boutons courts 3 est 4). Lien vers le commentaire Partager sur d’autres sites More sharing options...
uncleseb Posté(e) le 12 mai 2014 Auteur Signaler Partager Posté(e) le 12 mai 2014 Par contre avec le bouton 1 je veux allumer un seul module (ma tv) mais pour l'arret je veux éteindre la tv + toutes les lumières du salon je ne peux pas utiliser de variables pour ca ? Lien vers le commentaire Partager sur d’autres sites More sharing options...
JossAlf Posté(e) le 12 mai 2014 Signaler Partager Posté(e) le 12 mai 2014 Ben si tu modifies comme ça : --[[ %% properties 62 sceneActivation %% globals --]] local ButtonPressed = fibaro:getValue(62, "sceneActivation") -- module 56 if ( tonumber(ButtonPressed) == 1) then local MaVariable=fibaro:getValue(56,'value') if (MaVariable=='0')then figaro:call(56, "turnOn") -- ta TV else figaro:call(56, "turnOff") figaro:call(ID du module 1 que tu veux éteindre, "turnOff") figaro:call(ID du module 2 que tu veux éteindre, "turnOff") figaro:call(ID du module 3 que tu veux éteindre, "turnOff") -- etc end --reste du code inchangé Lien vers le commentaire Partager sur d’autres sites More sharing options...
JossAlf Posté(e) le 12 mai 2014 Signaler Partager Posté(e) le 12 mai 2014 En revanche je te conseillerais de grouper tous tes modules à éteindre dans une scène/ou un module virtuel que tu pourras utiliser dans plusieurs scénarios. Exemple : Code du module virtuel "Tout OFF" -- 2nd fibaro:call(41, "turnOff"); --lumière ... fibaro:call(42, "turnOff"); -- Lumière ... -- 1er fibaro:call(6, "turnOff"); --lumière orange fibaro:call(9, "turnOff"); --lumière verte fibaro:call(10, "turnOff"); -- lumière zinc fibaro:call(36, "turnOff"); --lumière abajour blanc --RDC fibaro:call(31, "turnOff"); --lumière garage fibaro:call(108, "turnOff"); --lumière chambre du bas fibaro:call(5, "turnOff"); -- Fer à repasser -- modules chacon sur la zibase fibaro:call(67, "pressButton", "2"); -- lumière couloir du haut fibaro:sleep(5000) -- on attend 5 secondes que la zibase se remette fibaro:call(68, "pressButton", "2"); -- lumière plafond Le soir avant de me coucher je lance une scène "Dodo" qui éteint la TV, baisse le chauffage, et "appuie sur le bouton 1 de mon module virtuel "tout off". Pour simuler l'appui sur le bouton 1 de mon MV "Tout off" dont l'ID est 66 j'utilise cette ligne dans ma scène "Dodo" : -- lance module "TOUT OFF" fibaro:call(66, "pressButton", "1"); Voici la scène Dodo complète : --check des portes fibaro:call(85, "pressButton", "1"); --Passer le chauffage à 18.5°C fibaro:call(100, "setTargetLevel", 18.5) --Eteindre lumière blanche fibaro:call(12, "turnOff"); -- lance module "TOUT OFF" fibaro:call(66, "pressButton", "1"); --éteind la TV fibaro:call(89, "pressButton", "3"); Lien vers le commentaire Partager sur d’autres sites More sharing options...
uncleseb Posté(e) le 13 mai 2014 Auteur Signaler Partager Posté(e) le 13 mai 2014 Merci beaucoup pour ces infos !!! Lien vers le commentaire Partager sur d’autres sites More sharing options...
PITP2 Posté(e) le 12 juillet 2014 Signaler Partager Posté(e) le 12 juillet 2014 J'ai lu ici la création d'une scene qui regroupe toutes les lumières pour ensuite pouvoir les éteindre toutes d'un seul coup. Il n'y a donc pas de commande pour éteindre tous les devices du type lumières ? Comment font ils dans l'interface Fibaro sur Ipad ou Android car cette fonction existe ? Lien vers le commentaire Partager sur d’autres sites More sharing options...
JossAlf Posté(e) le 12 juillet 2014 Signaler Partager Posté(e) le 12 juillet 2014 Heu... je comprends pas ta question ? Lien vers le commentaire Partager sur d’autres sites More sharing options...
PITP2 Posté(e) le 12 juillet 2014 Signaler Partager Posté(e) le 12 juillet 2014 En fait lorsque mon alarme s'active j'allume toutes les lumières et il est long d'ajouter àune scene tous les devices de type "lumières" alors que dans l'interface ipad ou android, on peut appuyer sur un seul bouton pour éteindre toutes les lumières par exemple. Je me demandais donc si il existait ce type de commande en lua. Lien vers le commentaire Partager sur d’autres sites More sharing options...
JossAlf Posté(e) le 12 juillet 2014 Signaler Partager Posté(e) le 12 juillet 2014 Il doit bien y avoir une commande all on et all OFF mais je n'ai jamais cherché àfaire ça. Je préfère gérer par une scène ou je choisi les modules àallumer ou éteindre. Lien vers le commentaire Partager sur d’autres sites More sharing options...
Steven Posté(e) le 12 juillet 2014 Signaler Partager Posté(e) le 12 juillet 2014 En LUA, tu peux boucler sur tout les modules. Pour chaque module tu regarde s'ils sont de type binary-light ou dim... (J'ai rien sous les yeux) et dans ce cas tu allumes. Envoyé de mon GT-I9192 en utilisant Tapatalk Lien vers le commentaire Partager sur d’autres sites More sharing options...
Krikroff Posté(e) le 16 juillet 2014 Signaler Partager Posté(e) le 16 juillet 2014 Tu peux aussi déclarer tous les devices que tu souhaites allumer ou éteindre dans un tableau puis boucler dessus ... Envoyé de mon iPhone àl'aide de Tapatalk Lien vers le commentaire Partager sur d’autres sites More sharing options...
Messages recommandés