Aller au contenu

Recommended Posts

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

Partager ce message


Lien à poster
Partager sur d’autres sites

Bonsoir, 

 

Ton main loop appuie sur le bouton de ton VD pour rafraichir ?

Partager ce message


Lien à poster
Partager sur d’autres sites

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

 

Partager ce message


Lien à poster
Partager sur d’autres sites

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

 

Partager ce message


Lien à poster
Partager sur d’autres sites

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}}

 

Partager ce message


Lien à poster
Partager sur d’autres sites

×