Rem's Posté(e) le 26 avril 2017 Auteur Signaler Partager Posté(e) le 26 avril 2017 Le 1/12/2016 à 09:59, Steven a dit : J'ai un VD qui va prendre les infos de mon IPX toute les X secondes et qui va mettre les valeurs dans le fameux "fake device" Bonsoir à tous, j'ai un soucis avec mon VD IPX - X400ct (4 pinces ampèremétriques), il ne se mets pas à jour au fil de la consommation. Pourtant j'ai bien quelques lignes dans le main loop ... Une idée ... merci pour votre aide Lien vers le commentaire Partager sur d’autres sites More sharing options...
pepite Posté(e) le 27 avril 2017 Signaler Partager Posté(e) le 27 avril 2017 Bonsoir, Ton main loop appuie sur le bouton de ton VD pour rafraichir ? Lien vers le commentaire Partager sur d’autres sites More sharing options...
Rem's Posté(e) le 27 avril 2017 Auteur Signaler Partager Posté(e) le 27 avril 2017 Dans le main loop, j'ai ça. Mais j'aimas l'impression que cela fonctionne ... local myDeviceID = fibaro:getSelfId() if type(n) == "nil" then n1 = tonumber(os.time()) fibaro:call(myDeviceID, "pressButton", "6") n = 1 end if tonumber(os.time()) > n1 + (4) then fibaro:call(myDeviceID, "pressButton", "6") n1 = tonumber(os.time()) end Lien vers le commentaire Partager sur d’autres sites More sharing options...
pepite Posté(e) le 27 avril 2017 Signaler Partager Posté(e) le 27 avril 2017 Essaie cela, Ca fonctionne super, c'est un code de @Steven. local selfId = fibaro:getSelfId() -- 1ère fois que le main loop s'exécute, on crée une variable nommée "instance" car elle n'existe pas. Elle existera au 2ème passage donc ne sera pas recrée. if (not instance) then -- on indique la fréquence d'execution souhaitée (en minutes) instance = { lastrun = 0, every = 1 } fibaro:debug("first run") end -- on vérifie la différence entre cette exéction et la dernière (stocké dans instance.lastrun) diff = os.date("*t", os.difftime(os.time(), instance.lastrun)) -- si la différence en minutes et supérieure ou égale à la fréquence souhaitée (instance.every) if (diff.min >= instance.every) then fibaro:call(selfId, "pressButton", "6") -- on stock l'heure de la nouvelle exécution instance.lastrun = os.time() fibaro:debug("executed") end Lien vers le commentaire Partager sur d’autres sites More sharing options...
Rem's Posté(e) le 27 avril 2017 Auteur Signaler Partager Posté(e) le 27 avril 2017 super, merci beaucoup !! Ca tourne dans le main loop, je verrai demain si la conso s'est mise à jour. En revanche, le cumul de conso (à droite et en bleu à l'affichage du module), est ce q'on peut faire que les données s'incréments ... ?? {properties = { energy = power_1}} Lien vers le commentaire Partager sur d’autres sites More sharing options...
Messages recommandés