je déterre un vieu topic:
J’ai le meme message d’erreur sur mon installation quand je veux utiliser le Bluetooth.
Sur mon RPI c’etait OK mais je suis passé sur PC + UBUNTU et ça ne fonctionne plus.
Sur Ubuntu mon dongle est OK puisque je peux appairer un appareil via Bluetooth.
J’ai redémarré a plusieurs reprise & aussi fait le redémarrage du docker.
Des idées ?
Merci
Sur ton PC Ubuntu, si tu fais:
sudo systemctl status bluetooth
Tu as quoi ?
Si ça marche, si tu fais:
hcitool dev
Tu vois tes appareils Bluetooth ?
Dans les statuts j’ai « running » et « enable »
Ensuite la commande hcitool dev me remonte éléments : un hci0 et un hci2 avec leur adresses respectives
Et si tu rentre dans le container:
docker exec -it gladys sh
Et que tu fais:
hcitool dev
?
Je me demande si il ne manque pas un volume au container Docker…
En cherchant sur internet, j’ai l’impression qu’il faut DBus:
-v /var/run/dbus:/var/run/dbus \
Sinon pour Dbus c’est là que je me rend compte que mes connaissances Unix sont tres limitées… Je ne connais pas du tout DBUS et j’ai commencé a lire… j’ai pas tout compris ^^
cette fois-ci j’ai demandé un peu d’aide a ChatGPT et j’ai compris un peu plus.
j’ai donc effectué la suite de commande puis j’ai redémarré mais rien n’y fait, j’ai toujours mon message d’erreur…
De ce que tu me montres en screenshot, ça a l’air d’être bon donc pas besoin de fouiller sur DBus.
Bizarre que ça ne marche pas dans gladys si tu arrives à lister les appareils Bluetooth depuis le container !
Tu as une erreur dans les logs Gladys quand tu scannes ?
Bonjour,
Ce sujet est identique je pense :
https://community.gladysassistant.com/t/pas-de-bluetooth-sur-minipc-beelink-s12/9217
Nous sommes 2 autres à avoir le problème.
Mini PC Lenovo ThinkCentre M93p
sudo systemctl status bluetooth
● bluetooth.service - Bluetooth service
Loaded: loaded (/lib/systemd/system/bluetooth.service; enabled; vendor preset: enabled)
Active: active (running) since Sun 2024-12-01 16:33:03 CET; 3 days ago
Docs: man:bluetoothd(8)
Main PID: 667 (bluetoothd)
Status: "Running"
Tasks: 1 (limit: 9306)
Memory: 1.9M
CPU: 81ms
CGroup: /system.slice/bluetooth.service
└─667 /usr/lib/bluetooth/bluetoothd
déc. 03 17:42:38 lenovo bluetoothd[667]: Endpoint unregistered: sender=:1.184 path=/MediaEndpoint/A2DPSink/sbc_xq_552
déc. 03 17:42:38 lenovo bluetoothd[667]: Endpoint unregistered: sender=:1.184 path=/MediaEndpoint/A2DPSource/sbc_xq_552
déc. 04 10:49:33 lenovo bluetoothd[667]: Endpoint registered: sender=:1.237 path=/MediaEndpoint/A2DPSink/sbc
déc. 04 10:49:33 lenovo bluetoothd[667]: Endpoint registered: sender=:1.237 path=/MediaEndpoint/A2DPSource/sbc
déc. 04 10:49:33 lenovo bluetoothd[667]: Endpoint registered: sender=:1.237 path=/MediaEndpoint/A2DPSink/sbc_xq_453
déc. 04 10:49:33 lenovo bluetoothd[667]: Endpoint registered: sender=:1.237 path=/MediaEndpoint/A2DPSource/sbc_xq_453
déc. 04 10:49:33 lenovo bluetoothd[667]: Endpoint registered: sender=:1.237 path=/MediaEndpoint/A2DPSink/sbc_xq_512
déc. 04 10:49:33 lenovo bluetoothd[667]: Endpoint registered: sender=:1.237 path=/MediaEndpoint/A2DPSource/sbc_xq_512
déc. 04 10:49:33 lenovo bluetoothd[667]: Endpoint registered: sender=:1.237 path=/MediaEndpoint/A2DPSink/sbc_xq_552
déc. 04 10:49:33 lenovo bluetoothd[667]: Endpoint registered: sender=:1.237 path=/MediaEndpoint/A2DPSource/sbc_xq_552
hcitool dev
Devices:
hci0 80:00:0B:CE:2F:B0
donne la même réponse
Je me demande si il ne manque pas des dépendances dans le container Gladys
Quand je regarde la page de la dépendance qu’on utilise (@abandonware/noble - npm)
Je vois qu’il faut ces dépendances:
apt-get install bluetooth bluez libbluetooth-dev libudev-dev
Hors dans le Dockerfile de Gladys, je ne vois que bluez :
Je me demande si c’est suffisant ou pas.
Est-ce que quelqu’un pourrait rentrer dans son container Gladys, et tester d’installer un par un ces dépendances, et voir si ça fonctionne ensuite dans Gladys ?
Pour rentrer dans le container:
docker exec -it gladys sh
Ensuite, tester d’installer bluetooth:
apt-get install bluetooth
Puis re-tester dans Gladys
Puis si ça ne marche pas, tester d’installer :
apt-get install libbluetooth-dev
Puis re-tester dans Gladys.
Puis si ça ne marche pas, tester d’installer :
apt-get install libudev-dev
Merci d’avance !!
Si c’est ça, je rajouterais les dépendances au container
apt-get install bluetooth
Reading package lists… Done
Building dependency tree… Done
Reading state information… Done
E: Unable to locate package bluetooth
apt-get install libbluetooth-dev
Reading package lists… Done
Building dependency tree… Done
Reading state information… Done
E: Unable to locate package libbluetooth-dev
apt-get install libudev-dev
Reading package lists… Done
Building dependency tree… Done
Reading state information… Done
E: Unable to locate package libudev-dev
Ce que je ne comprends pas, c’est que ça a fonctionné puisque j’ai 2 porte clé nut dans mes appareils.
Je les avais intégrés il y a longtemps.
Je ne m’en servais pas, scènes désactivées, car la détection de présence ne me satisfaisait pas.
En me connectant en direct avec un écran sur le mini-pc, je vois bien des appareils bluetooth dans Ubuntu: smartphone, clé TV
Il m’indique que des MAJ pour Docker sont dispos
Docker Buildx cli plugin
Docker CLI
Docker Compose (V2) plugin for the Docker CLI
Rootless support for Docker
- quelques autres MAJ propres à Ubuntu
Avant de faire les installations,
Fais un :
apt-get update
Puis refais le protocole un par un
liste des paquets récupérée, mais même réponse
apt-get install bluetooth
En fait, j’étais sorti du conteneur Gladys.
En y retournant :
apt-get update
…
Reading package lists… Done
Puis
apt-get install bluetooth
Reading package lists… Done
Building dependency tree… Done
Reading state information… Done
Suggested packages:
bluez-cups bluez-obexd bluez-meshd
The following NEW packages will be installed:
bluetooth
0 upgraded, 1 newly installed, 0 to remove and 0 not upgraded.
Need to get 38.9 kB of archives.
After this operation, 69.6 kB of additional disk space will be used.
Get:1 Index of /debian bookworm/main amd64 bluetooth all 5.66-1+deb12u2 [38.9 kB]
Fetched 38.9 kB in 0s (1102 kB/s)
debconf: delaying package configuration, since apt-utils is not installed
Selecting previously unselected package bluetooth.
(Reading database … 10770 files and directories currently installed.)
Preparing to unpack …/bluetooth_5.66-1+deb12u2_all.deb …
Unpacking bluetooth (5.66-1+deb12u2) …
Setting up bluetooth (5.66-1+deb12u2) …
Rien ne change pour le moment dans Gladys
Faut-il redémarrer le conteneur Gladys pour que les modifs prennent effet ?
Je pense que oui !
docker restart gladys
Merci Gaetan pour ton aide
Pour ma part:
update + apt-get install bluetooth
+ apt-get install libbluetooth-dev
+ apt-get install libudev-dev
+ redémarrage du docker… Rien n’a changé…
Je confirme que j’ai les memes retour hors du docker et dans le docker en tapant hcitool dev
Je viens de refaire toutes les étapes et le résultat est le même :
Le module Bluetooth n’est pas disponible, merci de vérifier qu’il est bien activé.
Moi aussi, meme constat, au meme point.
Merci pour vos tests !
Je suis en journée Gladys demain, j’investiguerais sur le sujet
Salut à tous !
J’ai investigué sur le sujet, et je n’apporte malheureusement pas de bonnes nouvelles ^^
Depuis plusieurs années, Gladys utilise la librairie « Noble », une librairie qui permet d’utiliser le Bluetooth depuis Node.js
Cette librairie a progressivement été abandonnée par les mainteneurs originels (le dernier commit date d’il y a 6 ans) mais a été repris par un collectif, « abandonware ».
Nous utilisons la version « abandonware », qui est toujours maintenue, mais de manière légère par quelques membres.
En cherchant dans les issues de cette librairie, on se rend vite compte que depuis une certaine version du Kernel Linux, la librairie ne fonctionne plus.
Il y a de nombreux posts sur le sujet, quelques exemples :
Pour les voir tous, ça se passe ici : Issues · abandonware/noble · GitHub
Je vois qu’il y a eu des soucis sur d’autres librairies suite à des changements de Kernel sur Linux :
Qu’est-ce qu’on fait ?
Le bug a l’air relativement récent (relativement à l’activité du projet noble), je pense que pour l’instant on peut voir si abandonware publie un correctif pour les versions récentes de Linux.
Si cette librairie est véritablement abandonné dans les prochains mois, il faudra trouver une alternative, mais j’ai cherché rapidement et il n’y a vraiment aucune autre librairie, c’est compliqué
Quel est votre usage ?
Pour ceux qui voulaient utiliser le Bluetooth dans ce post, que vouliez-vous faire ?
Je peux vous orienter vers des solutions alternatives !
Franchement, la détection de présence via Bluetooth est une méthode que je déconseille de plus en plus.
Autrefois, la majorité des appareils Bluetooth étaient “basiques” : ils diffusaient constamment leur adresse MAC, ce qui les rendait très simples à détecter et à suivre.
Mais aujourd’hui, les appareils modernes comme les smartphones ou les montres connectées intègrent des mécanismes avancés pour éviter le tracking (par souci de confidentialité) et optimiser la consommation de batterie.
Résultat : les scans Bluetooth sur ces dispositifs sont devenus largement inefficaces.
Merci @pierre-gilles pour toutes ces recherches.
Ce que je ne comprends pas c’est que le Bluetooth fonctionne sur le mini-pc (des appareils sont vus), mais pas dans Gladys. Certainement le fait que ceux sont deux librairies différentes, une pour chaque « appareil ».
Perso, je n’ai pas l’utilité du Bluetooth. J’ai des porte clés nut dont je ne me sers pas. La détection de présence n’est pas top avec je trouve.