Aller au contenu

jojo

Membres confirmés
  • Compteur de contenus

    14 651
  • Inscription

  • Dernière visite

  • Jours gagnés

    190

Tout ce qui a été posté par jojo

  1. ça fonctionne voici donc le code de la scène adapté --[[ %% properties %% autostart %% globals --]] local VirtualDeviceID = 157 function start() local seconde = os.date('%S') if tonumber(seconde) ~= 0 then local delta = 60 - seconde fibaro:debug("Time is " .. os.date('%H:%M:%S') .. ", waiting for " .. delta .. " seconds...") fibaro:sleep(delta*1000) end hour = os.date('%H') day = os.date('%d') end function domoCharts() -- Actions to perform every new minute fibaro:call(VirtualDeviceID, "pressButton", "1"); -- Sensors (Temperature, humidity, light) fibaro:call(VirtualDeviceID, "pressButton", "2"); -- Power consumption --fibaro:call(17, "pressButton", "1"); -- Eco-Devices Teleinfo -- Actions to perform every new hour local newhour = os.date('%H') if newhour ~= hour then fibaro:debug('New hour') -- Actions to perform at 23:00 if tonumber(newhour) == 23 then fibaro:call(VirtualDeviceID, "pressButton", "3"); -- Battery level end hour = newhour end -- Actions to perform every new day local newday = os.date('%d') if newday ~= day and tonumber(os.date('%M')) >= 1 then fibaro:debug('New day') fibaro:call(VirtualDeviceID, "pressButton", "4"); -- Devices fibaro:call(VirtualDeviceID, "pressButton", "5"); -- Trend data fibaro:call(VirtualDeviceID, "pressButton", "6"); -- Energy --fibaro:call(81, "pressButton", "1"); -- Water day = newday end fibaro:debug('Last run : ' .. os.date('%d/%m/%Y %H:%M:%S')) local wait = 60 - os.date('%S') if wait ~= 60 then fibaro:debug("Adaptation du décalage " ..wait.. " sec au lieu de 60 sec") end setTimeout(function() domoCharts() end, wait*1000) --vérification toutes les minutes end -- démarrage àla seconde 0 start() -- démarrage de la boucle domoCharts domoCharts() et le debug qui montre que c'est bon : [DEBUG] 19:38:01: Time is 19:38:01, waiting for 59 seconds... [DEBUG] 19:39:00: Last run : 20/12/2015 19:39:00 [DEBUG] 19:40:00: Last run : 20/12/2015 19:40:00 [DEBUG] 19:41:00: Last run : 20/12/2015 19:41:00 [DEBUG] 19:42:00: Last run : 20/12/2015 19:42:00 [DEBUG] 19:43:00: Last run : 20/12/2015 19:43:00 [DEBUG] 19:44:00: Last run : 20/12/2015 19:44:00 [DEBUG] 19:45:00: Last run : 20/12/2015 19:45:00 [DEBUG] 19:46:00: Last run : 20/12/2015 19:46:00 [DEBUG] 19:47:00: Last run : 20/12/2015 19:47:00 [DEBUG] 19:48:00: Last run : 20/12/2015 19:48:00 [DEBUG] 19:49:00: Last run : 20/12/2015 19:49:00 [DEBUG] 19:50:00: Last run : 20/12/2015 19:50:00 [DEBUG] 19:51:00: Last run : 20/12/2015 19:51:00 [DEBUG] 19:52:00: Last run : 20/12/2015 19:52:00 [DEBUG] 19:53:00: Last run : 20/12/2015 19:53:00 [DEBUG] 19:54:00: Last run : 20/12/2015 19:54:00 [DEBUG] 19:55:00: Last run : 20/12/2015 19:55:00 [DEBUG] 19:56:00: Last run : 20/12/2015 19:56:00 [DEBUG] 19:57:00: Last run : 20/12/2015 19:57:00 [DEBUG] 19:58:00: Last run : 20/12/2015 19:58:00 [DEBUG] 19:59:00: Last run : 20/12/2015 19:59:00 [DEBUG] 20:00:00: New hour [DEBUG] 20:00:00: Last run : 20/12/2015 20:00:00 [DEBUG] 20:01:00: Last run : 20/12/2015 20:01:00 [DEBUG] 20:02:00: Last run : 20/12/2015 20:02:00 [DEBUG] 20:03:00: Last run : 20/12/2015 20:03:00 [DEBUG] 20:04:00: Last run : 20/12/2015 20:04:00 [DEBUG] 20:05:01: Last run : 20/12/2015 20:05:01 [DEBUG] 20:05:01: Adaptation du décalage 59 sec au lieu de 60 sec [DEBUG] 20:06:00: Last run : 20/12/2015 20:06:00
  2. jojo

    Aider Moi Svp

    lorsque tu inclus un module, il y a une fenêtre qui s'ouvre, où il dit qu'il a ajouté le module et où il y a un bouton close. NE PAS APPUYER sur le bouton close. Lorsque la configuration du module sera complètement terminée, la fenêtre se fermera toute seule. N.B. pour la premuère inclusion du module il est beaucoup mieux de le faire jute àcôté de la box.
  3. jojo

    Support Gea

    toi aussi :60:
  4. va àl'hôpital pour une bonne cure de déintoxication
  5. jojo

    Support Gea

    je n'ai pas tout compris a tes explications. Mais en commençant par regarder le code, il y a des {"Repeat"} avec du -1 => pas bon, car le repeat se fait àla fréquence déterminée par le paramètre de temps. donc, si tu veux une réaction immédiate, tu laisses le -1 et supprime le repeat. Ensui si tu veux que cela se répète (àquelle fréquence ?) tu fait une deuxième ligne avec les mêmes conditions, la fréquence que tu veux dans la partie durée de l'instruction et le repeat àla fin
  6. ok, j'ai fait une adaptation de la scène. Je ne sais pas calculer àla milli seconde, mais dès qu'il y aura un décalage d'une seconde, il devrait le corriger et l'afficher dans le debug. En test
  7. alors ne faits pas les mises àjour, tu resteras dans une version moins bridée. Et tant qu'elle ne tapportent rien de plus. Perso je n'ai pas de z-wave.me (par exemple), alors si une version apporte le support de ce device, je m'en fout
  8. jojo

    Support Gea

    es-tu sûr de tes ID ? Pas de faute de phrappe ? un _ ou un espace, ou ... revérifie méticuleusement. ajoute une ligne àla fois, et regarde la quelle génère l'erreur de syntaxe dans GEA
  9. jojo

    Support Gea

    qu'y a-t-il àla ligne 411 ? [DEBUG] 18:55:31: line 411: attempt to compare nil with number
  10. jojo

    Compteur De Temps

    ok, merci , je vais essayer de voir ce que je peux faire pour calculer le décalage. Ce qui est TRES bizarre, c'est que le reset de la variable n'est pas systématique toutes les minutes, bien que la scène domoChart a bien tourné. Je te remets ici également la scène domoCharts adaptée avec le setTimeout pour info, mais je regarde pour adapter le décalage. --[[ %% properties %% autostart %% globals --]] local VirtualDeviceID = 157 function start() local seconde = os.date('%S') if tonumber(seconde) ~= 0 then local delta = 60 - seconde fibaro:debug("Time is " .. os.date('%H:%M:%S') .. ", waiting for " .. delta .. " seconds...") fibaro:sleep(delta*1000) end hour = os.date('%H') day = os.date('%d') end function domoCharts() -- Actions to perform every new minute fibaro:call(VirtualDeviceID, "pressButton", "1"); -- Sensors (Temperature, humidity, light) fibaro:call(VirtualDeviceID, "pressButton", "2"); -- Power consumption --fibaro:call(17, "pressButton", "1"); -- Eco-Devices Teleinfo -- Actions to perform every new hour local newhour = os.date('%H') if newhour ~= hour then fibaro:debug('New hour') -- Actions to perform at 23:00 if tonumber(newhour) == 23 then fibaro:call(VirtualDeviceID, "pressButton", "3"); -- Battery level end hour = newhour end -- Actions to perform every new day local newday = os.date('%d') if newday ~= day and tonumber(os.date('%M')) >= 1 then fibaro:debug('New day') fibaro:call(VirtualDeviceID, "pressButton", "4"); -- Devices fibaro:call(VirtualDeviceID, "pressButton", "5"); -- Trend data fibaro:call(VirtualDeviceID, "pressButton", "6"); -- Energy --fibaro:call(81, "pressButton", "1"); -- Water day = newday end fibaro:debug('Last run : ' .. os.date('%d/%m/%Y %H:%M:%S')) setTimeout(function() domoCharts() end, 60*1000) --vérification toutes les minutes end -- démarrage à la seconde 0 start() -- démarrage de la boucle domoCharts domoCharts()
  11. jojo

    Support Gea

    j'ai toujour eu du mal avec le debug de GEA ... Commençons donc simple, et puis rajoutons des conditions pour perfectionner : -- Extinction automatique de la lampe après 30s. local autoOffScellier = GEA.add ({id["LUM_SCELLIER_"]}, 31, "", {{"turnOff"}}) -- Appuie sur l'interrupteur de la lampe, on stoppe l'extinction automatique. GEA.add (id["LUM_SCELLIER_"], -1, "", {{"StopTask", autoOffScellier}}) -- Allumage de la lampe sur détection mouvement GEA.add (id["DETECTEUR_SCELLIER"], -1, "", {{"turnOn", id["LUM_SCELLIER_"]}, {"RestartTask", autoOffScellier}})
  12. jojo

    Support Gea

    les stoptask et restarttask, ok, mais c'est le maxtime qui ne fonctionne pas
  13. et n'hésirez surtout pas àregarder le tuto dans ma signature (Principe de fonctionnement IPcamera sur HCL/HC2) où j'explique comment utiliser cette excellente base de données
  14. jojo

    Au Secour !

    http://www.domotique-fibaro.fr/index.php/forum/83-la-home-center-pour-les-nuls/
  15. jojo

    Support Gea

    voici ma config, pour faire EXACTEMENT la même chose que ce que tu veux faire -- Hall de Nuit -- Lampe SdJ -- Extinction automatique de la lampe après 30s. local autoOffSdJ = GEA.add ({DeviceID["LUM_HALLNUIT_SDJ"], auth_LumHallNuit}, 31, "", {{"turnOff"}}) -- Appuie sur l'interrupteur de la lampe, on stoppe l'extinction automatique. GEA.add (DeviceID["LUM_HALLNUIT_SDJ"], -1, "", {{"StopTask", autoOffSdJ}}) -- Allumage de la lampe sur détection mouvement GEA.add ({DeviceID["MVT_HALLNUIT_SDJ"], auth_LumHallNuit, {"Value-", DeviceID["LUX_HALLNUIT_SDJ"], 5}, {"Value", DeviceID["LUM_HALLNUIT_SDJ"],0}}, -1, "", {{"turnOn", DeviceID["LUM_HALLNUIT_SDJ"]}, {"RestartTask", autoOffSdJ}}) -- Extinction de la lampe dans tous les cas après 10 min GEA.add ({DeviceID["ALARME_ACTIVE"], DeviceID["LUM_HALLNUIT_SDJ"]}, 10*60, "Extinction du Hall de Nuit SdJ, car allumée depuis #duration#. (#date# à#time#)", {{"Inverse"}, {"turnOff", DeviceID["LUM_HALLNUIT_SDJ"]}, {"Email", UserID["Vincent"], "ALERTE - Lumière Hall de Nuit"}})
  16. jojo

    Au Secour !

    l'accès en local fonctionne-t-il bien ? Dans l'onglet Configuration -> LAN Settings : Remote access est bien à es ? As-tu essayé l'ouverture de port ? (voir comment faire dans la section pour les nuls)
  17. jojo

    Compteur De Temps

    je me suis permis d'adapter le code de la scène domoCharts pour éviter le décalage en utilisant le settimeout(). C'est en test. Je verrai ce soir si décalage
  18. jojo

    Compteur De Temps

    que penses-tu de ce code ? as-tu d'autres idées ? --[[ %% properties %% autostart %% globals --]] local interval = 1 -- interval de vérification en sec local Counter = { {deviceID = 214, variable = "Timer_Chaudiere", testValue = 1, increment = 1}, -- CHAUDIERE_OUTPUT {deviceID = 215, variable = "Timer_Solaire", testValue = 1, increment = 1}, -- SOLAIRE_OUTPUT } function checkVar() variables = api.get('/globalVariables/') for i = 1, #Counter do -- vérification existance variable found = false for j = 1, #variables do if variables[j].name == Counter[i].variable then found = true end end if found == false then fibaro:debug("La variable "..Counter[i].variable.. " n'existe PAS.") -- création de la varialbe local http = net.HTTPClient() http:request("http://127.0.0.1:11111/api/globalVariables", { options = { method = "POST", data = json.encode({name=Counter[i].variable, isEnum=0}) }, success = function(response) fibaro:debug(Counter[i].variable .. " créé avec succès") end, error = function(response) fibaro:debug(Counter[i].variable .. " ERROR !!!") end, }) else fibaro:debug("La variable "..Counter[i].variable.. " existe") end end end function start() local seconde = os.date('%S') if tonumber(seconde) ~= 0 then for i = 1, #Counter do fibaro:setGlobal(Counter[i].variable, 0) end local delta = 60 - seconde fibaro:debug("Time is " .. os.date('%H:%M:%S') .. ", waiting for " .. delta .. " seconds...") fibaro:sleep(delta*1000) fibaro:debug("Start") end --pour des raison de test : --fibaro:setGlobal(TimerVG["CHAUDIERE_OUTPUT"], os.date('%S')-1) end function counter() -- Actions to perform every new second for i = 1, #Counter do if tonumber(fibaro:getValue(Counter[i].deviceID, "value")) == Counter[i].testValue then fibaro:setGlobal(Counter[i].variable, fibaro:getGlobal(Counter[i].variable) + Counter[i].increment) end fibaro:debug('Last run : ' .. os.date('%d/%m/%Y %H:%M:%S').. " - VG '".. Counter[i].variable.. "' = ".. fibaro:getGlobal(Counter[i].variable)) end -- Actions to perform every new min -- le reset de la variable est effectuée par le VD DomoCharts setTimeout(function() counter() end, interval*1000) --vérification toutes les secondes end --vérification de l'existence des variables et création si nécessaire checkVar() -- démarrage àla seconde 0 start() -- démarrage de la boucle du compteur counter()
  19. et pourquoi tu ne places pas ta box dans la maison, au milieu de la propriété ? et regarde aussi ceci pour l'antenne de la box : http://www.domotique-fibaro.fr/index.php/topic/2706-remplacer-lantenne-de-sa-home-center-2/?p=36198 regarde également ceci : http://tutoriels.domotique-store.fr/content/2/19/fr/optimiser-les-transmissions-radio-z_wave.html
  20. rien à rajouter sur l'argumentation. Maintenant ils sont obligé de réagir. La seule solution, s'ils ne réagissent pas, les spammer, publier sur fesse de bouque ou sur le petit oiseau bleu. Maintenant en v4, tous les modules ont un module maitre (qu'il n'y avait pas en v3), c'est peut-être celui-là qu'il retourne. Egalement, pour les FGS-221 j'ai 4 ID (ok pour le maître et les 2 relais, mais pourquoi le 4° ?). Ta box est-elle plantée, plantée, ou c'est du "nice to have" parce que ce n'est pas beau de voir des modules phantomes ? essaie de voir via l'api le contenu du module que tu souhaite supprimer et celui auquel il fait référence : <ip box>/api/devices/<id module>
  21. si tu as besoin de z-wave àl'extérieur, tu peux essayer de mettre un WP dans les combles de ta maison, cela portera mieux dans ton jardin
  22. @Lazer, Suite ànos discussions de hier concernant le compteur, j'ai remarqué un décalage de la scène DomoChart. Elle tourne comme une horloge, mais se décalait petit àpetit. Hier (en fait ce matin à6h00), j'ai constaté que c'était à48 secondes. Donc j'ai refait un save de la scène, et elle est bien repartie à0 sec . Mais maintenant à14h00 (après 8h00), elle est décalée à10 secondes déjà. Et le décalage sera différent pour chacun d'entre nous, en fonction de la charge de la box. En fait dans cette scène tu n'utilises pas le settimeout(). Cela améliorerait-il les choses ? Mais j'ai pensé àune autre solution : utilisation de ton Watchdog : si le last run n'est pas àla seconde 0, on sauve la scène. (ok, elle n'est plus autonome, et on utilise le watchdog pour autre chose que ce qu'il était prévu àl'origine, mais ne serait-ce pas un quick fix ?)
  23. +1 et laisse le temps àta fibaro de refaire un remaillage du réseau. Mais attention, de mémoire le signal ne peut être répété que 3 ou 4 fois (donc malheureusement pas àl'infini)
  24. 1) insiste auprès de Fibaro en leur montrant que tu n'es pas un idiot qui n'y connait rien : donc la solution d'un recovery d'un backup n'est pas une solution, car le problème se situe au niveau de la corruption de la DB. un upgrade permettrait peut-être de régler ton problème : maintenant tu n'arrive pas àle supprimer de la DB, car erreur dans le développement par Fibaro. Qui sait avec un upgrade la suppression fonctionnera peut-être ?
×
×
  • Créer...