je viens de faire quelques modifications apres avoir recu des nouvelles cles bluetooth, qui m’ont permis de faire des tests avec une antenne locale. J’avoue que je n’avais pas pu tester cette partie, qui comme toute partie de code non testee, contenait quelques bugs suite a l’introduction du multi-antennes. desole
Voici la liste des mises a jour:
1/ quand on met a jour le plugin, vous ne devriez plus avoir le probleme de la base de donnees. Si la table n’existe pas, elle est cree. (verifie, et fonctionne)
2/ Installation des dependances. Je suis revenu sur la version originale qui fonctionne correctement (verifie et fonctionne)
3/ Gestion l’antenne locale J’ai fait un test dans ma VM en ajoutant un dongle, et les mises a jour des telephones sont bien remontees. (verifie et fonctionne)
4/ Gestion d’une antenne distante.
Quand vous creez l’antenne, il faut remplir les champs ‹ nom ›, ‹ ip ›, utilisateur et mot de passe, et ensuite sauvegarder avant d’envoyer les fichiers.
J’ai verifie, et les mises a jour des telephones (verifie et fonctionne).
Je pense qu’il faudra attendre demain pour que les mises a jour soient publiees par jeedom.
[Sun Jan 10 16:13:33.270562 2021] [php7:warn] [pid 2952] [client 127.0.0.1:48824] PHP Warning: Use of undefined constant id - assumed 'id' (this will throw an Error in a future version of PHP) in /var/www/html/plugins/phone_detection/core/php/phone_detection.php on line 16
[Sun Jan 10 16:13:33.270678 2021] [php7:warn] [pid 2952] [client 127.0.0.1:48824] PHP Warning: Use of undefined constant remoteName - assumed 'remoteName' (this will throw an Error in a future version of PHP) in /var/www/html/plugins/phone_detection/core/php/phone_detection.php on line 16
[Sun Jan 10 16:13:33.270695 2021] [php7:warn] [pid 2952] [client 127.0.0.1:48824] PHP Warning: Use of undefined constant configuration - assumed 'configuration' (this will throw an Error in a future version of PHP) in /var/www/html/plugins/phone_detection/core/php/phone_detection.php on line 16
Merci @naboleo,
il manquait les guillemets autour de la definition des identifiants id, remoteName et configuration. Je viens de le fixer. Je ne remonterai cette modification que dans quelques jours, une fois que j’aurai eu un peu plus de retour.
bonne soiree
Benoit
Bonjour a tous,
je viens de pousser la modification concernant les warnings reportes par naboleo, et également un erreur qui se produit quand on créer un mobile et que le paramètre de configuration 'NoLocal' n’est pas coche.
Si vous ne voulez pas attendre la mise a jour de cette nuit, la correction est facile (au travers de jeexplorer:
editer le ficher core/class/phone_detection.class.php
a la ligne 32, remplacer callDaemon($query, $sock) par phone_detection::callDaemon($query, $sock)
Merci, tout fonctionne bien de mon côté. Je voudrai juste savoir si on aura une carte du réseau pour voir la position des antennes ainsi que nos téléphones comme le plugin blea.
pour l’instant, ce n’est pas prevu, et pour moi ce n’est pas une priorite (je voudrai travailler sur ma config et un autre plugin en priorite).
En effet, dans BLEA, cette fonctionnalite de vue reseau est liee au RSSI, qui n’est pas disponible dans ce plugin. Ici, on a juste l’information connecte/deconnecte, que tu retrouves dans la page ‹ Sante ›.
En plus. pour BLEA, l’idee est de gerer pas mal d’equipements, alors que pour ce module, on ne doit (normalement) gerer que des telephones.
Je pense que cette fonctionnalite prendra du sens si (ou le jour ou) le RSSI des telphones sera integre au plugin.
@Sebastien_Ferrand est occupe en ce moment, mais je pense ne pas me tromper en disant qu’il est ouvert a toute contribution. L’implementation du multi-antennes en est la preuve.
Bonsoir,
De mon côté le code tourne maintenant depuis plusieurs jours dans deux environnements différents
jeedom de test en 4.1 sans antenne mais un cle bluetooth local
jeedom 4.0 avec 2 antennes et sans antenne locale.
Je ne constante aucun décrochages ou arrêt intempestifs de démons.
Il reste la doc à mettre à jour, mais pour moi on est pas mal.
Qu’en est-il de votre coté ? Êtes-vous satisfait de l implémentation multi-antennes ?
Benoit
Jeedom Smart 3.3.54 avec un dongle Bluetooth CSR 4.0
Raspberry pi 3B+ en antenne pour BLEA initialement.
Après essai de mon côté, cela à fonctionné pendant quelques heures (~4h) puis l’antenne s’est complètement bloqué. Phone détection et BLEA ne fonctionnaient plus que sur la Smart et les Nut et autres thermomètres connectés via BLEA sur l’antenne Raspberry était noté absent.
J’ai redémarré le Raspberry et les plugins dessus mais dés que Phone Detection est activé, BLEA tombe sur l’antenne.
Karikatore
Il ne faut pas que les plugins BLEA et Phonedetection partage la même clé Bluetooth.
L’un doit avec une clé à lui (ex.: hci0) et l’autre aussi (ex.: hci1).
De mon côté, durant les premières heures tout fonctionné en parallèle mais ça n’a pas tenu et à sauté pendant la nuit.
Je vais attendre une version stable dans ce cas là et aviserai à ce moment là. C’est déjà super que Phone Detection fonctionne sur antenne, si ça pouvait fonctionner sur le bluetooth interne de l’antenne ça serai le top !
Le contrôleur interne du raspberry se base sur un driver uart, qui gere tres mal les connections concurrentes, et du coup, peu fonctionner pendant un moment et s’arreter ensuite en fonction des acces BLEA et phone_detection. Il y a pas mal de sujets qui traitent de ce probleme sur internet la dessus sur internet, et donc, ce n’est pas les plugins BLEA ou phone_detection qui vont regler le probleme. Desole, la il n’y a pas de solution miracle , sauf peut-etre patcher le driver uart du raspberry !
Pour de la stabilite, il faut 1 cle USB en plus de l’antenne interne, il n’y a pas d’autre solution. Peut-etre que ceux qui utilisent une cle USB (type SENA ou autre) n’ont pas se probleme, car la gestion d’une cle USB se fait au travers du driver USB qui est different.
Pour ma part, j’avais des « plantages » sur raspberry quand je n’avais que l’antenne interne utilisee par BLEA et phone detection. En mettant BLEA sur hci0 et phone_detection sur hci1 (une cle USB externe), plus de probleme du tout.
Apres, j’ai une VM uniquement pour mon bluetooth avec une cle SENA. La dessus, j’arrive a mettre BLEA et phone_detection sur la meme antenne. C’est une gestion differente, car on est sur un host (pas un raspberry) et dans une VM, avec une cle USB.
Merci @Fabrice et @benoit5672 pour vos réponses précises !
J’ai donc mis un dongle Bluetooth sur mon Rpi avec BLEA en hci0 et phone_detection en hci1. Mais phone_detection ne semble pas fonctionner correctement sur l’antenne, j’ai un « Invalid device: No such device » dans les log. En essayant la commande hciconfig en SSH, je constate que le Rpi ne voit que son bluetooth interne en hci0, pas de trace de hci1.
A votre avis, y a-t-il une manip à faire afin que le Rpi détecte le dongle et le prenne en compte?
Alors, j’ai la réponse et l’origine du problème.
Les RPi ne savent plus voir le port Bluetooth interne quand un port externe est présent.
En d’autre terme. Au moment ou vous raccordez votre clé BT externe, hciconfig voit hci0 (l’interne à ce moment) et l’hci1 (externe à ce moment).
Au reboot : il n’y a plus que hci0 qui est visible (et c’est le BT externe).
Vous pouvez valider cela (mais j’en suis sur) (à la condition d’avoir un Raspberry Pi OS à jour).
=> merci de tester cela
je te confirme que cela fonctionne avec le fichier (btuart) mise a jour. On voit bien les 2 interface bluetooth.
Avant le reboot,
1/ hci0 - uart
2/ hci1 - usb
Apres le reboot:
1/ hci0 - usb
2/ hci1 - uart
Merci pour le partage du lien, je pense que pas mal d’utilisateurs de jeedom seront interesses.
Benoit
Pas sur d’avoir compris?
Mon kernel est plus grand que 5.4.51 et je suis bien en 64bits mais sur un Pi3 pas un Pi4 et effectivement je n’ai pas upgradé le kernel récemment par crainte d’effets de bord.
J’ai vérifié je vois bien le BT interne (hci0) une fois l’UART initialisé ceci dit je n’ai pas de clé BT pour tester si ce problème existe aussi sur Pi3.
[EDIT] en relisant l’article il semble que ce problème affecte aussi le Pi3 et le Pi Zero…j’ai eu de la chance ma machine de prod est en v5.4.49