Ubuntu – 19.04 bluetooth adapter goes missing after sleep

19.04bluetoothbluezsuspend

summary of the problem:

bluetooth stops working upon resume from a "sleep", on 19.04 (using latest bluez version that is available right now)

hardware / software:

Description:    Ubuntu 19.04


% dpkg --status bluez | grep '^Version:'
Version: 5.50-0ubuntu2


% lsmod | grep -i blue
bluetooth             557056  23 btrtl,btintel,btbcm,bnep,btusb,rfcomm
ecdh_generic           28672  1 bluetooth


% lspci -k
06:00.0 Network controller: Intel Corporation Wireless 8265 / 8275 (rev 78)
    Subsystem: Intel Corporation Dual Band Wireless-AC 8265
    Kernel driver in use: iwlwifi
    Kernel modules: iwlwifi


% lsusb
Bus 001 Device 004: ID 8087:0a2b Intel Corp. 


% usb-devices
T:  Bus=01 Lev=01 Prnt=01 Port=08 Cnt=06 Dev#=  4 Spd=12  MxCh= 0
D:  Ver= 2.00 Cls=e0(wlcon) Sub=01 Prot=01 MxPS=64 #Cfgs=  1
P:  Vendor=8087 ProdID=0a2b Rev=00.10
C:  #Ifs= 2 Cfg#= 1 Atr=e0 MxPwr=100mA
I:  If#=0x0 Alt= 0 #EPs= 3 Cls=e0(wlcon) Sub=01 Prot=01 Driver=btusb
I:  If#=0x1 Alt= 0 #EPs= 2 Cls=e0(wlcon) Sub=01 Prot=01 Driver=btusb

observations:

dmesg shows a timeout

% dmesg | grep -i blue
[    8.854203] Bluetooth: Core ver 2.22
[    8.854213] Bluetooth: HCI device and connection manager initialized
[    8.854215] Bluetooth: HCI socket layer initialized
[    8.854216] Bluetooth: L2CAP socket layer initialized
[    8.854217] Bluetooth: SCO socket layer initialized
[    8.887056] Bluetooth: hci0: Firmware revision 0.1 build 43 week 1 2019
[    9.791115] Bluetooth: BNEP (Ethernet Emulation) ver 1.3
[    9.791117] Bluetooth: BNEP filters: protocol multicast
[    9.791120] Bluetooth: BNEP socket layer initialized
[   22.415492] Bluetooth: RFCOMM TTY layer initialized
[   22.415498] Bluetooth: RFCOMM socket layer initialized
[   22.415502] Bluetooth: RFCOMM ver 1.11
[   35.357910] hid-generic 0005:046D:B01D.0005: input,hidraw4: BLUETOOTH HID v0.16 Mouse [MX Ergo] on C0:B6:F9:70:BC:27
[350513.404651] Bluetooth: hci0: Firmware revision 0.1 build 43 week 1 2019
[389661.535751] hid-generic 0005:046D:B01D.0009: input,hidraw4: BLUETOOTH HID v0.16 Mouse [MX Ergo] on C0:B6:F9:70:BC:27
[404929.368630] Bluetooth: hci0: SCO packet for unknown connection handle 0
[404929.368636] Bluetooth: hci0: SCO packet for unknown connection handle 0
[404929.378628] Bluetooth: hci0: SCO packet for unknown connection handle 0
[404929.378630] Bluetooth: hci0: SCO packet for unknown connection handle 0
[404929.378631] Bluetooth: hci0: SCO packet for unknown connection handle 0
[404929.388647] Bluetooth: hci0: SCO packet for unknown connection handle 0
[404940.041477] Bluetooth: hci0: SCO packet for unknown connection handle 260
[404940.041484] Bluetooth: hci0: SCO packet for unknown connection handle 260
[404940.041487] Bluetooth: hci0: SCO packet for unknown connection handle 260
[431287.519594] Bluetooth: hci0: last event is not cmd complete (0x00)
[431287.519604] Bluetooth: hci0: last event is not cmd complete (0x00)
[431287.519640] Bluetooth: hci0: Reading Intel version information failed (-61)
[431289.423079] Bluetooth: hci0: command tx timeout

bluetoothctl cannot see the bluetooth adapter

% sudo bluetoothctl
Agent registered
[bluetooth]# power off
No default controller available

other posts mentioned rfkill list, mine is not blocked

% rfkill list
0: phy0: Wireless LAN
    Soft blocked: no
    Hard blocked: no
3: hci0: Bluetooth
    Soft blocked: no
    Hard blocked: no

hcitool does not show any devices. i think this is a issue

% hcitool dev
Devices:

hci0 is DOWN

% hciconfig                                                                                   
hci0:   Type: Primary  Bus: USB
    BD Address: 00:00:00:00:00:00  ACL MTU: 0:0  SCO MTU: 0:0
    DOWN 
    RX bytes:76 acl:0 sco:0 events:2 errors:0
    TX bytes:3 acl:0 sco:0 commands:1 errors:0

i reset and it now appears UP

% sudo hciconfig hci0 reset


% hciconfig                
hci0:   Type: Primary  Bus: USB
    BD Address: C0:B6:F9:70:BC:27  ACL MTU: 1021:4  SCO MTU: 96:6
    UP RUNNING 
    RX bytes:901 acl:0 sco:0 events:56 errors:0
    TX bytes:454 acl:0 sco:0 commands:45 errors:0


% hcitool dev                                                                                 
Devices:
    hci0    C0:B6:F9:70:BC:27

however bluetoothctl still reports no controller is available

[bluetooth]# devices
No default controller available

still seeing hci0 report issue reading the Intel info

[481037.880552] Bluetooth: hci0: Reading Intel version information failed (-61)
[481039.889836] Bluetooth: hci0: command tx timeout
[481570.804750] Bluetooth: hci0: Firmware revision 0.1 build 43 week 1 2019

troubleshooting steps taken:

  • restart bluetooh.service, but the problem persists.
  • a reboot (or multiple sometimes) will fix the bluetooth issue. though it returns after subsequent suspend (issue is not seen every time).

i found this open bug that sounds similar, but have not yet tested i am hitting the same problem (patch is available to try). adding it here in case others hit this same issue.
https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1790454

workaround:

  • issue does NOT occur if i "lock/unlock" the user session (instead of using sleep). uptime is 27days (and counting) using this method.

Best Answer

  • I saw a similar error with message Reading Intel version information failed (-110), before this error, I didn't do any system configure change.

    From hint from A bug report of ubuntu, I tried several operations about power plug, such as restart system with power plugged and restart system with power unplugged. And the problem is missing finally.

    I agree the bug is related to power plug.