Bonjour à tous,
Périodiquement je passe en revue mes plugins dits « critiques » c’est à dire ceux dont je peux certes me passer pendant quelques jours le temps d’une panne ou autre (A mon avis un système domotique doit être conçu comme çà) mais dont l’obsolescence serait très pénalisante.
Je regarde s’ils ont l’air abandonnés par leur dev, s’il n’y a eu aucune mise à jour depuis plusieurs années, …
Et j’ai quelques inquiétudes avec le plugin Officiel « Odace SFSP » (beagle).
Je possède des dizaines d’interrupteurs et de boites de centre de la gamme Odace sans fil sans pile installés un peu partout dans l’appartement.
Déjà j’ai eu un ennui il y a quelques temps avec des dépendances qui ne s’installaient plus.
En gros le plugin utilise pybluez qui fait appel à use_2to3 et les versions récentes de setuptools n’incluent plus use_2to3
J’ai pu m’en sortir avec l’aide de @Mips en, downgradant setuptools sudo pip3 install setuptools==58
Voir ce fil :
Mais la consultation du dépot Github de PyBluez :
n’est pas rassurante, on y lit : This project is not under development
Consider some alternatives:
On trouve en lisant les commentaires sur le web une autre solution qui est de remplacer la ligne pip3 install pybluez
Dans le fichier resources/install_apt.sh par: pip3 install git+https://github.com/pybluez/pybluez.git#egg=pybluez
En effet ce problème est corrigé sur le Github de PyBluez mais pas dans la version PiPI (encore un indice que cette librairie est abandonnée !).
Mais cela ne résoud pas le problème d’utilisation d’une librairie complètement abandonnée.
Je ne sais pas si l’équpe Jeedom a des projets pour ce plugin qui avait été développé me semble-t-il à l’époque avec le concours de Schneider Electric.
A l’époque de mes ennuis avec les dépendances j’avais ouvert un ticket resté sans réponse.
En plus les sources de ce plugin ne sont pas sur le Github de Jeedom.
Je ne sais pas non plus si Schneider a des projets pour la gamme sans fil sans pile (peu de vendeurs, appli Smartphone jamais vraiment publiée sur les markets, …).
Donc même si je me met à potasser les domaines où je suis nul (BLE par exemple) et que je redéveloppe quelque chose je pense que je n’aurai pas le droit de le publier car le code est rempli d’infos que le développeur a du obtenir de Schneider.
Je suis dans l’expectative, mais je sais qu’il faut que je fasse quelque chose avant par exemple que que ce plugin passe en obsolète.
En fait en regardant plus attentivement ce plugin il mériterait bien une petite mise à jour, par exemple :
Pas de colonne « Etat » dans l’onglet Commandes pour les commandes info contrairement à presque tous les autres plugins officiels
Dans ce même onglet impossibilité de choisir la commande info liée à une commande action ce qui empêche de lier les commandes action On et Off des boites de centre (DCL) à la commande info Etat. Bien sûr ce serait encore mieux si dans le fichier core/config/devices/dcl/dcl.json (et d’autres) étaient ajoutées des lignes "value" : "Etat", pour le faire directement.
Ce manque est un peu génant car on ne peut pas choisir le template Light pour les deux commandes action On et Off, masquer la commande info Etat et ainsi obtenir le fonctionnement classique pour les lampes dans Jeedom : l’icône d’une ampoule sur laquelle on peut cliquer pour l’allumer et l’éteindre.
Et pas moyen de faire un PR (car bien sûr sur mes Jeedom j’ai déjà corrigé ces petits problèmes donc j’ai les modifs du code à dispo) puisque ce plugin n’est pas sur le Github.
Et lorsque j’essaie d’ouvrir un ticket pour le support je ne peux pas car j’ai des plugins en beta (les miens !).
Est-ce possible d’ouvrir le repo en publique pour autoriser les pr?
Désolé pour le tag en direct, je ne sais pas s’il y a une autre procédure que vous demander.
Bonjour,
Je viens d’installer le plugin Odace et, j’ai le même type de problème.
Le Bluetooth n’est pas reconnu
J’ai acheté une jeedom atlas, et je n’y connais pas grand chose à Linux…
Mais, en suivant la correction proposée:
"… une autre solution qui est de remplacer la ligne pip3 install pybluez
Dans le fichier: plugins/beagle/resources/install_apt.sh par: pip3 install git+https://github.com/pybluez/pybluez.git#egg=pybluez
"
ça fonctionne…
Merci beaucoup
Attention si vous êtes en Debian 11, ce plugin souffre du même problème de fuite mémoire que d’autres plugins avec un démon en Python. @Mips a trouvé la cause et déjà corrigé plusieurs plugins, malheureusement je n’ai ce plugin que sur ma Jeedom de prod (où je redémarre le démon chaque jour par un scénario) et la seule autre VM que j’ai pour le moment est en Debian 12 et il y a d’autres choses à corriger pour que ce plugin soit compatible avec Debian 12.
Ci dessous un graphique de l’utilisation mémoire ou j’ai désactivé le scénario pendant quelques jour pour illustrer le phénomène.
Comme ce plugin est crucial pour moi il faudrait absolument que je m’attaque à ces problèmes, malheureusement le repo n’est pas public et des problèmes de santé m’empêchent de m’occuper beaucoup de ma domotique et de Jeedom.
Il est dommage que l’appel ci-dessus de Mips à @Salvialf et @Loic pour rendre le dépôt public n’ait reçu aucun écho.
J’ai mis à jour en beta pour fixer le problème des dépendances et la fuite mémoire du démon et quelques fix pour deb12.
J’ai fait un peu de nettoyage aussi mais je n’ai pas touché à l’interface (colonne état, les commandes liées etc) => cela sera disponible demain.
J’ai du écrire un truc vraiment pas propre je trouve pour installer pybluez (voir patch pybluez for deb12 · jeedom/plugin-beagle@0091d84 · GitHub) depuis git sur deb12 mais je ne vois pas d’autre solution avec le système packages.json du core et ca fonctionne donc le plugin devrait être compatible deb11 & 12.
j’ai testé avec un dongle bluetooth standard, j’ignore si c’est relevant, mais avec ca le démon démarre sur deb11 & 12; attention ca reste de la beta et je suis incapable de tester le fonctionnement car je n’ai pas ce matos.
en cas de problème bloquant et besoin urgent => revenir sur la stable, cela devrait être transparent.
et ca ne résout pas le problème d’utiliser une lib qui n’est plus maintenue
Hello
J’ai migré ma smart sur Debian 11 en fin d’année, et le plugin ne fonctionnait plus.
Denis du support a réussi à le faire fonctionner au niveau des commandes, mais je n’ai plus les retours d’états.
Penses-tu que la version béta peut arranger cela ?
Bonjour,
Tout d’abord je tiens à remercier chaleureusement @Loic et @Mips.
Et @Loic pas du tout besoin de t’excuser je suis tellement content que ce repo soit maintenant public, j’avais peur que ce plugin devienne obsolète.
Je n’ai pas encore pu tester la version béta (qui ne sera disponible sur le market que demain) ni en Debian 11 ni en Debian 12.
Mais ce dont je suis sûr c’est qu’elle solutionnera le problème de mémoire libre qui baisse.
Pour le problème de retour d’état je ne suis pas sûr de ton problème mais si c’est le fait que les commandes action et info ne sont pas liées pour les modules et boites de centre et qu’il n’est pas possible de corriger le problème dans la page des commandes, j’ai un patch tout prêt qui fonctionne bien chez moi.
Si tu teste la version béta @Claude69 , partage nous ton retour.
Hello
Les retours d’états fonctionnait en Debian 10, mais plus depuis que je suis passé en 11.
Je vais tester la béta dès sa dispo, et je reviens partager.
Ton patch peut s’appliquer sur la stable, la béta ou les 2 ?
beta et stable c’est juste quelques lignes dans un seul fichier.
Comme tes équipements sont déjà inclus il suffirait de modifier desktop/js/beagle.js
en ajoutant
Hello Mips, je n’ai pas eu le temps de faire une installation complète de ta béta mais sur ma Jeedom de prod j’ai testé juste le remplacement des fichiers Python et je peux confirmer :
Qu’il n’y a plus de fuite mémoire
Que le démon fonctionne bien, les commandes passent bien, le dcryptage du payload se fait bien tout me semble OK
Dès que je peux je vérifie la totalité des changements et l’installation des dépendances
Encore merci
Avec ton fichier, je peux maintenant faire ma liaison.
Par contre les commandes ne fonctionnent plus.
En remettant mon fichier, toujours pas de commande
Edit : Je suis passé sur la béta :
Installation des dépendances OK et les commandes fonctionnent à nouveau.
Par contre le retour de l’état ne fonctionne toujours pas.
Je viens de comprendre, j’avais aussi ajouté un bout de javascript pour remplir ce select, repris sur le plugin template.
Je vais passer sur la béta et essayer de faire un PR pour ajouter la commande info liée. Par contre je n’ai jamais fait de PR sur le github Jeedom. @Mips il y a des consignes quelque part pour faire les PR ?