Aller au contenu

Messages recommandés

Posté(e)

Bonjour,


 


Je constate que les scènes qui tournent indéfiniment finissent par s'arrêter toutes seules.


 


Exemple:


J'ai créé une scène avec le script GEA de Steven.Elle fonctionne très bien, mais après quelque temps, il s'arrête de fonctionner.


Il n'y a pas d'erreur. Dès que j'enregistre la scène, elle se remet à  fonctionner pour plus ou moins 24h.


 


J'ai créé une scène qui ping mon Karotz toutes les 30s. C'est exactement la même chose. Elle fonctionne pendant un certain temps, puis s'arrête. Dès que j'enregistre la scène, elle se remet à  fonctionner normalement.


 


Avez-vous ce genre de soucis avec vos scènes qui tournent en boucle ? S'arrêtent-elles toutes seules ?


 


Je suis en v3.590.


 


Je viens de relancer le HC2 (Le 21 à  22h20 pour moi). J'indiquerai le temps que les scènes ont mis avant de s'arrêter.


Posté(e)

Et sans utiliser GEA as tu le même problème, il y a peut-être un bug ? De mon côté pas de problèmes, toutes mes scènes fonctionnent mais je n'utilise pas le GEA de Steven.

Posté(e)

Le script GEA de Steven fonctionne très bien. Merci àlui pour ce script de qualité.

Il y a quelles règles simples du style: allume la lumière du couloir quand j'ouvre la porte, éteint la lumière du couloir après 3mn.

Un script simple qui tourne sur lui même avec une tempo entre chaque itération fini par se bloquer, comme bloquer par un sleep.

Ce matin, le script GEA fonctionne toujours et celui qui vérifie la présence du lapin sur le réseau aussi (Krikroff, j'utilise ton "ping").

Ils ont démarrés ensemble lors du reboot du HC2.

Envoyé de mon iPad àl'aide de Tapatalk

Posté(e)

Il n'y avait pas de message subliminale par rapport au script de Steven...

 

C’était juste pour procéder par élimination pour t'aider sur ton problème car par expérience lorsqu'il y a des blocages avec les scènes sur le HC2 c'est toujours la même origine :rolleyes:-> un bug dans un script.

 

Mais je te confirme que le moteur de scène du HC2 est très STABLE mais bon après tu as peut-être un problème matériel avec ton HC2.

  • Upvote 1
Posté(e)

Je confirme. Mon code est encore jeune et expérimentale. La prochaine version sera plus stable, je travaille justement sur sa stabilisation.

Néanmoins, j'ai aussi les mêmes soucis que toi et ce avant même que GEA soit dans ma tête ;)

Posté(e)

J'ai créé cette scène assez simple:

--[[
%% properties

%% globals
--]]

local count = 0;
while true do
    count = count + 1;
    fibaro:debug(os.date("%x") .. ": " .. count)
    fibaro:sleep(60 * 1000);
end

Elle boucle indéfiniment en affichant un compteur avec une pause d'une minute à  chaque itération.

 

Elle ne devrait jamais s'arrêter en principe.

 
Posté(e)

Est-ce que la case "Do not allow alarm to stop scene while alarm is running" est bien cochée ?

 

Tu peux ajouter ceci en début de script pour savoir exactement quand le script a démarré et éviter les instances multiples de ta scène pour raison X ou Y...

fibaro:debug("HC2 start script at " .. os.date());

if (fibaro:countScenes() > 1) then
  fibaro:debug("Script already running.");
  fibaro:abort();  
end

Mais oui cette scène ne devrait jamais s'arrêter en principe.

 

Ce n'est pas le cas ?

Posté(e)

La case est bien cochée.

 

Merci Krikroff. Le script devient donc:

--[[
%% properties

%% globals
--]]

fibaro:debug("HC2 start script at " .. os.date());
 
if (fibaro:countScenes() > 1) then
    fibaro:debug("Script already running.");
    fibaro:abort();
end

local count = 0;
while true do
    count = count + 1;
    fibaro:debug(os.date("%x") .. ": " .. count)
    fibaro:sleep(60 * 1000);
end

Le bouton bleu "Désactiver" se trouvant sous le fenêtre debug désactive le script en question mais redémarre tous les scripts.

Il ne faut pas que je touche à  cette scène pendant un bon moment si je veux constater son arrêt.

 

Je le surveille et je vous tiens au courant.

 

Posté(e)

Krikroff, peux-tu me confirmer ceci ?

 

J'ai trois boutons au dessus de la fenêtre "Debug": "Démarrer", "Arrêter" et "Nettoyer".

 

"Démarrer" démarre la scène.

"Arrêter" arrête la scène même si elle fait une boucle infinie avec "while do done".

"Nettoyer" efface le fenêtre "Debug".

 

C'est exact ?

Posté(e)

Le "Main Loop" de mon module virtuel Karotz s'est arrêté en moins de 24h. Je rappelle que ce "Main Loop" fait un ping du Karotz toutes les 30s.

La scène GEA (v3.21) et ma scène "Test Boucle Infinie" fonctionnent depuis 1395mn.

Posté(e)

Cherche pas c'est le Karotz qui ne doit pas répondre correctement a un moment et bloquer Net.FHttp et le mainloop plante, le problème que nous rencontrons tous avec la couche Net. du HC2 ;).

 

Change le ping à  120s cela peut aider, voir si le script "catch" bien toutes les éventuelles erreurs aussi...

 

Donc le problème est avec les VD et pas les scènes ...

Posté(e)

Le Karotz (sous openKarotz) est connecté en filaire depuis une semaine car il y avait trop déconnexion en Wifi. Maintenant, son interface est toujours accessible quelque soit les moments de la journée. Je passe le ping à120s.

Maintenant qu'il est toujours accessible, je n'ai plus besoin de ce "Main Loop" mais je le garde car le fait qu'il plante tout seul m'intrigue.

×
×
  • Créer...