GNU/Linux >> Linux Esercitazione >  >> Ubuntu

Il Bluetooth non funziona dopo la ripresa dalla modalità di sospensione, Ubuntu 18.04 Lts?

Gli auricolari Bluetooth funzionano bene fino al sonno. Dopo aver ripreso dal sonno, tuttavia, sembrano connettersi per un breve momento prima di disconnettersi. Su blueman, l'errore fornito è Risorsa temporaneamente non disponibile. Questo problema si è verificato solo dopo l'aggiornamento a 18.04 LTS.

Ecco l'output del terminale per lsusb:

Bus 001 Device 002: ID 8087:8001 Intel Corp. 
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 003 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 002 Device 004: ID 1bcf:0002 Sunplus Innovation Technology Inc. 
Bus 002 Device 003: ID 04f2:b477 Chicony Electronics Co., Ltd 
Bus 002 Device 002: ID 0a5c:21f1 Broadcom Corp. HP Portable Bumble Bee
Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

Migliore risposta

aggiorna bluez a>=5.28.2

18.04 viene fornito con un pacchetto bluez buggy per ora; la versione più recente è disponibile da questo PPA:https://launchpad.net/~bluetooth/+archive/ubuntu/bluez:

sudo add-apt-repository ppa:bluetooth/bluez
sudo apt install bluez

soluzione alternativa per l'applet Bluetooth difettosa (specifica per Unity?)

Questo è probabilmente il problema menzionato da @solstice:l'applet del menu BT non mi consente di abilitare il Bluetooth dopo la ripresa dal sonno. Non importa se l'interruttore è spento o acceso, l'icona BT è disabilitata e l'uscita rfkill non cambia:

$ rfkill list
0: phy0: Wireless LAN
    Soft blocked: no
    Hard blocked: no
12: hci0: Bluetooth
    Soft blocked: no
    Hard blocked: no

Puoi attivare BT manualmente eseguendo (sostituisci il tuo ID):

rfkill block 12
rfkill unblock 12

e l'applet BT dovrebbe raccoglierlo correttamente ora. A questo punto dovresti essere in grado di connetterti ai tuoi dispositivi. Per ora l'ho hackerato insieme usando uno script che lo fa automaticamente dopo il ripristino:

$ 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

Il numero ID accanto a hci0 nell'output dell'elenco rfkill sembra aumentare dopo ogni sospensione/ripresa. La disabilitazione/abilitazione di BT utilizzando il menu BT dovrebbe modificare l'uscita ("soft bloccato:sì" per BT disabilitato tramite menu), ma non è così. La mia ipotesi è che l'applet ricordi l'ID dispositivo errato e stia quindi tentando di abilitare un dispositivo che non esiste più.

Correlati:Fonti del software di backup?
Ubuntu
  1. Come compilare Brotli dal sorgente su Ubuntu 18.04 LTS

  2. Come eseguire l'aggiornamento da Ubuntu 20.04 a Ubuntu 22.04 LTS (Guida passo passo)

  3. Come eseguire l'aggiornamento a Ubuntu 22.04 LTS da Ubuntu 20.04 LTS e 21.10

  4. Cose da fare dopo aver installato Ubuntu 16.04 LTS

  5. Come aggiornare da Ubuntu 20.04/21.10 a 22.04 LTS

Le 10 attività principali da eseguire dopo l'installazione di Ubuntu 16.04 LTS

Le 14 migliori cose da fare dopo aver installato Ubuntu 20.04 LTS

20 cose da fare dopo una nuova installazione di Ubuntu 18.04 LTS

Come disinstallare programmi da Ubuntu 20.04 LTS

Annullare l'iscrizione a Ubuntu One Folder non funziona?

Ubuntu 20.04 Lts Connessione Bluetooth non riuscita?