MAM78 Posté(e) le 29 novembre 2021 Signaler Posté(e) le 29 novembre 2021 il y a 8 minutes, Lazer a dit : Elle est juste mal écrite, tu aurais pu t'en rendre compte en la regardant mieux, ou en regardant les logs de GEA. Je suis certain que la règle se déclenche, mais n'effectue aucune action. Quelle grosse erreur de newbie. Désolé pour le dérangement
971jmd Posté(e) le 3 décembre 2021 Signaler Posté(e) le 3 décembre 2021 (modifié) salut à tous Je suis sur GEA 7.35 et je pense avons détecté un bug ou pas .. ma variable FER ne passe pas a A après les 190 sec en gos elle ne fonctionne pas avec le Sleep GEA.add( {{"CentralSceneEvent", id["TELECO_CH_PARENT"], 2, "Pressed3"}, {"(Global)", "FER", "A"}}, -1, "" ,{ {"turnOn", id["FERS_A_REPASSER"]}, {"Global", "FER", "B"}, {"Sleep", 180, {"turnOff", id["FERS_A_REPASSER"] }}, --- AUTO OFF du FERS_A_REPASSER {"Sleep", 190, {"Global", "FER", "A"}} }) GEA.add( {{"(Global)", "FER", "B"}, {"CentralSceneEvent", id["TELECO_CH_PARENT"], 2, "Pressed3"}} , -1, "", { {"turnOff", id["FERS_A_REPASSER"] }, {"Sleep", 2, {"Global", "FER", "A"}} }) Modifié le 3 décembre 2021 par 971jmd
Lazer Posté(e) le 3 décembre 2021 Signaler Posté(e) le 3 décembre 2021 Je ne suis pas fan de ta façon de gérer le AutoOFF. Si le Sleep plante, ou GEA plante, ou la HC3 plante, ton fer ne sera jamais éteint. C'est trop compliqué comme règle. La preuve ça ne fonctionne pas. Il faut décomposer et revenir aux fondamentaux de GEA ("What To Do If Still Open"). Pour rappel, à l'origine ça servait à avertir quand une porte était restée ouverte depuis un certain temps.... ou encore un appareil allumé depuis un certain temps, ce qui est exactement ton cas. Une règle à déclenchement instantané pour allumer le fer, et une autre pour l'éteindre après 3 minutes : GEA.add( {{"CentralSceneEvent", id["TELECO_CH_PARENT"], 2, "Pressed3"}, {"(Global)", "FER", "A"}}, -1, "", {{"turnOn", id["FERS_A_REPASSER"]}, {"Global", "FER", "B"}} ) GEA.add( {id["FERS_A_REPASSER"], {"Global", "FER", "B"}}, 3*60, "", {{"turnOff", id["FERS_A_REPASSER"]}, {"Global", "FER", "A"}} ) --- AUTO OFF du FERS_A_REPASSER J'ai laissé la variable globale mais j'ai l'impression qu'elle est inutile.
971jmd Posté(e) le 3 décembre 2021 Signaler Posté(e) le 3 décembre 2021 (modifié) Le pourquoi que j'utilise les globale les variables, c'est pas ce que je cherche à me mettre dans un mode ou à tout moment je peux éteindre le fer a repasser Et c'est là que tout se complique Modifié le 3 décembre 2021 par 971jmd
Lazer Posté(e) le 3 décembre 2021 Signaler Posté(e) le 3 décembre 2021 OK je vois. Essaye les lignes que je t'ai proposé, c'est plus simple. Règle d'or de GEA (pardon, règle d'or de la programmation informatique) => quand un code ne fonctionne pas, on le décompose en éléments simples. 1
971jmd Posté(e) le 3 décembre 2021 Signaler Posté(e) le 3 décembre 2021 effectivement décomposition ---FER--- GEA.add(true,0 , "", { {"Global", "FER", "A"} }) GEA.add( { {"CentralSceneEvent", id["TELECO_CH_PARENT"], 2, "Pressed3"}, {"(Global)", "FER", "A"}}, -1, "", { {"turnOn", id["FERS_A_REPASSER"]}, {"Global", "FER", "AUTO"}} ) GEA.add( { {id["FERS_A_REPASSER"]}, {"Global", "FER", "AUTO"}}, 1*60, "", {{"turnOff", id["FERS_A_REPASSER"]}, {"Global", "FER", "A"}} ) --- AUTO OFF du FERS_A_REPASSER ----off forcée GEA.add( { {"CentralSceneEvent", id["TELECO_CH_PARENT"], 2, "Pressed3"}, {"(Global)", "FER", "AUTO"}}, -1, "", {{"turnOff", id["FERS_A_REPASSER"]}, {"Global", "FER", "A"} })
971jmd Posté(e) le 3 décembre 2021 Signaler Posté(e) le 3 décembre 2021 (modifié) GEA.add(true,0 , "", { {"Global", "FER", "A"} }) GEA.add( { {"CentralSceneEvent", id["TELECO_CH_PARENT"], 2, "Pressed3"}, {"(Global)", "FER", "A"}}, -1, "", { {"turnOn", id["FERS_A_REPASSER"]}, {"Global", "FER", "AUTO"}} ) local AUTOOFFFER = GEA.add( { {id["FERS_A_REPASSER"]}, {"Global", "FER", "AUTO"}}, 1*60, "", { {"turnOff", id["FERS_A_REPASSER"]}, {"Global", "FER", "A"}} ) --- AUTO OFF du FERS_A_REPASSER ----off forcée GEA.add( { {"CentralSceneEvent", id["TELECO_CH_PARENT"], 2, "Pressed3"}, {"(Global)", "FER", "AUTO"}}, -1, "", {{"turnOff", id["FERS_A_REPASSER"]}, {"Global", "FER", "A"}, {"StopTask", AUTOOFFFER } }) avec un StopTask c'est plus propre merci pour le recadrage Modifié le 3 décembre 2021 par 971jmd
Lazer Posté(e) le 3 décembre 2021 Signaler Posté(e) le 3 décembre 2021 Ben voilà, tu maitrises mieux que moi, je ne sais même pas utiliser le StopTask
oldelvis Posté(e) le 8 décembre 2021 Signaler Posté(e) le 8 décembre 2021 Bonsoir à tous, me voila l'"heureux" (avec mille guillemets) possesseur d'une HC3 et comme beaucoup j'essaie d'adapter mes VD en QA.suis J'ai donc installer le QA de détection de présence des adresses Mac des portables de la maison. Ca fonctionne bien et j'ai un QA pour chaque portable. J'aimerais, comme dans GEA pour la HC2, me servir de ces présences comme condition d'une ligne GEA. Sur HC2, je passais par l'intermédiaire de variables globales et tout roulait bien. Ma question du jour est : comment récupérer l'état du QA qui passe en On quand l'adresse Mac est détectée ? Il faudrait récupérer l'état On du QA en condition de GEA... Mais comment faire ? J'ai essayé un peu toutes les possibilités mais rien n'y fait... Si qqun passe par là , je suis preneur d'une idée.. Merci
Dragoniacs Posté(e) le 9 décembre 2021 Signaler Posté(e) le 9 décembre 2021 Il faut utiliser des 'true' et 'false' dans la version GEA sur HC3.Envoyé de mon M2012K11AG en utilisant Tapatalk
oldelvis Posté(e) le 9 décembre 2021 Signaler Posté(e) le 9 décembre 2021 Merci pour ta réponse, j'avais pourtant essayé mais sans succès. Probablement une erreur de syntaxe. Ca fonctionne comme ça : GEA.add({"Value" , 35, false},..... 1
Lazer Posté(e) le 9 décembre 2021 Signaler Posté(e) le 9 décembre 2021 Si tu mets false, ça ne déclenchera la règle que lorsque le module sera au statut false, donc j'ai envie de dire, quand tu es absent, est-ce bien ce que tu cherches ? (note : je ne connais pas le QA de détection de présence que tu utilises)
oldelvis Posté(e) le 9 décembre 2021 Signaler Posté(e) le 9 décembre 2021 Oui, c'est bien ce que je cherche. J'ai une ligne GEA avec true pour présent et false pour absent. Le QA est une adaptation d'un VD qui existait sur HC2. Il cherche les adresses MAC de chaque téléphone sur la table arp.
Lazer Posté(e) le 9 décembre 2021 Signaler Posté(e) le 9 décembre 2021 OK très bien. Et donc ça marche au final ?
oldelvis Posté(e) le 9 décembre 2021 Signaler Posté(e) le 9 décembre 2021 Ca marche.. Dès qu'il y a un changement d'état. J'ai ma condition remplie qui se déclenche..
manulemalin Posté(e) le 9 décembre 2021 Signaler Posté(e) le 9 décembre 2021 Bonsoir J'utilise GEA pour l'ouverture/Fermeture de mes volets le matin et le soir. Depuis quelques semaines, systématiquement le lundi à 0h01 environ (1er jour de la semaine du coup) et au redémarrage de ma HC3, la scène d'ouverture de volets se mets en route. Auparavant je n'avais aucun soucis, du coup je sèche... Voici les lignes inséré dans la config GEA : -- ========================================================== -- Gestion des volets -- ========================================================== -- Ouverture volets après lever du soleil mais pas avant 7h45 en semaine GEA.add({{"Days", "WeekDays"},{"Time", "Sunrise>07:45", "07:50"}}, 60, "Ouverture volets", {"StartScene", 36} ) -- Ouverture volets après lever du soleil mais pas avant 8h45 le weekend GEA.add({{"Days", "WeekEnd"},{"Time", "Sunrise>08:40", "08:45"}}, 60, "Ouverture volets", {"StartScene", 36} ) -- fermeture volets 10 mns après coucher du soleil GEA.add({"Time", "sunset","sunset+1"}, 60, "Fermeture des volets", {"StartScene", 35} ) Merci de votre aide PS: @Lazer, désolé pour le post au mauvais endroit tout a l'heure
Lazer Posté(e) le 9 décembre 2021 Signaler Posté(e) le 9 décembre 2021 Tu es certain que c'est GEA qui déclenche la scène à 0:01 ? Parce que les règles semblent OK. Tu as des logs dans GEA qui te disent ça ? Tu parles de reboot de la HC3, si ça se trouve c'est juste ta scène qui est en démarrage automatique.... donc pas la faute de GEA.
manulemalin Posté(e) le 9 décembre 2021 Signaler Posté(e) le 9 décembre 2021 Bonsoir Lazer Merci de ta réponse. J'ai verifié, c'est bien GEA qui déclenche la scène. si je stop et relance GEA, j'ai le même résultat... Au niveau des logs, j'ai ça (apres les lignes de suppression d'option inutile) : [09.12.2021] [21:36:28] [DEBUG] [QA_GEA_75]: ... vérification en cours #1 @60s... [09.12.2021] [21:36:28] [DEBUG] [QA_GEA_75]: [stoppé] #1 : Démarrage GEA [09.12.2021] [21:36:28] [DEBUG] [QA_GEA_75]: @60s [Validation] #2 : Démarrage box [09.12.2021] [21:36:28] [DEBUG] [QA_GEA_75]: @60s [Validation] #3 : Détection nouvelle version [09.12.2021] [21:36:28] [DEBUG] [QA_GEA_75]: @60s [Validation] #4 : Détection nouvelle version beta [09.12.2021] [21:36:28] [DEBUG] [QA_GEA_75]: @60s [Validation*] #5 : ["Days",["WeekDays"]] ["Time",["Sunrise>07:45","07:50"]] => ["StartScene",[36]] [09.12.2021] [21:36:28] [DEBUG] [QA_GEA_75]: [Démarrage] #5 : ["Days",["WeekDays"]] ["Time",["Sunrise>07:45","07:50"]] => ["StartScene",[36]] [09.12.2021] [21:36:28] [DEBUG] [QA_GEA_75]: [action] ["StartScene",[36]] [09.12.2021] [21:36:28] [DEBUG] [QA_GEA_75]: @60s [Validation] #6 : ["Days",["WeekEnd"]] ["Time",["Sunrise>08:40","08:45"]] => ["StartScene",[36]][09.12.2021] [21:36:28] [DEBUG] [QA_GEA_75]: @60s [Validation] #7 : ["Time",["sunset","sunset+1"]] => ["StartScene",[35]][09.12.2021] [21:37:26] [DEBUG] [QA_GEA_75]: ... vérification en cours #2 @120s... [09.12.2021] [21:37:26] [DEBUG] [QA_GEA_75]: @120s [Validation] #2 : Démarrage box [09.12.2021] [21:37:26] [DEBUG] [QA_GEA_75]: @120s [Validation] #3 : Détection nouvelle version [09.12.2021] [21:37:26] [DEBUG] [QA_GEA_75]: @120s [Validation] #4 : Détection nouvelle version beta [09.12.2021] [21:37:26] [DEBUG] [QA_GEA_75]: [stoppé] #5 : ["Days",["WeekDays"]] ["Time",["Sunrise>07:45","07:50"]] => ["StartScene",[36]] [09.12.2021] [21:37:26] [DEBUG] [QA_GEA_75]: @120s [Validation] #6 : ["Days",["WeekEnd"]] ["Time",["Sunrise>08:40","08:45"]] => ["StartScene",[36]] [09.12.2021] [21:37:26] [DEBUG] [QA_GEA_75]: @120s [Validation] #7 : ["Time",["sunset","sunset+1"]] => ["StartScene",[35]] [09.12.2021] [21:38:26] [DEBUG] [QA_GEA_75]: ... vérification en cours #3 @180s...
Lazer Posté(e) le 9 décembre 2021 Signaler Posté(e) le 9 décembre 2021 Ah oui là c'est étrange, mais du coup j'ai l'impression que c'est un effet de bord des sunrise > ... Je n'ai jamais été à l'aise avec cette syntaxe à vrai dire, mais j'imagine que si le soleil se lève après 7h50, le début et la fin de l'intervalle indiqué sont inversés, du coup problème. Déjà essaye de virer les sunrise et de mettre des horaires statiques pour voir si ça change le comportement. Sinon... ben... sans certitude, mais peut être que cette condition résoudrait le problème, à tester : {"Time", "Sunrise>07:45", Sunrise>"07:50"}
manulemalin Posté(e) le 9 décembre 2021 Signaler Posté(e) le 9 décembre 2021 Je viens de tester cette condition : {"Time", "Sunrise>07:45", Sunrise>"07:50"}, par contre j'ai décalé les " {"Time", "Sunrise>07:45", "Sunrise>07:50"} car sinon les vérifications ne s’effectuait pas. 1er résultat, la scène ne démarre pas directement et ça c'est cool..... A voir si elle démarre demain matin Je te tiens au courant Merci Lazer et bonne fin de soirée
manulemalin Posté(e) le 13 décembre 2021 Signaler Posté(e) le 13 décembre 2021 Bonsoir Après avoir fait ma modification, j'ai attendu patiemment le lundi... Tout est rentré dans l'ordre en utilisant la syntaxe suivante GEA.add({{"Days", "WeekDays"},{"Time", "sunrise>07:45"}}, 60, "Ouverture volets", {"StartScene", 36} ) Pourquoi l'ancienne syntaxe a fonctionné correctement de nombreux mois, puis c'est mis a m'ouvrir les volets le 1er jours de la semaine a 0h01 environ...Mystère ! Merci pour ton aide Lazer
Lazer Posté(e) le 13 décembre 2021 Signaler Posté(e) le 13 décembre 2021 Peut être parce que l'heure de lever de soleil a dépassé 7h45 chez toi à cause de l'hiver. Du coup la règle s'est inversée, comme je le craignais dans ma tentative d'explication il y a quelques jours. En tout cas tant mieux
971jmd Posté(e) le 13 décembre 2021 Signaler Posté(e) le 13 décembre 2021 (modifié) bonsoir Je souhaiterais savoir si cela est possible Aussitôt que le volet descends alors notification GEA.add({"Function", function() if (tonumber(fibaro:getValue(279, "close")) }, -1 , "le volet se ferme") Après si cela fonctionne, l'idée serait de rajouter une deux condition à la première 1- si le volet est en descente 2- attendre 3s avant de prendre sa consommation en W 3- Après les 3s, prendre ça consommation et si le volet dépasse 153 W alors STOP le vl ...... Modifié le 13 décembre 2021 par 971jmd
Lazer Posté(e) le 13 décembre 2021 Signaler Posté(e) le 13 décembre 2021 Ouh là là mais pourquoi tu écris des choses aussi compliquées ?! Au choix : GEA.add(279, -1, "le volet se ferme", {"Inverse"}) GEA.add({"Value", 279, false}, -1, "le volet se ferme") Regarde la doc et les exemples, c'est la base là... Pour ta condition avec le délai de 3s je ne te conseille pas de le faire avec GEA, car tu ne peux pas garantir que ton action s'effectuera après 3 secondes... ça sera peut être 4, voire plusieurs secondes plus tard selon les tâches en cours de réalisation par GEA. Il vaut mieux utiliser une scène dédiée pour des temporisations aussi précises. Je le répète, GEA est conçu pour : - faire des actions à intervalle régulier (30 secondes.... environ !) - faire des actions instantanément Les trucs trop complexe => à réaliser en dehors, dans un QA ou une Scène. 1
Messages recommandés