-
Compteur de contenus
14 564 -
Inscription
-
Dernière visite
-
Jours gagnés
186
Tout ce qui a été posté par jojo
-
qu'y a-t-il àla ligne 411 ? [DEBUG] 18:55:31: line 411: attempt to compare nil with number
- 12 160 réponses
-
- support
- script lua
-
(et 1 en plus)
Étiqueté avec :
-
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()
-
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 160 réponses
-
- support
- script lua
-
(et 1 en plus)
Étiqueté avec :
-
les stoptask et restarttask, ok, mais c'est le maxtime qui ne fonctionne pas
- 12 160 réponses
-
- support
- script lua
-
(et 1 en plus)
Étiqueté avec :
-
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
-
http://www.domotique-fibaro.fr/index.php/forum/83-la-home-center-pour-les-nuls/
-
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"}})
- 12 160 réponses
-
- support
- script lua
-
(et 1 en plus)
Étiqueté avec :
-
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)
-
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
-
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()
-
Compatible V3-V4-Lite Aeon Labs - Dsd37 - Répéteur / Amplificateur De Signal Z-Wave
jojo a répondu à un(e) sujet de p78ch201 dans Aeon Labs / Aeotec
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 -
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>
-
Compatible V3-V4-Lite Aeon Labs - Dsd37 - Répéteur / Amplificateur De Signal Z-Wave
jojo a répondu à un(e) sujet de p78ch201 dans Aeon Labs / Aeotec
+1 -
Compatible V3-V4-Lite Aeon Labs - Dsd37 - Répéteur / Amplificateur De Signal Z-Wave
jojo a répondu à un(e) sujet de p78ch201 dans Aeon Labs / Aeotec
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 -
@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 ?)
- 1 285 réponses
-
- tuto multimã©dia
- graphiques
-
(et 2 en plus)
Étiqueté avec :
-
Compatible V3-V4-Lite Aeon Labs - Dsd37 - Répéteur / Amplificateur De Signal Z-Wave
jojo a répondu à un(e) sujet de p78ch201 dans Aeon Labs / Aeotec
+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) -
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 ?
-
Compatible V3-V4-Lite Aeon Labs - Dsd37 - Répéteur / Amplificateur De Signal Z-Wave
jojo a répondu à un(e) sujet de p78ch201 dans Aeon Labs / Aeotec
oui, oui, on parle bien de celui-là. Le mien est également retourné chez le fournisseur -
aller, re-dodo
-
bon, ne vous cassez pas la tête, Lazer a répondu ici àma question
- 33 réponses
-
- Variables Globale
- VG
-
(et 2 en plus)
Étiqueté avec :
-
bon bhen j'ai eu une idée simple pour le reset, et je n'ai pas pu m'empêcher de la tester ... Donc dans le VD DomoCharts, bouton Sensors : local variables = { { ["type"] = "co2", ["id"] = 10001, ["name"] = "Timer_Chaudiere", ["reset"] = true, ["resetValue"] = 0 }, { ["type"] = "co2", ["id"] = 10002, ["name"] = "Timer_Solaire", ["reset"] = true, ["resetValue"] = 0 },} J'ai rajouté pour chaquevariable 2 paramètres ["reset"] et ["resetValue"] puis, à la fin du code, -- Get User Variable list (updated from FHEM through API) datas = nil local datas = {} for i = 1, #variables do payload = "/graph/data_post_" .. variables[i].type .. ".php?id=" .. variables[i].id .. "&value=" .. fibaro:getGlobalValue(variables[i].name) datas[#datas+1] = {} datas[#datas].id = variables[i].id datas[#datas].timestamp = 'NULL' datas[#datas].type = variables[i].type datas[#datas].value = fibaro:getGlobalValue(variables[i].name) if variables[i].reset == true then fibaro:setGlobal(variables[i].name, variables[i].resetValue) end end j'ai ajouté les 3 lignes if variables[i].reset == true then fibaro:setGlobal(variables[i].name, variables[i].resetValue) end FACILE (et propre me semble-t-il)
-
ton problème semble être au niveau de la DB SQL. Si tu faits un restore du backup, il va restorer la DB SQL telle quelle, et le problème sera toujours présent, sauf que tu auras perdu tes icônes Donc reste àinsister auprès de Fibaro OU refaire un recovery qui efface tout et tout recommancer à0 (mais cela demande beaucoup de travail, en fonction du nombre de devices)
-
oui, en effet, j'y avais pensé, mais je ne voulais pas modifier ton code car il faudrait que je ré-applique ces modifs lors d'une prochaine version de ta part), sauf si on peut intégrer cela dans le futur. Donc je "modifie" ton code, j'essaye avec le settimeout, mais je sens que ça va être chaud d'intégrer tout ça proprement
-
perso, je ne fais malheureusement pas de diffférence entre les beta et stables de Fibaro. C'est malheureux, mais c'est comme ça. Sur ma HC2, je suis passé en 4.057b, suite àla lecture de tous les posts postés sur ce forurm, et elle est hyper stable chez moi. D'après ce que je lis depuis lors, je ne suis pas prêt d'upgrader ànouveau.
-
et voici le debug, avec remise àzéro de la variable 1 seconde après chaque nouvelle minute. Mais je perds quelques secondes par minutes [DEBUG] 00:28:51: La variable Timer_Chaudiere existe [DEBUG] 00:28:51: La variable Timer_Solaire existe [DEBUG] 00:28:51: Time is 00:28:51, waiting for 10 seconds... [DEBUG] 00:29:01: Last run : 20/12/2015 00:29:01 - VG 'Timer_Chaudiere' = 1 [DEBUG] 00:29:01: Last run : 20/12/2015 00:29:01 - VG 'Timer_Solaire' = 1 [DEBUG] 00:29:02: Last run : 20/12/2015 00:29:02 - VG 'Timer_Chaudiere' = 2 [DEBUG] 00:29:02: Last run : 20/12/2015 00:29:02 - VG 'Timer_Solaire' = 2 [DEBUG] 00:29:03: Last run : 20/12/2015 00:29:03 - VG 'Timer_Chaudiere' = 3 [DEBUG] 00:29:03: Last run : 20/12/2015 00:29:03 - VG 'Timer_Solaire' = 3 [DEBUG] 00:29:04: Last run : 20/12/2015 00:29:04 - VG 'Timer_Chaudiere' = 4 [DEBUG] 00:29:04: Last run : 20/12/2015 00:29:04 - VG 'Timer_Solaire' = 4 [DEBUG] 00:29:06: Last run : 20/12/2015 00:29:06 - VG 'Timer_Chaudiere' = 5 [DEBUG] 00:29:06: Last run : 20/12/2015 00:29:06 - VG 'Timer_Solaire' = 5 ... [DEBUG] 00:29:57: Last run : 20/12/2015 00:29:57 - VG 'Timer_Chaudiere' = 51 [DEBUG] 00:29:57: Last run : 20/12/2015 00:29:57 - VG 'Timer_Solaire' = 51 [DEBUG] 00:29:58: Last run : 20/12/2015 00:29:58 - VG 'Timer_Chaudiere' = 52 [DEBUG] 00:29:58: Last run : 20/12/2015 00:29:58 - VG 'Timer_Solaire' = 52 [DEBUG] 00:29:59: Last run : 20/12/2015 00:29:59 - VG 'Timer_Chaudiere' = 53 [DEBUG] 00:29:59: Last run : 20/12/2015 00:29:59 - VG 'Timer_Solaire' = 53 [DEBUG] 00:30:00: Last run : 20/12/2015 00:30:00 - VG 'Timer_Chaudiere' = 54 [DEBUG] 00:30:00: Last run : 20/12/2015 00:30:00 - VG 'Timer_Solaire' = 54 [DEBUG] 00:30:01: New minute [DEBUG] 00:30:01: Last run : 20/12/2015 00:30:01 - VG 'Timer_Chaudiere' = 1 [DEBUG] 00:30:01: Last run : 20/12/2015 00:30:01 - VG 'Timer_Solaire' = 1 [DEBUG] 00:30:02: Last run : 20/12/2015 00:30:02 - VG 'Timer_Chaudiere' = 2 [DEBUG] 00:30:02: Last run : 20/12/2015 00:30:02 - VG 'Timer_Solaire' = 2 [DEBUG] 00:30:03: Last run : 20/12/2015 00:30:03 - VG 'Timer_Chaudiere' = 3 [DEBUG] 00:30:03: Last run : 20/12/2015 00:30:03 - VG 'Timer_Solaire' = 3