Jeedom – Dépannage (Plugin Xiaomi home)

Aujourd’hui je vous propose un article un peu spécial, mais que je pense assez utile.

Je vais vous donner quelques conseils pour vous auto dépanner et le cas échéant, utiliser le forum correctement, en prenant comme exemple le plugin Xiaomi Home que vous connaissez bien si vous êtes un habitué de mon blog.

Jeedom est une solution domotique grand public, mais qui est, de mon point de vue, destinée à des utilisateurs qui ont quelques connaissances en informatique, parce qu’il n’est pas rare de devoir mettre les doigts dans le camboui et de passer dans le monde très étrange de linux, avec les consoles, lignes de commande, les root, Sudo etc…

Présenté ainsi, ça peut faire peur !!!

Mais ne vous inquiétez pas, on arrive très vite à s’en sortir et Jeedom est fondé sur une communauté d’entraide très performante via le Forum officiel, ou les différents blogs de passionnés.

Les développeurs sont d’abord des utilisateurs de Jeedom qui ont besoin d’un plugin et décident de le développer. Avec l’aide d’utilisateurs, appelés Beta-Testeurs, ils s’efforcent de rendre le plugin stable, c’est à dire fonctionnel pour le proposer au plus grand nombre.

Cette étroite collaboration entre les développeurs et les utilisateurs, fait la grande force de Jeedom et permet de proposer une box domotique toujours à la pointe des nouvelles technologies.


Pour cet exemple de dépannage je vais vous parler du plugin Xiaomi Home, mais l’idée générale peut être applicable aux autres plugins.

Je ne vous présente plus la marque Xiaomi qui, en plus de proposer des produits de qualité, défie toute concurrence au niveau tarifs et facilité d’utilisation de ses produits.

Xiaomi propose aux développeurs d’utiliser une API qui permet de créer des programmes compatibles avec leurs produits. C’est grâce à cela que Lunarok à développé le plugin (6€) Xiaomi Home, rendant la suite Xiaomi Smart Home compatible avec Jeedom. Depuis Juillet 2017 ce plugin est passé en version 3.

Ce plugin est devenu un must-have, car il est de plus en plus complet et performant. Je vous dit cela en toute objectivité et en tant qu’utilisateur lambda, car je ne touche rien sur la vente des plugins.

Sarakha63 développeur et membre de l’équipe Jeedom, s’est associé à Lunarok pour le développement du plugin et après quelques nuits blanches et des heures de travail, à rendu le plugin beaucoup plus fonctionnel et compatible avec de nombreux appareils Wifi, tels que l’aspirateur Mi-Robot , l’humidificateur et le purificateur d’air, le ventilateur, etc…

Retrouvez plus de détails sur le site de Sarakha63.

Il y a parfois quelques ratés, mais qui sont plus ou moins rapidement corrigés, via des mises à jour du plugin (Jeedom) et/ou de la Gateway et de l’API (Xiaomi).

Si vous avez des problèmes pour l’installation du plugin, je vous invite à lire ou relire ces articles avant de revenir ici pour trouver de l’aide.

Jeedom et Xiaomi Smart Home – Installation et configuration du plugin Xiaomi

Jeedom et Xiaomi Smart Home – Mises à jour du Firmware et du Plugin

Voilà quelques conseils qui s’appliquent aussi aux autres plugins :

Vérifiez la documentation du plugin.

  • Depuis Jeedom V3, la doc se trouve en local, pour l’ouvrir aller dans :
    • Plugins / Gestion des Plugins / XIAOMI HOME / Documentation (En haut à droite).
  • La version online est aussi disponible sur GitHub :  Documentation Xiaomi.

Les docs ne sont pas toujours très à jour, ou très complètes, mais suffisamment pour l’installation de base. Il faut laisser le temps aux développeurs de les mettre à jour en fonction des nouveautés.

Vérifier les mises à jour.

  • Jeedom doit vous proposer régulièrement des mises à jours dans la barre de menu, mais vous pouvez forcer la recherche en allant dans :
    • Roue crantée / Centre de mise à jour / Vérifier les mises à jour.
  • Vous pouvez relancer la recherche pour Jeedom (core) ou pour un, plusieurs ou tout les plugins.

Les dépendances.

Pour fonctionner, le plugin utilise des dépendances. Ce sont des “programmes” tiers, utiles à son bon fonctionnement. Certains plugin n’en ont pas.

  • Vérifiez que le statut soit bien à OK en allant dans :
    • Plugins / Gestion des Plugins / XIAOMI HOME / onglet Dépendances.
  • Si le statut est à NOK ou en cas de problème il peut être nécessaire de les réinstaller afin d’avoir les dernières mise à jour, ou de réparer une éventuelle corruption.
  • Cliquez sur :
    • Relancer“, (précédé d’un vélo) et attendre l’installation et que le statut passe à OK.

Les Démons.

Pour fonctionner, le Plugin utilise des Démons. Ce sont des “processus” qui s’exécutent en arrière-plan. Certains plugin n’en ont pas.

  • Vérifiez que le statut soit bien à OK en allant dans :
    • Plugins / Gestion des Plugins / XIAOMI HOME / onglet Démon.
  • Si le statut est à NOK ou en cas de problème il peut être nécessaire de les redémarrer.
  • Cliquez sur :
    • Play” (triangle) sous “(Re)Démarrer” et attendre que le statut passe à OK.

 

Vérifier les Logs en mode DEBUG

Vous verrez souvent sur le forum des bouts de codes appelés “Log”. C’est un historique des événements liées au Plugin, il peut y avoir plusieurs fichiers de log comme c’est le cas pour le plugin Xiaomi.

Il existe plusieurs type de Logs, dont le mode DEBUG qu’il faut activer pour avoir le plus de détails possible. Les logs existent aussi pour les scénarios.

L’utilisation en continu du mode Debug peut ralentir votre Jeedom, il est donc conseillé de ne l’activer qu’en cas de besoin.

  • Pour activer le mode DEBUG aller dans :
    • Plugins / Gestion des Plugins / XIAOMI HOME / onglet LOG / cocher Debug / Sauvegarder.
  • Une fois activé, pour voir les logs, il faut cliquer sur :
    • Dans notre exemple, un bouton précédé d’un trombone avec le nom du plugin, “Xiaomi Home”.

  • Les logs sont des informations brutes qu’il faut interpréter, voila un exemple : (J’ai remplacé quelques information par[Informations personnelles]).

[2017-08-22 18:07:42][DEBUG] : Send to jeedom : {'devices': {'aquara': {'short_id': u'0', 'cmd': u'heartbeat', 'source': '192.168.1.22', 'token': u'[Informations personnelles]', 'sid': u'286c0785915c', 'model': u'gateway', 'data': {u'ip': u'192.168.1.22'}}}}
[2017-08-22 18:07:42][INFO] : Starting new HTTP connection (1): 127.0.0.1

[2017-08-22 18:07:43][DEBUG] : "POST /plugins/xiaomihome/core/php/jeeXiaomiHome.php?apikey=[Informations personnelles] HTTP/1.1" 200 0

[2017-08-22 18:07:44][DEBUG] : {u'model': u'magnet', u'cmd': u'report', u'data': u'{"status":"open"}', u'short_id': 40370, u'sid': u'158d000106733d'}

[2017-08-22 18:07:44][DEBUG] : Send to jeedom : {'devices': {'aquara': {'short_id': 40370, 'cmd': u'report', 'source': '192.168.1.22', 'token': '', 'sid': u'158d000106733d', 'model': u'magnet', 'data': {u'status': u'open'}}}}

[2017-08-22 18:07:44][INFO] : Starting new HTTP connection (1): 127.0.0.1

[2017-08-22 18:07:44][DEBUG] : "POST /plugins/xiaomihome/core/php/jeeXiaomiHome.php?apikey=[Informations personnelles] HTTP/1.1" 200 0

[2017-08-22 18:07:46][DEBUG] : {u'model': u'magnet', u'cmd': u'report', u'data': u'{"status":"close"}', u'short_id': 40370, u'sid': u'158d000106733d'}

[2017-08-22 18:07:46][DEBUG] : Send to jeedom : {'devices': {'aquara': {'short_id': 40370, 'cmd': u'report', 'source': '192.168.1.22', 'token': '', 'sid': u'158d000106733d', 'model': u'magnet', 'data': {u'status': u'close'}}}}

[2017-08-22 18:07:46][INFO] : Starting new HTTP connection (1): 127.0.0.1

[2017-08-22 18:07:46][DEBUG] : "POST /plugins/xiaomihome/core/php/jeeXiaomiHome.php?apikey=[Informations personnelles] HTTP/1.1" 200 0

[2017-08-22 18:07:47][DEBUG] : {u'model': u'magnet', u'cmd': u'heartbeat', u'data': u'{"voltage":3035,"status":"close"}', u'short_id': 40370, u'sid': u'158d000106733d'}

[2017-08-22 18:07:47][DEBUG] : Send to jeedom : {'devices': {'aquara': {'short_id': 40370, 'cmd': u'heartbeat', 'source': '192.168.1.22', 'token': '', 'sid': u'158d000106733d', 'model': u'magnet', 'data': {u'status': u'close', u'voltage': 3035}}}}

[2017-08-22 18:07:47][INFO] : Starting new HTTP connection (1): 127.0.0.1

[2017-08-22 18:07:47][DEBUG] : "POST /plugins/xiaomihome/core/php/jeeXiaomiHome.php?apikey=[Informations personnelles] HTTP/1.1" 200 0

  • Pour vous aider dans l’interprétation, vous pouvez filtrer les logs avec des mots clés, comme par exemple :
    • Nom d’un composant, son ID, son statut…
  • Voilà le même log avec un filtre sur d’ID d’un capteur d’ouverture de porte (40370) trouvé dans :
    • Plugins / Protocole Domotique / Xiaomi Home / [L’équipement] / Identifiant court :

[2017-08-22 18:07:44][DEBUG] : {u'model': u'magnet', u'cmd': u'report', u'data': u'{"status":"open"}', u'short_id': 40370, u'sid': u'158d000106733d'}
[2017-08-22 18:07:44][DEBUG] : Send to jeedom : {'devices': {'aquara': {'short_id': 40370, 'cmd': u'report', 'source': '192.168.1.22', 'token': '', 'sid': u'158d000106733d', 'model': u'magnet', 'data': {u'status': u'open'}}}}

[2017-08-22 18:07:46][DEBUG] : {u'model': u'magnet', u'cmd': u'report', u'data': u'{"status":"close"}', u'short_id': 40370, u'sid': u'158d000106733d'}

[2017-08-22 18:07:46][DEBUG] : Send to jeedom : {'devices': {'aquara': {'short_id': 40370, 'cmd': u'report', 'source': '192.168.1.22', 'token': '', 'sid': u'158d000106733d', 'model': u'magnet', 'data': {u'status': u'close'}}}}

[2017-08-22 18:07:47][DEBUG] : {u'model': u'magnet', u'cmd': u'heartbeat', u'data': u'{"voltage":3035,"status":"close"}', u'short_id': 40370, u'sid': u'158d000106733d'}

[2017-08-22 18:07:47][DEBUG] : Send to jeedom : {'devices': {'aquara': {'short_id': 40370, 'cmd': u'heartbeat', 'source': '192.168.1.22', 'token': '', 'sid': u'158d000106733d', 'model': u'magnet', 'data': {u'status': u'close', u'voltage': 3035}}}}

  • En exemple, sur cette dernière ligne, on peut voir plusieurs informations :
    • [2017-08-22 18:07:47]<== Date et heure de l’action.
    • [DEBUG]<== Log en mode débogage.
    • Send to jeedom<== Information envoyé à Jeedom.
    • 'short_id': 40370 <== Id au format court du composant trouvé dans :
      • Plugins / Protocole Domotique / Xiaomi Home / [L’équipement] / Identifiant court
    • 'source': '192.168.1.22'<== Adresse IP de la Gateway Xiaomi.
    • 'model': u'magnet'<== Modèle du composant, ici “Magnet”, donc capteur d’ouverture de porte et fenêtre première version (rond).
    • u'status': u'close'<== Le statut est passé à “Close”, donc fermé.
    • u'voltage': 3035<== Le statut du voltage de la pile.

Il y a beaucoup d’informations dans le Log et je ne peux pas toutes les décrire ici. Le but n’est pas de faire un traducteur de log mais de vous expliquer leur fonctionnement, je vous invite donc vivement à aller voir les logs, même lorsqu’il n’y a pas de problème, histoire de vous familiariser avec le concept.

Chercher l’information sur le Forum de Jeedom

Une fois que vous avez identifié un problème, ou que quelque chose vous parait étrange, il est temps de faire une recherche sur le forum.

  • Vous pouvez tenter votre chance en saisissant un ou plusieurs mots clés dans le champs “Recherche“, en haut à gauche, mais vous risquez d’avoir beaucoup de réponses.
  • Par défaut les réponses sont classées sur l‘heure du message par ordre décroisant.
  • Vous pouvez utiliser la recherche avancée pour ajouter des critères de recherche, mais vous risquez de passer à coté de la réponse qui pourrait vous être utile.

  • Vous pouvez aussi naviguer dans les différentes catégories et faire des recherches par mot clé à l’intérieur de celles-ci.
  • Il est important de bien identifier la source du problème, afin de ne pas faire une recherche dans la mauvaise catégorie.
  • Il est possible de faire une recherche dans la liste de résultats afin d’affiner la recherche.


  • N’hésitez pas à saisir des synonymes, car les mots que vous utilisez ne sont pas forcement les mêmes que les autres, surtout avec les anglicismes, les abréviations ou les traductions.
    • Capteur, Détecteur, Magnet, Door sensor, Porte, Fenêtres, Ouverture, Open, Fermeture, Close…

Poster sur le forum

Si j’ai pris le plugin Xiaomi comme exemple, c’est déjà parce que j’en parle beaucoup sur mon blog, mais aussi, parce que c’est une sujet très suivi sur le forum et par conséquent difficile à appréhender.

Au moment de l’écriture de l’article il y a 65 sujets dont le principal comporte pas moins de 3733 messages sur 187 pages et ce n’est pas le pire.

Malheureusement, il arrive que des membres du forum Jeedom se fassent rembarrer lorsqu’ils posent une question et ce pour plusieurs raisons dont :

  • Les questions ne sont pas toujours très claires ou bien détaillées. ( Logs, captures d’écran…)
  • La réponse à déjà été abordée dans l’un des 4800 messages des 65 sujets.
  • La solution se trouve dans la doc du plugin.
  • Le problème ne vient pas du plugin.
  • Vous avez posé votre question au mauvais moment et vous êtes tombé sur une tête de lard. 😀

Je ne vous cache pas que c’est en partie cette attitude qui m’a motivée à écrire des articles sur Jeedom et particulièrement sur le plugin Xiaomi.

Sachez que la réponse peut aussi bien vous être donnée par un utilisateur que par un développeur, mais ces derniers passent beaucoup de temps pour nous proposer des plugins de qualité et le SAV n’est pas forcement leur activité principale, ni préférée.

Comme je vous le disais plus tôt, le principe d’entraide du forum est très bien et même essentiel, lorsqu’il règne de la courtoisie, de l’amabilité et un minimum de politesse, indispensables aux bonnes relations humaines.

C’est arrivé à tout le monde un jour de buter sur un problème pendant des heures, de ne pas trouver la solution qui se trouve parfois devant nos yeux, ou de ne pas arriver à expliquer très clairement son problème dans la pression de l’instant.

A ce moment là, on n’a pas envie de se faire rembarrer, sans même avoir de réponse.

A noter que ce texte est affiché en haut du forum et il est à l’intention de toutes personnes désirant poster sur le forum, utilisateurs, développeurs, modérateurs, administrateurs

N’hésitez pas à faire remonter tout propos désobligeant en cliquant sur le ! de chaque messages.

  • Vous pouvez poster sur le sujet principal, ou sur un sujet secondaire en rapport avec votre problème.
  • Vous pouvez créer un nouveau sujet si vous ne trouvez pas votre bonheur dans ceux existants.
    • Il faut s’assurer d’être dans la bonne catégorie.
    • Il faut mettre un titre simple, clair et précis.
  • Lorsque vous postez, il est important de donner le plus d’informations possible :
    • Version de Jeedom V2, V3…
    • Plateforme : Raspberry Pi 2, 3, NUC, VM, Synology…
    • Particularités : Beta, Offline, GSM…
    • Actions effectuées : Relance des dépendances, des démons, réinstallation…
  • Pour le plugin Xiaomi, ne confondez pas Mi-home (application mobile) et Jeedom (box domotique).
    • En général, pour que ça fonctionne dans Jeedom, il faut que ça fonctionne dans Mi-home.
  • Surtout, IL FAUT DONNER DES LOGS !!! Alors ça c’est la base pour être dépanné !!!
    • Dès que vous avez un problème, ajoutez des logs, sinon il est difficile, voir impossible, de savoir pourquoi ça ne marche pas. Sauf peu être pour les problèmes récurrents, mais normalement, vous devriez déjà avoir trouvé la réponse via la recherche. 🙂
    • Si les Logs sont du chinois pour vous, copiez tout le texte, mais sachez que ça devient vite difficile à lire sur le forum.
    • Pour copier les logs depuis Jeedom, il faut mettre la “Pause” en haut à droite, sélectionner le texte et faire clique droit “Copier” ou “CTRL+C“.
    • Pour coller “CTRL+V” les logs sur le forum, il faut les “encapsuler” dans des balises [code]….[/code] en cliquant sur l’icone “</>”.

Ne soyez pas trop impatients, il se peut que vous ayez une réponse dans la minute, ou quelques jours plus tard.

Vous n’êtes pas en relation avec une Hotline, les réponses seront apportées par d’autres utilisateurs, ou directement par les développeurs, mais ils ont tous aussi une vie en dehors de Jeedom.

Sources complémentaires.

Pendant que vous attendez une réponse sur le forum, vous pouvez toujours chercher sur les différents blogs en rapport avec Jeedom, même si, en général, les blogs sont plutôt destinés à présenter et expliquer le fonctionnement des produits plutôt que pour proposer du SAV.

N’hésitez pas à utiliser votre moteur de recherche favoris pour chercher la solution, mais attention aux cavernes d’Ali-Baba qui sous le couvert d’article plus ou moins complets, ne vous proposent que des liens commerciaux.

Si c’est pour acheter du matériel, pas besoin d’aller bien loin venez consulter mes bons plans. 🙂

Conclusion

J’espère qu’avec ces quelques conseils vous aurez les outils pour dépanner Jeedom, ou tout du moins vous permettront de poser les bonnes questions et d’avoir les bonnes réponses sur le forum. Vous aurez compris que Jeedom demande quelques connaissances et reste une solution DIY même si des box clé en main sont commercialisées.

N’hésitez pas à laisser des commentaires, surtout si vous estimez que j’aurais du insister, ajouter, ou supprimer certaines choses dans cet article.

Partager :
7 Comments

Laissez un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Merci à ceux qui ont contribué.
Votre don contribuera à fournir encore plus de contenu de qualité.

Facebook Auto Publish Powered By : XYZScripts.com