Aller au contenu

Messages recommandés

Posté(e)

Je modifie bien avec GEA ma variable  avec un "Global", "FreeSms", "toto" par exemple et uniquement cela depuis GEA et après c'est la scene qui fait tout ;-)

 

Etant donne que la variable est le trigger de la scene, lorsque GEA va modifier la variable FreeSms, la scene qui gere l'API de FreeSms s'active instantanément et envoie le sms  ;-)

Posté(e)

petit bug de GEA, hier, à  partir de fin de mâtiné, GEA ne réagis plus, à  chaque action où il aurait dà» faire quelque chose il y avait ces message à  la chaîne...

[DEBUG] 13:17:38: GEA Version 5.33 : en exécution...
[DEBUG] 13:17:38: En cours : aucun traitement a effectuer pour l'ID:156
[DEBUG] 13:18:51: GEA Version 5.33 : en exécution...
[DEBUG] 13:18:51: En cours : aucun traitement a effectuer pour l'ID:156
[DEBUG] 13:19:27: GEA Version 5.33 : en exécution...

(avec des ID différents)

 

il à  fallu que je l’arrête et redémarre.

c'est la première fois qui me fait ça.

du coup, j'ai fais la mises à  jour de V4.053 vers V4.54, rien à  signaler mise à  part que les capteurs principaux sont revenus.

 

cela est déjà  arrivé à  l'un de vous?

Posté(e)

et ne passerais-tu pas à  la dernière version de GEA (5.4) qui est optimisée pour la V4 de Fibaro ? 

Posté(e)

le problème des performances de GEA est surtout pour les -1

Pour les exécutions après 10 min (10*60), on s'en fout qu'il y ait une latence de 1 ou 2 sec...

Perso maintenant j'ai tout remis dans une seule instance avec optimisation pour les -1, et c'est impeccable 

Posté(e)

Salut à  tous  :)

 

J'aurais besoin d'aide pour un code qui commande des volets j'explique !

 

Lorsque la température est inférieur à  29.5 degrés fermeture et ouverture suivant un capteur de lux jusque la pas de problème mais dernièrement j'ai modifié mon code pour ajouter la fonction de température

donc suivant cette température qui est + de 29.5 degrés STOP le code qui commande ces volets avec la température inférieur à  29.5 degrés

 

les volets se ferme bien comme je le souhaite mais il se relèvent car  manque de lux je poste mon code pour que cela soit compréhensible  

 

D'avance merci

--local si_pas_ferme_17_25_27_29 = {"If", {{"Value+",17, 90},{"Value+",25, 90},{"Value+",27, 90},{"Value+",29, 90}}} -- 17-SALON  25-AR-CUIS  27-CHB-PARENTS  29-CHB-LUCAS
 local si_pas_ouvert_17_25 = {"If", {{"Value-",17, 90},{"Value-",25, 90}}} -- 17-SALON  25-AR-CUIS                                                                                                                 
 local si_pas_ouvert_27_29 = {"If", {{"Value+",17, 90},{"Value+",25, 90},{"Value-",27,90},{"Value-",29,90}}} -- 17-SALON  25-AR-CUIS  27-CHB-PARENTS  29-CHB-LUCAS                                                      
  
 -- FERMETURE DST -- 
 
 -- FERMETURE VOLETS_17_25_27_29 --
 -- luminosité est supérieur à  820 Lux pendant 5 minutes entre 13h et Sunset, baisse les volets 17 salon, 25 AR cuisine, 27 Chambre parents, 29 Chambre Lucas  
local temp_inf_30_degres = GEA.add({"Value+",id["CPT_LUX_AR_C"],800}, 5*60, "",
{{"Time", "13:00", "Sunset"},{"Open",17,45},{"Open",25,40},{"Open",27,40},{"Open",29,40},{"DST"}}) -- 17-SALON  25-AR-CUIS  27-CHB-PARENTS  29-CHB-LUCAS

 -- OVERTURE DST --
 
 -- OUVERTURES VOLETS_17_25 --
 -- la luminosité est inférieur à  200 Lux pendant 15 minutes entre 13h et Sunset, remonte les volets 17 salon, 25 AR cuisine
local temp_inf_30_degres = GEA.add({"Value-",id["CPT_LUX_AR_C"],300}, 15*60, "Remontée volets SALON à  60 AR_CUIS à  70 DST #value# Lux #time#",
{si_pas_ouvert_17_25,{"Time", "13:00", "Sunset"},{"Open",17,60},{"Open",25,70},{"DST"}}) --  17-SALON  25-AR-CUIS
                              
 -- OUVERTURES VOLETS_17_25 --
 -- luminosité est inférieur à  100 Lux pendant 15 minutes entre 13h et Sunset, remonte les volets 17 salon, 25 AR cuisine
local temp_inf_30_degret = GEA.add({"Value-",id["CPT_LUX_AR_C"],200}, 30*60, "Remontée volets SALON et AR_CUISINE à  100 DST #value# Lux #time#",
{si_pas_ouvert_17_25,{"Time", "13:00", "Sunset"},{"Open",17,98},{"Open",25,99},{"DST"}}) -- 17-SALON  25-AR-CUIS 

 -- OUVERTURES VOLETS_27_29 --
 -- On remonte les volets 27 Chambre parents, 29 Chambre Lucas si volets RDC Ouverts --                                     
local temp_inf_30_degres = GEA.add(true, 8*60,"Remontée volets CHB_PARENTS et CHB_LUCAS à  100 DST #value# Lux #time#",
{si_pas_ouvert_27_29,{"Time", "13:00", "Sunset"},{"Open",27,99},{"Open",29,98},{"DST"}}) -- 27-CHB-PARENTS  29-CHB-LUCAS

 -- RESTART/STOP  ACTION  -- temp_inf_30_degres -- 
GEA.add({"Value-",id["TEMP_EXTERIEUR_NET"],29.5}, 1*60, "",{{"RestartTask",temp_inf_30_degres}}) 
GEA.add({"Value+",id["TEMP_EXTERIEUR_NET"],29.5}, 1*60, "",{{"StopTask",temp_inf_30_degres}}) 
 
 -- FERMETURE / OUVERTURE SI TEMPERARURE SUPERIEUR A 29.5 DEGRES --
  
 -- FERMETURE VOLETS_17_25_27_29 -- Si la température est superieur à  29.5 DEGRES -- 
GEA.add({"Value+",id["TEMP_EXTERIEUR_NET"],29.5}, 1*60, "Fermeture volets Ouest température Sup à  29.5 degres DST #time#",
{{"Time", "12:00", "Sunset-15"},{"Open",17,35},{"Open",25,25},{"Open",27,25},{"Open",29,25}})

-- OUVERTURE VOLETS MEME SI PLUS DE 29.5 DEGRES SUNSET --
GEA.add({"Value+",id["TEMP_EXTERIEUR_NET"],29.5}, 1*60, "Ouverture volets Ouest Sunset température Sup à  29.5 degres DST #time#",
{{"Time", "Sunset-14", "Sunset"},{"Open",17,98},{"Open",25,99},{"Open",27,99},{"Open",29,98}}) 
 
Posté(e)

pour moi le plus simple serait de gérer une variable globale TempExterieur qui te servirait à  jouer l'un ou l'autre des scénarios et que tu aurais à  ajouter dans les conditions de tes lignes GEA

 

Si TempExterieur < 29.5, tu joues ton scénarios normal mais si TempExterieur > 29.5 tu joues le scénario alternatif

Posté(e)

@Cisco

 

Merci pour cette indication je viens de modifier mon code en créent 2 variables  une <29 degrés et l'autre >29 degrés et cela me semble Ok  MERCI   :60:

 local temp_inf_29_degres = {"Global", "TEMP_EXTERIEUR", "<29"}
 local temp_sup_29_degres = {"Global", "TEMP_EXTERIEUR", ">29"}
 
 --local si_pas_ferme_17_25_27_29 = {"If", {{"Value+",17, 90},{"Value+",25, 90},{"Value+",27, 90},{"Value+",29, 90}}} -- 17-SALON  25-AR-CUIS  27-CHB-PARENTS  29-CHB-LUCAS
 local si_pas_ouvert_17_25 = {"If", {{"Value-",17, 90},{"Value-",25, 90}}} -- 17-SALON  25-AR-CUIS                                                                                                                 
 local si_pas_ouvert_27_29 = {"If", {{"Value+",17, 90},{"Value+",25, 90},{"Value-",27,90},{"Value-",29,90}}} -- 17-SALON  25-AR-CUIS  27-CHB-PARENTS  29-CHB-LUCAS                                                      
  
 -- FERMETURE DST -- 
 
 -- FERMETURE VOLETS_17_25_27_29 --
 -- luminosité est supérieur à  820 Lux pendant 5 minutes entre 13h et Sunset, baisse les volets 17 salon, 25 AR cuisine, 27 Chambre parents, 29 Chambre Lucas  
GEA.add({"Value+",id["CPT_LUX_AR_C"],800}, 5*60, "",
{temp_inf_29_degres,{"Time", "13:00", "Sunset"},{"Open",17,45},{"Open",25,40},{"Open",27,40},{"Open",29,40},{"DST"}}) -- 17-SALON  25-AR-CUIS  27-CHB-PARENTS  29-CHB-LUCAS

 -- OVERTURE DST --
 
 -- OUVERTURES VOLETS_17_25 --
 -- la luminosité est inférieur à  200 Lux pendant 15 minutes entre 13h et Sunset, remonte les volets 17 salon, 25 AR cuisine
GEA.add({"Value-",id["CPT_LUX_AR_C"],300}, 15*60, "Remontée volets SALON à  60 AR_CUIS à  70 DST #value# Lux #time#",
{temp_inf_29_degres,si_pas_ouvert_17_25,{"Time", "13:00", "Sunset"},{"Open",17,60},{"Open",25,70},{"DST"}}) --  17-SALON  25-AR-CUIS
                              
 -- OUVERTURES VOLETS_17_25 --
 -- luminosité est inférieur à  100 Lux pendant 15 minutes entre 13h et Sunset, remonte les volets 17 salon, 25 AR cuisine
GEA.add({"Value-",id["CPT_LUX_AR_C"],200}, 30*60, "Remontée volets SALON et AR_CUISINE à  100 DST #value# Lux #time#",
{temp_inf_29_degres,si_pas_ouvert_17_25,{"Time", "13:00", "Sunset"},{"Open",17,98},{"Open",25,99},{"DST"}}) -- 17-SALON  25-AR-CUIS 

 -- OUVERTURES VOLETS_27_29 --
 -- On remonte les volets 27 Chambre parents, 29 Chambre Lucas si volets RDC Ouverts --                                     
GEA.add(true, 8*60,"Remontée volets CHB_PARENTS et CHB_LUCAS à  100 DST #value# Lux #time#",
{temp_inf_29_degres,si_pas_ouvert_27_29,{"Time", "13:00", "Sunset"},{"Open",27,99},{"Open",29,98},{"DST"}}) -- 27-CHB-PARENTS  29-CHB-LUCAS

 
 -- FERMETURE/OUVERTURE SI TEMPERARURE SUPERIEUR A 29 DEGRES --
  
 -- FERMETURE VOLETS_17_25_27_29 -- Si la température est superieur à  29 DEGRES -- 
GEA.add(temp_sup_29_degres, 1*60, "Fermeture volets Ouest température Sup à  29 degres DST #time#",
{{"Time", "12:00", "Sunset-15"},{"Open",17,35},{"Open",25,25},{"Open",27,25},{"Open",29,25}})

-- OUVERTURE VOLETS MEME SI PLUS DE 29 DEGRES SUNSET --
GEA.add(temp_sup_29_degres, 1*60, "Ouverture volets Ouest Sunset température Sup à  29 degres DST #time#",
{{"Time", "Sunset-14", "Sunset"},{"Open",17,98},{"Open",25,99},{"Open",27,99},{"Open",29,98}}) 
 
Posté(e)

Hi, I can admit that I havent read all 198pages, but many of them.

And I cant find a solution to my problem.

 

Im wondering if I can do something like... 

If doormagnet is safe and motiondetector is safe then send push.

Im trying with lines like this below, but it dont work.

 

GEA.add( {id["KITCHEN_DOOR"], id["MOTION_KITCHEN"]}, 5*60,"", {{"Inverse"}, {"Time", "23:06", "Sunrise+20"},"Activate Alarm? (#date# #time#)",{"Portable", 77}})
 
The thing that I really want to do, is to check if 3doors and 2motiondetectors is safe for 30minutes and a global variabel "Alarm" is "deactivated" and the time is between 23:00->05:30 then push button.(to arm alarm.
 
And also, If globalvariabel "Alarm" is "Bottomfloor" and motiondetector in stars (id["MOTION_STAIRS"]) have movement, push button to deactivate the alarm.
(Someone is going down from the upper floor in the middle of the night and the alarm should not start)
 
So my main concern is if I can check multiple motiondetectors, and how its done.
 
 
Kind regards
Posté(e)

@Diuck,

Je suis un peut surpris par tes tests sur tes variables dans les options du GEA. 

Je trouve que ce serait plus lisible de les mettre dans les conditions au début

Posté(e)

@Clabbe,

Please note {"Inverse"} refers only to the first condition.

Wich alarm do you want to activate ?

 

 

GEA.add( {id["KITCHEN_DOOR"], id["MOTION_KITCHEN"]}, 5*60,"", {{"Inverse"}, {"Time", "23:06", "Sunrise+20"},"Activate Alarm? (#date# #time#)",{"Portable", 77}})
 
The thing that I really want to do, is to check if 3doors and 2motiondetectors is safe for 30minutes and a global variabel "Alarm" is "deactivated" and the time is between 23:00->05:30 then push button.(to arm alarm.

 

So I would first create a table with all sensors you need to check if they are safe (so, it is easy to add one)

local groupSensors = {
    id["KITCHEN_DOOR"],
    id["DOOR2"],
    id["DOOR3"],
    id["MOTION_KITCHEN"],
    id["MOTION2"],
        }

Then you create a global variable Sensors with 2 values : Safe / Breached

Then you test if all are safe

GEA.add (true, 1, "", {{"Global", "Sensors", "Safe"}, {"Repeat"}})
for _,v in ipairs(groupSensors) do
  GEA.add (v, 1, "", {{"Global", "Sensors", "Breached"}, {"Repeat"}})
end 

then test if all safe for 30 min

GEA.add ({"Global", "Sensors", "Safe"}, 30*60, "All safe for #duration#", {{"Time", "23:06", "05:30"}, {perform the action you want to}})

Let start with this. When ok, we do the next request

  • Upvote 2
Posté(e)


--ALARM--------------------
  local SensorGroup1 = {
    id["KITCHEN_DOOR"],
    id["HALL_DOOR"],
    id['LIVING_DOOR'],
    id["PIR_VRUM"],
    id["PIR_KOK"],
    }
  
  GEA.add (true, 1, "", {{"Global", "SensorGroup1", "Safe"}, {"Repeat"}})
  for _,v in ipairs(SensorGroup1) do
    GEA.add (v, 1, "", {{"Global", "SensorGroup1", "Breached"}, {"Repeat"}})
  end 
  
  GEA.add ({"Global", "SensorGroup1", "Safe"}, 20*60, "All safe for #duration#, activate shell alarm", {{"Time", "22:06", "05:30"},{"Portable", 77}})
  GEA.add(id["PIR_UPPE"], -1, "Movement on upperfloor Deactivate shell alarm", {{"Time", "23:00", "Sunrise"},{"Portable", 77}})
  

Hi thanks a lot.  At least Im able to save the lines without GEA complaining =)

So i think this will work.

(Yes. Im just sending push for now, I will change this to push a bottom in a VD instead, when all tests are done)

 

But on thing im also wondering. Can I do like this.


  GEA.add ({"Global","Alarm","Deactivated"},{"Global", "SensorGroup1", "Safe"}, 20*60, "All safe for #duration#, activate shell alarm", {{"Time", "22:06", "05:30"},{"Portable", 77}})
  GEA.add({"Global","Alarm","ShellAlarm"},id["PIR_UPPE"], -1, "Movement on upperfloor Deactivate shell alarm", {{"Time", "23:00", "Sunrise"},{"Portable", 77}})
  

Because I dont want this to happen if the alarm is already set as activated. So first line should only happen if Global "Alarm" is set to Deacitvated

and second line only if Global "Alarm" is set to ShellAlarm, because the alarm should not be deactivated if the Alarm is set to Activated.

 

 

Kind regards.

 

  

  

 

Posté(e)

@Diuck,

Je suis un peut surpris par tes tests sur tes variables dans les options du GEA. 

Je trouve que ce serait plus lisible de les mettre dans les conditions au début

 

Salut Jojo  :)

 

Merci de ton aide, peux tu être plus précis stp 

Posté(e)
  GEA.add ({"Global","Alarm","Deactivated"},{"Global", "SensorGroup1", "Safe"}, 20*60, "All safe for #duration#, activate shell alarm", {{"Time", "22:06", "05:30"},{"Portable", 77}})
  GEA.add({"Global","Alarm","ShellAlarm"},id["PIR_UPPE"], -1, "Movement on upperfloor Deactivate shell alarm", {{"Time", "23:00", "Sunrise"},{"Portable", 77}})

Yes, you can do this, but there is one small syntax error :

  GEA.add ({{"Global","Alarm","Deactivated"},{"Global", "SensorGroup1", "Safe"}}, 20*60, "All safe for #duration#, activate shell alarm", {{"Time", "22:06", "05:30"},{"Portable", 77}})
  GEA.add({id["PIR_UPPE"], {"Global","Alarm","ShellAlarm"}}, -1, "Movement on upperfloor Deactivate shell alarm", {{"Time", "23:00", "Sunrise"},{"Portable", 77}})

If you want to put several conditions (linked with an AND) you have to set them into { }.

-1 (like for {"Inverse"}) is only valid for the first condition. So I moved id{"PIR_UPPE"} first. Also note that the id of the device for witch an immediate action is requested (-1) MUST be in the header.

  • Upvote 1
Posté(e)

@Diuk

Exemple pour cette requête

 -- OUVERTURES VOLETS_17_25 --
 -- luminosité est inférieur à100 Lux pendant 15 minutes entre 13h et Sunset, remonte les volets 17 salon, 25 AR cuisine
local temp_inf_30_degret = GEA.add({"Value-",id["CPT_LUX_AR_C"],200}, 30*60, "Remontée volets SALON et AR_CUISINE à100 DST #value# Lux #time#",
{si_pas_ouvert_17_25,{"Time", "13:00", "Sunset"},{"Open",17,98},{"Open",25,99},{"DST"}}) -- 17-SALON  25-AR-CUIS 

j'aurais fait :

 -- OUVERTURES VOLETS_17_25 --
 -- luminosité est inférieur à100 Lux pendant 15 minutes entre 13h et Sunset, remonte les volets 17 salon, 25 AR cuisine
local temp_inf_30_degret = GEA.add({si_pas_ouvert_17_25, {"Value-",id["CPT_LUX_AR_C"],200}}, 30*60, "Remontée volets SALON et AR_CUISINE à100 DST #value# Lux #time#",
{{"Time", "13:00", "Sunset"},{"Open",17,98},{"Open",25,99},{"DST"}}) -- 17-SALON  25-AR-CUIS 
Posté(e)
--[[
%% autostart
%% properties
125 value
%% globals
--]]

local startSource = fibaro:getSourceTrigger();

if  ( tonumber(fibaro:getValue(125, "value")) >= 29 ) then
	fibaro:setGlobal("TEMP_EXTERIEUR", ">29");

elseif  ( tonumber(fibaro:getValue(125, "value")) < 29 ) then
	fibaro:setGlobal("TEMP_EXTERIEUR", "<29");

 end
 

Ok merci Jojo je vais modifier ca

 

dit moi je rencontre un problème avec ma variable TEMP_EXTERIEUR que j'ai ajouté comme Cisco me la conseillé je me base sur un module Netatmo actuellement la température est de 30.7 Degrés mais ma variable ne reste pas fixe 

 

elle passe de >29  à  <29 sans raison apparente pour info j'ai créer cette variable via les scène bloc si tu as une petite idée  ;)

 

Je poste une copie de la variable bloc converti et modifié en Lua

Posté(e)

Yes, you can do this, but there is one small syntax error :

  GEA.add ({{"Global","Alarm","Deactivated"},{"Global", "SensorGroup1", "Safe"}}, 20*60, "All safe for #duration#, activate shell alarm", {{"Time", "22:06", "05:30"},{"Portable", 77}})
  GEA.add({id["PIR_UPPE"], {"Global","Alarm","ShellAlarm"}}, -1, "Movement on upperfloor Deactivate shell alarm", {{"Time", "23:00", "Sunrise"},{"Portable", 77}})

If you want to put several conditions (linked with an AND) you have to set them into { }.

-1 (like for {"Inverse"}) is only valid for the first condition. So I move id{"PIR_UPPE"} first. Also note that the id of the device for witch an immediate action is requested (-1) MUST be in the header.

 

 

 

 

Thank you very much..

 

Now I have the house larmed during the night and it works very well..

 

Thanks again!!!

 

Merci beaucoup

 

Kind regards Clabbe

  • 2 semaines après...
Posté(e)

Bonjour,

premiers pas avec GEA et premier problème.

J'ai un bandeau RGBW et je voudrais fixer la couleur ET l'intensité.

J'utilise :

GEA.add(id["MOUVEMENT"], -1, "", {{"RGB", id["LUMIERE"], 10,20,30,40,50}})

 

en me disant que RGBW sont respectivement à  10,20,30,40 et que l'intensité est à  50. De toute évidence je ne me dis pas ce qu'il faut car marche pas ;)

Pouvez-vous me dire comment gérer la question ?

 

Merci ! 

Posté(e)

je ne sais pas, je n'ai pas de RGBW chez moi pour essayer.

Mais sans fixer l'intensité, ça fonctionne ?

Posté(e)

bonjour à  tous,

 

J'espère que vos vacances se sont bien passées, :)

 

voici un problème à  résoudre pour les spécialistes de GEA....

 

Actuellement je suis en mode bloc, mais ne réponds pas à  tous mes souhaits.

je vous explique à  quoi je veux arriver.

Chauffage de billard commander par wall plug (PRISE_BILLARD)  (ID  X)        et  sonde température (TEMP_BILLARD)   (ID Y)

Monsieur a un billard français chauffant. Il veut que celui-ci commence à  chauffer à  partir de 15 h pour avoir la bonne température 34°  et se coupe à  18h00 les jours de la semaine et le WE de 9 h à  18 h.

 

MAIS

 

il y a 2 conditions

- de chauffage mini à  faire respecter, en dessous de 24 ° en dehors des période de chauffage, allumer le chauffage pour qu'il remonte de quelques degrés (27°) et ensuite éteindre.

- ensuite au dessus de 36 ° couper le chauffage du billard

 

merci à  ceux qui voudront bien se pencher sur ce petit devoir en gea,

 

:13:

 

Sabine

Posté(e)

Bonjour a tous.
Je viens juste de mettre le GEA 5.40 sur ma box fraîchement passée en 4.056.

 

J'ai commencé a faire un peu joujou avec et j'entrevois à  peine la puissance du GEA mais je ne sais pas trop comme m'y prendre.

 je voudrais jouer avec 

   HALOGENE_EXT = 122, DETECTEUR_EXT = 48

J'ai commencé calmement en coupant le spot au bout de 2 minutes.

GEA.add( id["HALOGENE_EXT"], 2*60, "Le spot halogène est allumé depuis 2 minutes, on l'éteint", {{"turnOff"}}) 

Maintenant qu'il est éteint, je voudrais l'allumer en auto avec le détecteur et je ne vois pas comment m'y prendre.

J'ai bien cette syntaxe :

  GEA.add( id["DETECTEUR_EXT"], -1, "", {{"turnOn",id["HALOGENE_EXT"]}})

mais mon détecteur n'ayant plus de pile pour le moment, impossible a tester. De plus, le comportement sera t'il un set? ou juste une impulsion tant que le détecteur détecte?

×
×
  • Créer...