-
Compteur de contenus
1 674 -
Inscription
-
Dernière visite
-
Jours gagnés
36
Tout ce qui a été posté par fredokl
-
-
Y-a pas de quoi. Si tout remarche tant mieux. Mais bizarre quand même de type de problème.
-
De rien
-
OK et tu n'aurais pas un problème avec ton wifi? Chez moi parfois, avec la Freebox, le wifi se désactive et plus moyen de me connecter à la box. Je suis obligé de redémarrer la wifi.
-
-
-
Salut. Tu es connecté sur ton réseau en local (wifi) ou tu passe en 3G/4G pour l'accès à ta box. As-tu créé un compte Fibaro ID? Si oui, il faut mettre le Fibaro ID (adresse mail) nouvellement créé à la place du compte par défaut pour l'accès s en wifi. Pour la connexion à distance, la procédure est identique.
-
-
-
-
@pepitevoici une icône "snippet". @Didje me suis inspiré (ou plagié, c'est comme tu veux) ton icône scène pour faire le snippet.
-
Amazon Dash Button
fredokl a répondu à un(e) sujet de cromoto dans Périphériques et matériels autres
Oui cool. Tiens nous au courant de tes avancées. -
Salut, le debug me donnait ceci jusqu'à présent: [DEBUG] 23:10:39: c'est l'hiver...!! :-([DEBUG] 23:10:39: je filtre en mode HIVER et pas de démarrage de la pompe. Après pas mal de recherche j'ai vu qu'il y a aussi une variable prédéfinie "EdfTempoJour". Je pense que c'est une variable pour les heures creuses ou pleines alors j'en ai créé avec deux scènes, une pour le "1" et l'autre pour le "0". La variable est pris en compte par la scène. j'ai maintenant ceci dans le debug: [DEBUG] 23:10:39: c'est l'hiver...!! :-([DEBUG] 23:10:39: je filtre en mode HIVER[DEBUG] 23:10:39: Je filtre La pompe se déclenche, j'ai fait des essais en changeant l'heure et la valeur de la variable "EdfTempoJour". Mais, car il y a toujours un mais... La scène fonctionne uniquement quand j'appuis sur le bouton enregistré (la petite disquette), pourtant l'autostart est bien affiché dans l'entête. Je ne comprend pas.
-
@ebtjjnSalut. Bon ça ne veut pas fonctionner. J'ai copié le code plus haut, changé les paramètres et rien n'y fait. La scène se lance mais la pompe ne se déclenche pas. Les variables sont créés (1 x prédéfinie et 3 x globales) ainsi que les notifications. J'ai vérifié tous mes ID (pompe, thermomètre etc...). Je met le code pour vérification. --[[ %% autostart %% properties %% events %% globals --]] --**************************************** --*************PARAMETRAGE**************** local id_pompe = 570 local id_tel = 590 -- 13= tél JJ : téléphone sur lesquel envoyer une notif push (start et stop) local id_eau = 587 --**************************************** --**************************************** local sourceTrigger = fibaro:getSourceTrigger(); local currentDate = os.date("*t"); local startSource = fibaro:getSourceTrigger(); function tempFunc() --fonction de filtration en ETE local currentDate = os.date("*t"); local startSource = fibaro:getSourceTrigger(); if ( ( ((currentDate.wday == 1 or currentDate.wday == 2 or currentDate.wday == 3 or currentDate.wday == 4 or currentDate.wday == 5 or currentDate.wday == 6 or currentDate.wday == 7) and string.format("%02d", currentDate.hour) .. ":" .. string.format("%02d", currentDate.min) == "10:30") ) ) then fibaro:debug("Je filtre"); fibaro:call(id_pompe, "turnOn"); fibaro:setGlobal("modefiltration", 1) fibaro:call(id_tel, "sendDefinedPushNotification", "566"); fibaro:sleep(3600*2*1000) -- au bout de 2 heures, prise de température pour gestion auto du nbe d'heures à filtrer selon temp de l'eau local temppiscine = fibaro:getValue(id_eau, "value") fibaro:setGlobal('tempref',temppiscine) -- test de la température : si > 27, filtration sur 22h30 de plus (=23h30 au total) sinon, règle BAROUDI if tonumber(temppiscine) > 27 then fibaro:debug("T° eau piscine > 27 ==> filtration continue") fibaro:setGlobal("modefiltration", 8) fibaro:call(id_tel, "sendDefinedPushNotification", "568"); local nbheuresafiltrer = 22,5 * 3600 * 1000 else fibaro:debug("T° eau piscine = " ..temppiscine .. " °C") local temppiscinearrondi = math.floor(tonumber(temppiscine)+ .5) local nbheuresafiltrerenh = ((tonumber(temppiscinearrondi)/2)-2) fibaro:debug("nb heures a filtrer = " .. nbheuresafiltrerenh) local nbheuresafiltrer = nbheuresafiltrerenh *3600 * 1000 -- on définit la variable dureefiltration = nb d'heures à filtrer fibaro:setGlobal("dureefiltration", nbheuresafiltrer) end fibaro:debug("Valeur de la variable _dureefiltration_ : "..fibaro:getGlobalValue("dureefiltration")); fibaro:sleep(tonumber(fibaro:getGlobalValue("dureefiltration"))-(3600*2*1000)); if fibaro:getGlobalValue("modefiltration") == "12" then fibaro:debug("Fin du mode auto mais CHOC déjà en cours") else fibaro:debug("Fin du timer, j\'arrête de filtrer"); fibaro:setGlobal("dureefiltration", 0) fibaro:call(id_pompe, "turnOff"); fibaro:setGlobal('tempref', 99) fibaro:setGlobal("modefiltration", 0) fibaro:call(id_tel, "sendDefinedPushNotification", "567"); end end setTimeout(tempFunc, 60*1000) end if fibaro:getGlobalValue("Saison") == "Eté" then --je filtre en mode ETE fibaro:debug("c\'est l\'été, cool !! :-)") tempFunc() else local temppiscine = fibaro:getValue(id_eau, "value") fibaro:debug("c\'est l\'hiver...!! :-(") -- test de la température : si < 2, filtration sur 24h, sinon 2h de 4h à 6h du mat if tonumber(temppiscine) < 2 then fibaro:debug("T° eau piscine < 2 ==> filtration continue") fibaro:call(id_tel, "sendDefinedPushNotification", "568"); --local nbheuresafiltrer = 23,5 * 3600 * 1000 fibaro:call(id_pompe, "turnOn"); fibaro:setGlobal('tempref', temppiscine) fibaro:debug("Je filtre en continu"); fibaro:setGlobal("modefiltration", 8) fibaro:sleep(23,5*3600*1000) fibaro:call(id_pompe, "turnOff"); fibaro:setGlobal("dureefiltration", 0) fibaro:setGlobal('tempref', 99) fibaro:debug("Fin du timer, j\'arrête de filtrer"); fibaro:call(id_tel, "sendDefinedPushNotification", "567"); fibaro:setGlobal("modefiltration", 0) --end elseif ( --à 4h du matin, j'active la filtration ( ((currentDate.wday == 1 or currentDate.wday == 2 or currentDate.wday == 3 or currentDate.wday == 4 or currentDate.wday == 5 or currentDate.wday == 6 or currentDate.wday == 7) and string.format("%02d", currentDate.hour) .. ":" .. string.format("%02d", currentDate.min) == "04:00") ) ) then -- s'il y a un CHOC en cours --> priorité au CHOC : je ne fais rien. Sinon, je filtre 2h. fibaro:debug("je filtre en mode HIVER") if fibaro:getGlobalValue("modefiltration") == "12" then fibaro:debug("CHOC déjà en cours : la durée de filtration est celle définie par le CHOC") elseif fibaro:getGlobalValue("EdfTempoJour") == "1" then fibaro:call(id_pompe, "turnOn"); fibaro:debug("Je filtre"); fibaro:setGlobal("modefiltration", 1) fibaro:call(id_tel, "sendDefinedPushNotification", "566"); fibaro:sleep(1.9*3600*1000) fibaro:debug("Fin du timer, j\'arrête de filtrer"); fibaro:call(id_pompe, "turnOff"); fibaro:setGlobal("modefiltration", 0) --je ne teste pas s'il ya un CHOC en cours : il faudrait l'avoir déclenché entre 4h et 6H du matin... fibaro:call(id_tel, "sendDefinedPushNotification", "567"); end end end
-
Superbe icones@Did. Envoyé de mon iPhone en utilisant Tapatalk
-
Merci. Je test et te tiens au courant.
-
@ebtjjnSalut. Ça fait une semaine que j'ai réinstallé la scène et le Vd. Rien ne fonctionne. J'ai tout paramètré correctement et rien ne se lance. Que ce soit à 04h00 du matin, la lecture de la température à 11h30 etc... Rien ne fonctionne. Au niveau de variables, combien y-en-a-t-il à créer?
-
De rien
-
-
J'ai trouvé mon erreur. C'est la variable global prédéfini qui posait problème. Remplacé: if (fibaro:getGlobalValue(Saison) == "Hiver") then -- si récupère la valeur de la variable Saison par: fibaro:setGlobal("Saison", "Hiver") -- si récupère la valeur de la variable Saison
-
Salut. Je me suis lancer dans une scène en lua pour m'entraîner. Je test sur ma pompe de piscine. Je veux en fonction de la température que la pompe démarre pendant 2 heures et ensuite s'arrête. Cela ne semble pas fonctionner. Voici le script: --[[ %% autostart %% properties 587 value %% events %% globals Saison --]] local tempext = fibaro:getValue(587, 'value') -- 'tempext' représente la fonction qui récupère (get) la valeur (Value) de l'intensité (value) du capteur de température 587 local timeloc = os.date("*t") --stocke la date et heure actuelle du système sous forme d'un tableau à l'intérieur de la variable "timeloc" if (fibaro:getGlobalValue(Saison) == "Hiver") then -- si récupère la valeur de la variable Saison if(timeloc['hour'] >= 14 and timeloc['hour'] < 18) then if tonumber(tempext) >= 8 then -- si la valeur récupérée (ramenée en valeur numérique grâce à tonumber) est supérieure ou égale à 8, alors if tonumber(tempext) <= 12 then -- si la valeur récupérée (ramenée en valeur numérique grâce à tonumber) est inférieur ou égale à 12, alors fibaro:call(570, 'turnOn') -- la pompe 570 s’allume. fibaro:call(590, "sendDefinedPushNotification", "566") -- Envoi Push "Démarrage Pompe" sur mon téléphone portable if fibaro:sleep(72000) then -- s'éteint au bout de 2 heures. else fibaro:call(570, 'turnOff') -- sinon la pompe 570 s’éteint. fibaro:call(590, "sendDefinedPushNotification", "567") -- Envoi Push "Arrêt Pompe" sur mon téléphone portable end -- fin de la condition end -- fin de la condition end -- fin de la condition end -- fin de la condition end -- fin de la condition Quand la scène ce lance, j'obtient cette erreur: [DEBUG] 00:41:49: line 154: Assertion failed: Expected string Le code s'arrête à la ligne 22 et je ne vois pas d'où viens cette ligne 154. Pouvez me dire ce qui ne va pas. Merci.
-
Merci @jojo pour ce VD. Je viens de recevoir mes Smoke Detector de Fibaro et le VD est très utile.
-
Il y a de quoi lire! Le choix pour le VD parfait est assez compliqué! Chacun a sa vision des choses et pour nous (en tout cas moi) profane du LUA, le choix est cornélien!
-
-