Module "dead"

Alors le 13 c’est un volet roulant (module Fibaro FGR222) et le 18 un capteur de fumées Heiman sur piles donc.
Pour tous les autres : 14 et 15 modules fil pilote Qubino, 16,17, 23 et 24 : Fibaro FGR223 et tout le reste Fibaro FGR222

As-tu essayé d’enlever ce détecteur pour vous ce que donnerait le routage ?

Pas encore, je ne suis pas sur place. Je vois ça ce week-end.

Bonjour mich0111,
voilà, le module 18 à pile est exclu. Le module 13 (FGR222) passe désormais par des modules sur secteur (je n’en ai pas d’autres à piles en même temps). Je vais laisser 15 jours comme ça pour voir. En même temps, pendant les 15 jours qui viennent de passer, je n’ai eu aucun module dead.

Salut,
Je te le répète, je ne connais pas ce détecteur de fumée. Peut-être a-t-il un comportement différent de la norme ?
Pour en revenir à ta stratégie, tu peux ffectivement attendre quelques jours en laissant ça comme ça. Si cela reste stable, réinclus ton détecteur (de préférence en non sécurisé, sinon, il peut y avoir d’autres problèmes) et vérifies la stabilité de ton réseau.
Si cela évolue dans le mauvais sens, tu sauras précisément d’où vient le problème.
Bonne fin de weekend.

C’est bien ce que je pensais faire. Pour le détecteur de fumées, ça m’apprendra à avoir voulu économiser quelques euros en prenant une parque moins connue que Fibaro…
Peux tu me dire dans quel cas choisir l’inclusion sécurisée. Je ne vois pas bien la différence.
Merci encore pour le temps que tu as pris à m’aider à y voir plus clair.
Bon dimanche

Alors, je sais que les avis divergent et que tu auras du mal à te faire ta propre opinion en lisant les avis sur le forum.
Certains disent qu’ils n’ont aucun problème avec, d’autres s’en plaignent tout le temps.
Un sujet avait été ouvert il y a quelque temps où quelqu’un avait fait une étude précise sur le sujet et effectué des benchs conséquents.
Il en découlait que bon nombre de requêtes étaient perdues en mode sécurisé.
De ce que je crois comrpendre, cela serait lié à la version de la bibliothèque utilisée par le plugin (la 1.4 alors que la dernière est la 1.6).
C’est pour cette raison qu’une refonte du plugin est d’ailleurs annoncée depuis quelque temps.
Enfin, pour en revenir à ma pomme, j’ai banni toutes les inclusions sécurisées de mon système depuis près d’un an et depuis, je n’ai pas ou très peu de problème sur mon réseau z-wave.
Je n’y reviendrais que lorsque le plugin aura été mis à jour.
A ça, j’ai ajouté un scénario qui soigne le réseau toutes 6 heures (très largement insipré du code de @Nemeraud) et je ne m’occupe plus de rien (ou très peu).
Si ça peut t’éclairer.

- Nom du scénario : Soin Z-wave
- Objet parent : Système
- Mode du scénario : schedule
    - Programmation : 15 0/6 * * *



    
    CODE
     (code) //**********************************************************
    // Parameters
    //**********************************************************
    $API_Key = ta-clé-API;
    $Ping_Wait = 15;
    $message = 'Module(s) DEAD : ';
    $tagerror = 0;
    
    //**********************************************************
    // Liste des modules DEAD et ACTIF
    //**********************************************************
    $scenario->setLog('**********************************************************');
    $scenario->setLog('***** Liste des modules DEAD et ACTIF *****');
    $scenario->setLog('**********************************************************');
    
    	// $scenario->setLog('Module :'.$id);   
    	$url_health = 'http://localhost:8083/network?apikey=' .$API_Key .'&type=info&info=getHealth';
        $content = file_get_contents($url_health);
      	$results = json_decode($content, true);
      	$success = $results["state"];
        if ($success == 'ok') {
          	$scenario->setLog('***** ACCES OK');
        	$devices = $results["result"]["devices"];
            $node_errors = array();
            foreach ($devices as $node_id => $node_values) {
            	$isFailed = $node_values["data"]["isFailed"]["value"];
             	$isEnable = $node_values["data"]["is_enable"]["value"]; 
              	//$scenario->setLog('DEBUG : Failed : '.$isFailed .' Enable : '.$isEnable);
           if ($isFailed & $isEnable) {
                    $node_name = $node_values["data"]["description"]["name"];
              		if (count($node_errors) == 0) {
    	              	$scenario->setLog('Module :'.$node_id .' '.$node_name.' est en erreur');	
                        $message = $message.$node_id .' '.$node_name.' '; 
    					$ToPing_List[] = $node_id;
                        $tagerror = 1;
                    } else {
    	                $scenario->setLog('Module :'.$node_id .' '.$node_name.' est en OK');
                    }
               }
            }
        } else {
        	$scenario->setLog('ERREUR API :'.$results["result"]);	  
        }
    //**********************************************************
    
    //**********************************************************
    // ALERTE
    //**********************************************************
    if ( $tagerror == 1 ) {
        $scenario->setLog('***** ENVOI ALERTE');
    	$cmd=cmd::byString('#[Communication][Centre communication][Envoi Alerte Antoine]#');
    	$cmd->execCmd($options=array('title'=>'ALERTE ZWAVE', 'message'=> "$message"), $cache=0);
    }
    
    //**********************************************************
    // Ping a list of elements
    //**********************************************************
    $scenario->setLog('**********************************************************');
    $scenario->setLog('***** Ping *****'); 
    $scenario->setLog('**********************************************************');
    foreach($ToPing_List as $id){
    	$scenario->setLog('Ping Module :'.$id); 
    	$url_ping = 'http://localhost:8083/node?apikey=' .$API_Key .'&node_id=' .$id .'&type=action&action=testNode';
    	file_get_contents($url_ping);
      	sleep($Ping_Wait);
    }
    
    CODE
     (code) $pathlog=log::getPathToLog('openzwaved');
    if (file_exists($pathlog) && shell_exec('grep "Not enough space in stream buffer" ' . $pathlog . ' | wc -l') > 0) 
    {
    $scenario->setLog('Not enough space in stream buffer detected');
    log::add('openzwave', 'error', 'Not enough space in stream buffer detected');
    log::clear('openzwaved');
    shell_exec('sudo pkill -f openzwaved.py');
    openzwave::deamon_stop();
    sleep(5);
    openzwave::deamon_start();
    }

J’ai 2 détecteur de fumées identiques et ils marchent au poil.
Sur mon réseau ils ne sont pas répéteurs.

1 « J'aime »

Merci de ton retour.
En farfouillant dans mes liens archivés, j’avais vu qu’il fallait modifier des paramètres. Peux tu me dire si tu as la même configuration.
Merci d’avanceFumees

C’était ce que j’avais lu qui m’avait fait modifier car je n’avais pas cela après inclusion. Si ça se trouve c’est mon inclusion qui déconne pour ce module.
Merci encore, je sens que je suis sur la bonne voie pour résoudre mon souci !

Merci pour les infos. Je vais regarder le code à tête reposée et voir comment inclure ça chez moi.
Merci en tout cas !

Je suis dans le même cas avec un module qui fait des siennes et qui passe en DEAD régulièrement; je dois donc ouvrir Jeedom et soigner le noeud tous les jours ou tous les 2 jours…
Qu’est-ce qu’il est conseillé de faire pour résoudre ce problème ? Il s’agit d’une prise multiple Greenwave powernode.
L’exclure et ré-inclure en non sécurisé peut-il remédier au problème ?
Merci d’avance pour vos conseils

Bonjour,
Ça ne te fera pas de mal d’essayer déjà.
Si ça ne marche toujours pas, on explorera d’autres solutions.

Bonsoir,

alors voilà, le temps est passé et je pense avoir résolu mon souci.
J’ai finalement upgradé d’un pi3b+ vers un nuc. J’y ai installé Proxmox et donc Jeedom sur VM. Voilà pour ce qui a changé.
J’ai remis tous mes modules Zwave (Fibaro Roller shutter 2 et 3 pour mes volets roulants, Qubino fil pilote). J’ai même mis une télécommande Remotec REMEZRC90 depuis.
J’ai laissé tourner depuis début novembre et aucun souci avec aucun équipement Zwave.

De là, j’ai pensé à réinclure mon détecteur de fumées Heiman ce week-end. Je l’ai vite retiré car encore une fois, il est considéré comme un routeur dans la table de routage. Si je l’avais laissé plus longtemps je parie que j’aurais eu des soucis. J’ai contacté domotique-store après avoir suivi le paramétrage indiqué :

  • Sur Jeedom : Pour que la détection de fumée fonctionne, il faut modifier la commande créée automatique par Jeedom comme ceci : Fumées / Info Binaire : Classe : 113 / Instance : 1 / Index : 4 / Engrenages → Configuration → Formule : « #value# == 2 » (sans les guillemets). Vous pouvez aussi aller sur l’onglet affichage du menu « engrenages » et choisir pour Dashboard et Mobile le Widget « Alert ».

Pour eux, ce n’est pas un comportement normal. Je pense donc être tombé sur un capteur défectueux. A moins que vous n’ayez une idée sur la question…
En tout cas, je suis bien content d’avoir retrouvé un réseau Zwave fiable !
Merci encore pour l’aide apportée.

1 « J'aime »

Bonjour @mich0111,
je me permets de revenir sur ce bout de code que tu m’avais donné.
Je viens enfin de le mettre en place mais je pense qu’il y a un truc qui ne se déroule pas normalement.
J’ai bien ajouté ma clé API Zwave. Par contre, dans le log je pense que je devrais avoir plus de choses visibles. Du coup, je doute que ça lance ce qu’il faut chez moi. Peux tu me confirmer mon impression ?
Merci d’avance

------------------------------------
[2021-06-08 22:00:01][SCENARIO] Start : Scenario execute automatiquement sur programmation.
[2021-06-08 22:00:01][SCENARIO] Exécution du sous-élément de type [action] : action
[2021-06-08 22:00:01][SCENARIO] Exécution du sous-élément de type [action] : code
[2021-06-08 22:00:01][SCENARIO] Exécution d'un bloc code
[2021-06-08 22:00:01][SCENARIO] **********************************************************
[2021-06-08 22:00:01][SCENARIO] ***** Liste des modules DEAD et ACTIF *****
[2021-06-08 22:00:01][SCENARIO] **********************************************************
[2021-06-08 22:00:01][SCENARIO] ***** ACCES OK
[2021-06-08 22:00:01][SCENARIO] **********************************************************
[2021-06-08 22:00:01][SCENARIO] ***** Ping *****
[2021-06-08 22:00:01][SCENARIO] **********************************************************
[2021-06-08 22:00:01][SCENARIO] Exécution du sous-élément de type [action] : code
[2021-06-08 22:00:01][SCENARIO] Exécution d'un bloc code
[2021-06-08 22:00:01][SCENARIO] Fin correcte du scénario

Bonjour,
Avec ce code, seuls les modules DEAD sont remontés.
Si tu n’en as pas, ton log est normal.

Super, je pensais que je devais tous les voir avec soit ok soit pas ok à côté. Donc tout va bien alors !
Merci

Si tu veux avoir la liste de tous tes modules avec leur état, il faut modifier le code.
Ce ne serait pas compliqué d’ailleurs mais je n’en vois pas l’utilité.
L’intérêt de ce code est de t’envoyer un message lorsque l’un des modules est DEAD en te signalant lequel.

Ce sujet a été automatiquement fermé après 24 heures suivant le dernier commentaire. Aucune réponse n’est permise dorénavant.