обновить bluez до> = 5.28.2
18.04 поставляется с багги пакетом bluez; более новая версия доступна из этого PPA: https://launchpad.net/~bluetooth/+archive/ubuntu/bluez :
sudo add-apt-repository ppa:bluetooth/bluez
sudo apt install bluez
Обходной путь для глючного апплета Bluetooth (для Unity?)
Вероятно, это упомянутая проблема @solstice - апплет меню BT не позволяет мне включить Bluetooth после выхода из спящего режима. Независимо от того, выключен тумблер или выключен, значок BT отключен, и вывод rfkill не изменяется:
$ rfkill list
0: phy0: Wireless LAN
Soft blocked: no
Hard blocked: no
12: hci0: Bluetooth
Soft blocked: no
Hard blocked: no
Вы можете переключать BT вручную, запустив (замените свой собственный идентификатор):
rfkill block 12
rfkill unblock 12
и BT-апплет должен правильно его поднять. На этом этапе вы сможете подключиться к своим устройствам. Сейчас я взломал его вместе, используя скрипт, который делает это автоматически после возобновления:
$ 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
Идентификационный номер рядом с hci0 в выводе списка rfkill, похоже, увеличивается после каждого приостановления / возобновления. Отключение / включение BT с помощью меню BT должно изменить выход («программно заблокировано: да» для BT, отключенного через меню), но это не так. Я предполагаю, что апплет запоминает неправильный идентификатор устройства и, таким образом, пытается включить устройство, которое больше не существует.
bluetooth.service
или удалениеbtusb
модуля и его повторная установка не работали. Пришлось перезагрузить .