Mettre à jour bluez vers >=5.28.2
18.04 est livré avec un package bluez buggé pour le moment; une version plus récente est disponible dans ce PPA : https://launchpad.net/~bluetooth/+archive/ubuntu/bluez :
sudo add-apt-repository ppa:bluetooth/bluez
sudo apt install bluez
contournement pour l'applet Bluetooth buggé (spécifique à Unity ?)
C'est probablement le problème mentionné par @solstice - l'applet du menu BT ne me permet pas d'activer le Bluetooth après la reprise du mode veille. Peu importe si l'interrupteur est en position off ou on, l'icône BT est désactivée, et la sortie rfkill ne change pas :
$ rfkill list
0: phy0: Wireless LAN
Soft blocked: no
Hard blocked: no
12: hci0: Bluetooth
Soft blocked: no
Hard blocked: no
Vous pouvez activer/désactiver BT manuellement en exécutant (remplacez votre propre ID) :
rfkill block 12
rfkill unblock 12
et l'applet BT devrait le détecter correctement maintenant. À ce stade, vous devriez être en mesure de vous connecter à vos appareils. Pour l'instant, j'ai contourné le problème en utilisant un script qui fait cela automatiquement après la reprise :
$ cat /lib/systemd/system-sleep/bt
#!/bin/sh
case $1 in
post)
sleep 5
rfkill block `rfkill list | grep hci | cut -d: -f1`
sleep 1
rfkill unblock `rfkill list | grep hci | cut -d: -f1`
;;
esac
Le numéro d'identification à côté de hci0 dans la sortie de rfkill list semble augmenter après chaque suspension/reprise. Désactiver/activer BT en utilisant le menu BT devrait modifier la sortie ('soft blocked: yes' pour BT désactivé via le menu), mais ce n'est pas le cas. Je pense que l'applet se souvient du mauvais ID de périphérique et essaie donc d'activer un périphérique qui n'existe plus.