Bluetooth fonctionnait correctement sur mon ordinateur portable (Acer Aspire V17 Nitro) fonctionnant sous Ubuntu 18.04, jusqu'à ce que j'utilise Suspend pour la première fois et que je le réveille à nouveau. Il ne détecte plus aucun appareil.
Choses que j'ai essayées:
Redémarrage
Désactiver et activer le bluetooth
Redémarrage du service Bluetooth
Réinstallez ces paquets: bluez
gnome-bluetooth
pulseaudio-module-bluetooth
Lancer rfkill list
:
0: hci0: Bluetooth
Soft blocked: no
Hard blocked: no
1: Acer-wireless: Wireless LAN
Soft blocked: no
Hard blocked: no
2: phy0: Wireless LAN
Soft blocked: no
Hard blocked: no
Démarrer sur une clé USB et y activer le bluetooth (il ne détecte aucun périphérique là non plus)
Quelqu'un a-t-il d'autres idées? Le fait qu'il ait échoué lors de la suspension ou de la sortie d'une suspension pourrait être un indice.
Ma solution initiale ne fonctionne plus de manière fiable pour moi. Je vois maintenant l'un des trois cas en suspension de suspension:
La seule solution de contournement qui résout le problème 100% du temps est de redémarrer le BIOS et d'activer puis de désactiver manuellement le Bluetooth et le WiFi.
La solution de rechange que j'utilise consiste à débrancher la source d'alimentation et à fermer puis à ouvrir le couvercle de l'ordinateur portable pour forcer le cycle d'alimentation du matériel. Cela fonctionne environ la moitié du temps, donc je dois souvent le faire deux ou trois fois.
Je rencontre le même problème d’utilisation de Kubuntu sur les ordinateurs portables Dell, Asus et MSI avec WiFi/Bluetooth intégré depuis au moins 16,04. Cela arrive par intermittence; Je ne peux pas le reproduire de manière fiable, mais cela ne se produit qu'après la reprise de la suspension.
Voici mon chipset:
$ lspci | grep Network
3a:00.0 Network controller: Qualcomm Atheros QCA6174 802.11ac Wireless Network Adapter (rev 32)
Lorsque le problème survient avec une configuration par défaut, le service Bluetooth ne peut pas être redémarré complètement. J'ai beaucoup emprunté à réponse d'Ossama Nasser , mais j'ai eu plus de chance en obligeant le service Bluetooth à suspendre puis à reprendre en reprise.
Ma solution ci-dessous, également écrite dans /lib/systemd/system-sleep/bluetooth
:
#!/bin/bash
if [ "${1}" == "pre" ]; then
service bluetooth stop
Elif [ "${1}" == "post" ]; then
sleep 5
service bluetooth start
fi
Je continuerai à mettre à jour cette réponse si je peux confirmer que cela fonctionne. Encore une fois, cette question semble quelque peu difficile à reproduire.
J'ai le même problème, emprunter un correctif pour un problème similaire que j'ai rencontré avec Ubuntu 14.04, après une enquête plus approfondie, j'ai constaté que le redémarrage de Bluetooth corrigeait le problème. C'est une solution qui fonctionne actuellement pour moi:
1- Dans le dossier /lib/systemd/system-sleep/
, créez un script appelé bluetooth
avec le contenu suivant:
#!/bin/bash
if [ "${1}" == "post" ]; then
sleep 5
service bluetooth restart
fi
cela redémarrera le service bluetooth 5 secondes après la reprise du système (cette manière est la seule qui fonctionne pour moi pour le moment. Cela pourrait changer d’avis à l’avenir)
2- Marquez le script comme exécutable:
chmod +x /lib/systemd/system-sleep/bluetooth
Je tiens à souligner que j'utilise Kubuntu 18.04
Bon, ça recommence à fonctionner pendant la rédaction de la question.
Cela a fonctionné à nouveau après le démarrage de la clé USB et désactivation Bluetooth (au lieu de l'activer, ce que j'avais déjà essayé). J'ai ensuite redémarré dans mon installation normale et il détecte à nouveau les périphériques.
Je ne vais pas suspendre jusqu'à ce que je puisse trouver une solution appropriée.
C'était une expérience assez mystique. Je ne sais pas si ce que j'ai fait a vraiment résolu le problème. Si quelqu'un sait ce qui s'est passé exactement, j'aimerais savoir :-)
Sur Ubuntu 18.04, j'ai utilisé le script systemd suivant pour résoudre le problème:
#!/bin/bash
case "$1" in
suspend)
# executed on suspend
;;
post)
modprobe -r psmouse
modprobe psmouse
;;
*)
;;
esac
J'ai nommé placé le fichier sous /lib/systemd/system-sleep
. Vous pouvez le nommer touchpad
ou quelque chose de similaire. N'oubliez pas d'ajouter des autorisations exécutables.