You are not logged in.

#1 2019-12-26 06:30:13

ElderBladex
Member
Registered: 2019-12-20
Posts: 11

[SOLVED]Bluetooth Suddenly Stopped Working - No Adapters Found

I'm truly at a loss here. I was listening to music on my wireless headphones, browsing the arch wiki, and suddenly the music stopped. My headphones disconnected and wouldn't reconnect. I opened bluetoothctl command line and removed my headphone device but when I tried to pair again, the bluetooth couldn't find any devices. Rebooted my PC, and upon reboot the bluetooth declared "No Adapters Found".

5.4.6-arch3-1
Intel i7-8700K
Asus Rog Strix Z370-E Gaming ATX LGA1151
Corsair Vengeance RGB Pro 16 GB DDR4-3200
Samsung 970 Evo 1 TB M.2-2280 NVME SSD
Asus GeForce RTX 2080ti

What I've tried:
1. Unmounting and mounting btusb
2. Uninstalled bluez, bluez-plugins bluez-utils-compat pulseaudio-bluetooth bluedevil powerdevil
3. Reinstalled bluez, bluez-plugins bluez-utils pulseaudio-bluetooth bluedevil
4. Followed the arch wiki troubleshoot here: https://wiki.archlinux.org/index.php/Bl … leshooting, which doesn't really address no adapters found issue
5. Tried restarting Dbus

I couldn't even start the bluetooth service, but after re-mounting the module:

[matt@optimus-prime ~]$ systemctl start bluetooth.service
[matt@optimus-prime ~]$ systemctl status bluetooth.service
● bluetooth.service - Bluetooth service
     Loaded: loaded (/usr/lib/systemd/system/bluetooth.service; enabled; vendor preset: disabled)
     Active: active (running) since Wed 2019-12-25 21:58:44 MST; 4s ago
       Docs: man:bluetoothd(8)
   Main PID: 1537 (bluetoothd)
      Tasks: 1 (limit: 19105)
     Memory: 1.2M
     CGroup: /system.slice/bluetooth.service
             └─1537 /usr/lib/bluetooth/bluetoothd

Dec 25 21:58:44 optimus-prime systemd[1]: Starting Bluetooth service...
Dec 25 21:58:44 optimus-prime bluetoothd[1537]: Bluetooth daemon 5.52
Dec 25 21:58:44 optimus-prime systemd[1]: Started Bluetooth service.
Dec 25 21:58:44 optimus-prime bluetoothd[1537]: Starting SDP server
Dec 25 21:58:44 optimus-prime bluetoothd[1537]: Bluetooth management interface 1.14 initialized

Still no adapters found tho.

Upon reboot, I now get these usb errors:

[matt@optimus-prime ~]$ journalctl -fp err
-- Logs begin at Mon 2019-12-16 21:02:22 MST. --
Dec 25 21:53:46 optimus-prime kernel: usb 1-7: device descriptor read/64, error -71
Dec 25 21:53:46 optimus-prime kernel: usb 1-7: device descriptor read/64, error -71
Dec 25 21:53:46 optimus-prime kernel: usb 1-7: device descriptor read/64, error -71
Dec 25 21:53:46 optimus-prime kernel: usb 1-7: device descriptor read/64, error -71
Dec 25 21:53:47 optimus-prime systemd-udevd[378]: could not read from '/sys/module/pcc_cpufreq/initstate': No such device
Dec 25 21:53:48 optimus-prime kernel: usb 1-7: device not accepting address 5, error -71
Dec 25 21:53:48 optimus-prime kernel: usb 1-7: device not accepting address 6, error -71
Dec 25 21:53:48 optimus-prime kernel: usb usb1-port7: unable to enumerate USB device
Dec 25 21:53:49 optimus-prime kernel: usbhid 1-13:1.2: couldn't find an input interrupt endpoint
Dec 25 21:53:49 optimus-prime kernel: gspca_vc032x: reg_r err -32

Wiki debug line:

[matt@optimus-prime ~]$ /usr/lib/bluetooth/bluetoothd -n -d
bluetoothd[1512]: Bluetooth daemon 5.52
bluetoothd[1512]: src/main.c:parse_config() parsing /etc/bluetooth/main.conf
bluetoothd[1512]: src/main.c:parse_config() Key file does not have key “DiscoverableTimeout” in group “General”
bluetoothd[1512]: src/main.c:parse_config() Key file does not have key “AlwaysPairable” in group “General”
bluetoothd[1512]: src/main.c:parse_config() Key file does not have key “PairableTimeout” in group “General”
bluetoothd[1512]: src/main.c:parse_config() Key file does not have key “Privacy” in group “General”
bluetoothd[1512]: src/main.c:parse_config() Key file does not have key “Name” in group “General”
bluetoothd[1512]: src/main.c:parse_config() Key file does not have key “Class” in group “General”
bluetoothd[1512]: src/main.c:parse_config() Key file does not have key “DeviceID” in group “General”
bluetoothd[1512]: src/main.c:parse_config() Key file does not have key “ReverseServiceDiscovery” in group “General”
bluetoothd[1512]: src/main.c:parse_config() Key file does not have key “Cache” in group “GATT”
bluetoothd[1512]: src/main.c:parse_config() Key file does not have key “KeySize” in group “GATT”
bluetoothd[1512]: src/main.c:parse_config() Key file does not have key “ExchangeMTU” in group “GATT”
D-Bus setup failed: Connection ":1.139" is not allowed to own the service "org.bluez" due to security policies in the configuration file
bluetoothd[1512]: Unable to get on D-Bus

Somehow my config file got reset. When I uncomment all the parameters in the file I get this:

[matt@optimus-prime ~]$ /usr/lib/bluetooth/bluetoothd -n -d
bluetoothd[1874]: Bluetooth daemon 5.52
bluetoothd[1874]: Unknown key AlwaysPairable for group General in /etc/bluetooth/main.conf
bluetoothd[1874]: Unknown key PairableTimeout for group General in /etc/bluetooth/main.conf
bluetoothd[1874]: src/main.c:parse_config() parsing /etc/bluetooth/main.conf
bluetoothd[1874]: src/main.c:parse_config() discovto=0
bluetoothd[1874]: src/main.c:parse_config() pairable=false
bluetoothd[1874]: src/main.c:parse_config() pairto=0
bluetoothd[1874]: src/main.c:parse_config() privacy=off
bluetoothd[1874]: src/main.c:parse_config() name=BlueZ
bluetoothd[1874]: src/main.c:parse_config() class=0x000100
bluetoothd[1874]: src/main.c:parse_config() deviceid=bluetooth:1234:5678:abcd
bluetoothd[1874]: src/main.c:parse_config() ControllerMode=dual
bluetoothd[1874]: src/main.c:parse_config() MultiProfile=off
bluetoothd[1874]: src/main.c:parse_config() KeySize=0
bluetoothd[1874]: src/main.c:parse_config() ExchangeMTU=517
D-Bus setup failed: Connection ":1.242" is not allowed to own the service "org.bluez" due to security policies in the configuration file
bluetoothd[1874]: Unable to get on D-Bus

lspci:

[matt@optimus-prime ~]$ lspci
00:00.0 Host bridge: Intel Corporation 8th Gen Core Processor Host Bridge/DRAM Registers (rev 07)
00:01.0 PCI bridge: Intel Corporation Xeon E3-1200 v5/E3-1500 v5/6th Gen Core Processor PCIe Controller (x16) (rev 07)
00:14.0 USB controller: Intel Corporation 200 Series/Z370 Chipset Family USB 3.0 xHCI Controller
00:16.0 Communication controller: Intel Corporation 200 Series PCH CSME HECI #1
00:17.0 SATA controller: Intel Corporation 200 Series PCH SATA controller [AHCI mode]
00:1b.0 PCI bridge: Intel Corporation 200 Series PCH PCI Express Root Port #17 (rev f0)
00:1c.0 PCI bridge: Intel Corporation 200 Series PCH PCI Express Root Port #1 (rev f0)
00:1c.2 PCI bridge: Intel Corporation 200 Series PCH PCI Express Root Port #3 (rev f0)
00:1c.4 PCI bridge: Intel Corporation 200 Series PCH PCI Express Root Port #5 (rev f0)
00:1c.6 PCI bridge: Intel Corporation 200 Series PCH PCI Express Root Port #7 (rev f0)
00:1d.0 PCI bridge: Intel Corporation 200 Series PCH PCI Express Root Port #9 (rev f0)
00:1f.0 ISA bridge: Intel Corporation Z370 Chipset LPC/eSPI Controller
00:1f.2 Memory controller: Intel Corporation 200 Series/Z370 Chipset Family Power Management Controller
00:1f.3 Audio device: Intel Corporation 200 Series PCH HD Audio
00:1f.4 SMBus: Intel Corporation 200 Series/Z370 Chipset Family SMBus Controller
00:1f.6 Ethernet controller: Intel Corporation Ethernet Connection (2) I219-V
01:00.0 VGA compatible controller: NVIDIA Corporation TU102 [GeForce RTX 2080 Ti Rev. A] (rev a1)
01:00.1 Audio device: NVIDIA Corporation TU102 High Definition Audio Controller (rev a1)
01:00.2 USB controller: NVIDIA Corporation TU102 USB 3.1 Controller (rev a1)
01:00.3 Serial bus controller [0c80]: NVIDIA Corporation TU102 UCSI Controller (rev a1)
04:00.0 Network controller: Realtek Semiconductor Co., Ltd. RTL8822BE 802.11a/b/g/n/ac WiFi adapter
05:00.0 USB controller: ASMedia Technology Inc. ASM2142 USB 3.1 Host Controller
06:00.0 USB controller: ASMedia Technology Inc. ASM2142 USB 3.1 Host Controller
07:00.0 Non-Volatile memory controller: Samsung Electronics Co Ltd NVMe SSD Controller SM981/PM981/PM983

lsusb:

[matt@optimus-prime ~]$ lsusb
Bus 008 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 007 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 006 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 005 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 001 Device 008: ID 1e71:170e NZXT NZXT USB Device
Bus 001 Device 007: ID 0b05:1872 ASUSTek Computer, Inc. AURA LED Controller
Bus 001 Device 002: ID 046d:0892 Logitech, Inc. OrbiCam
Bus 001 Device 010: ID 046d:c084 Logitech, Inc. G203 Gaming Mouse
Bus 001 Device 009: ID 24f0:202b Das Keyboard X50 RGB Mechanical Keyboard
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 004 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

[matt@optimus-prime ~]$ lsmod | grep blue
bluetooth             671744  11 btrtl,btintel,btbcm,bnep,btusb
ecdh_generic           16384  1 bluetooth
rfkill                 28672  8 asus_wmi,bluetooth,cfg80211
crc16                  16384  2 bluetooth,ext4

[matt@optimus-prime ~]$ dmesg | grep blue
[  143.885329] audit: type=1130 audit(1577337413.799:72): pid=1 uid=0 auid=4294967295 ses=4294967295 msg='unit=bluetooth comm="systemd" exe="/usr/lib/systemd/systemd" hostname=? addr=? terminal=? res=success'

Here's the config file at /etc/bluetooth/main.conf:

[General]

# Default adapter name
# Defaults to 'BlueZ X.YZ'
Name = BlueZ

# Default device class. Only the major and minor device class bits are
# considered. Defaults to '0x000000'.
Class = 0x000100

# How long to stay in discoverable mode before going back to non-discoverable
# The value is in seconds. Default is 180, i.e. 3 minutes.
# 0 = disable timer, i.e. stay discoverable forever
DiscoverableTimeout = 0

# Always allow pairing even if there are no agent registered
# Possible values: true, false
# Default: false
AlwaysPairable = false

# How long to stay in pairable mode before going back to non-discoverable
# The value is in seconds. Default is 0.
# 0 = disable timer, i.e. stay pairable forever
PairableTimeout = 0

# Use vendor id source (assigner), vendor, product and version information for
# DID profile support. The values are separated by ":" and assigner, VID, PID
# and version.
# Possible vendor id source values: bluetooth, usb (defaults to usb)
DeviceID = bluetooth:1234:5678:abcd

# Do reverse service discovery for previously unknown devices that connect to
# us. For BR/EDR this option is really only needed for qualification since the
# BITE tester doesn't like us doing reverse SDP for some test cases, for LE
# this disables the GATT client functionally so it can be used in system which
# can only operate as peripheral.
# Defaults to 'true'.
ReverseServiceDiscovery = true

# Enable name resolving after inquiry. Set it to 'false' if you don't need
# remote devices name and want shorter discovery cycle. Defaults to 'true'.
NameResolving = true

# Enable runtime persistency of debug link keys. Default is false which
# makes debug link keys valid only for the duration of the connection
# that they were created for.
DebugKeys = false

# Restricts all controllers to the specified transport. Default value
# is "dual", i.e. both BR/EDR and LE enabled (when supported by the HW).
# Possible values: "dual", "bredr", "le"
ControllerMode = dual

# Enables Multi Profile Specification support. This allows to specify if
# system supports only Multiple Profiles Single Device (MPSD) configuration
# or both Multiple Profiles Single Device (MPSD) and Multiple Profiles Multiple
# Devices (MPMD) configurations.
# Possible values: "off", "single", "multiple"
MultiProfile = off

# Permanently enables the Fast Connectable setting for adapters that
# support it. When enabled other devices can connect faster to us,
# however the tradeoff is increased power consumptions. This feature
# will fully work only on kernel version 4.1 and newer. Defaults to
# 'false'.
FastConnectable = false

# Default privacy setting.
# Enables use of private address.
# Possible values: "off", "device", "network"
# "network" option not supported currently
# Defaults to "off"
Privacy = off

[GATT]
# GATT attribute cache.
# Possible values:
# always: Always cache attributes even for devices not paired, this is
# recommended as it is best for interoperability, with more consistent
# reconnection times and enables proper tracking of notifications for all
# devices.
# yes: Only cache attributes of paired devices.
# no: Never cache attributes
# Default: always
Cache = always

# Minimum required Encryption Key Size for accessing secured characteristics.
# Possible values: 0 and 7-16. 0 means don't care.
# Defaults to 0
KeySize = 0

# Exchange MTU size.
# Possible values: 23-517
# Defaults to 517
ExchangeMTU = 517

[Policy]
#
# The ReconnectUUIDs defines the set of remote services that should try
# to be reconnected to in case of a link loss (link supervision
# timeout). The policy plugin should contain a sane set of values by
# default, but this list can be overridden here. By setting the list to
# empty the reconnection feature gets disabled.
ReconnectUUIDs=00001112-0000-1000-8000-00805f9b34fb,0000111f-0000-1000-8000-00805f9b34fb,0000110a-0000-1000-8000-00805f9b34fb

# ReconnectAttempts define the number of attempts to reconnect after a link
# lost. Setting the value to 0 disables reconnecting feature.
ReconnectAttempts=7

# ReconnectIntervals define the set of intervals in seconds to use in between
# attempts.
# If the number of attempts defined in ReconnectAttempts is bigger than the
# set of intervals the last interval is repeated until the last attempt.
ReconnectIntervals=1,2,4,8,16,32,64

# AutoEnable defines option to enable all controllers when they are found.
# This includes adapters present on start as well as adapters that are plugged
# in later on. Defaults to 'false'.
AutoEnable=false

Please help me.

Last edited by ElderBladex (2019-12-26 07:51:08)

Offline

#2 2019-12-26 07:50:50

ElderBladex
Member
Registered: 2019-12-20
Posts: 11

Re: [SOLVED]Bluetooth Suddenly Stopped Working - No Adapters Found

Don't know how, but after I booted into Windows 10 (I have a dual boot) to test my wifi card and successfully connected my headphones there (Bose qc35 II), the bluetooth adapter started working again in Linux after I rebooted into it. The KDE bluetooth manager showed that the adapter needed to be fixed. I clicked fix button, and devices started showing up.

I'm still unsure what happened here, so if anyone has insight, I'd be interested to know.

Offline

#3 2020-04-21 06:34:30

astrohome
Member
Registered: 2020-04-21
Posts: 1

Re: [SOLVED]Bluetooth Suddenly Stopped Working - No Adapters Found

I have the same issue with very similar hardware. I noticed that the only thing that helps is to shutdown the PC and turn off power for 10-15 seconds. Only after such a procedure I get bluetooth working again.

I'm guessing, for some reason, Linux drivers forces Bluetooth adapter into invalid state and the only way to completely reset it is to fully unplug the power. Probably booting into Windows resets the state.

Offline

#4 2020-06-21 04:39:05

ElderBladex
Member
Registered: 2019-12-20
Posts: 11

Re: [SOLVED]Bluetooth Suddenly Stopped Working - No Adapters Found

astrohome wrote:

I have the same issue with very similar hardware. I noticed that the only thing that helps is to shutdown the PC and turn off power for 10-15 seconds. Only after such a procedure I get bluetooth working again.

I'm guessing, for some reason, Linux drivers forces Bluetooth adapter into invalid state and the only way to completely reset it is to fully unplug the power. Probably booting into Windows resets the state.

I definitely had to do this once. Bluetooth wasn't working on Linux or Windows until I did complete shutdown and unplug of the PC. Recently I've been having issues with bluetooth again in Linux, where the bluetooth has the 'no adapters found' issue unless I reboot into Windows, then boot back into Linux. Even then, the bluetooth will stop working after some time goes by or the PC is rebooted or woken up from sleep.

I logged into Windows to test pairing a device there and discovered that bluetooth wasn't working at all in Windows. Apparently, I needed to take a Windows update to get it working again. Now appears to be working in Linux.

Offline

#5 2020-09-12 17:38:15

ElderBladex
Member
Registered: 2019-12-20
Posts: 11

Re: [SOLVED]Bluetooth Suddenly Stopped Working - No Adapters Found

astrohome wrote:

I have the same issue with very similar hardware. I noticed that the only thing that helps is to shutdown the PC and turn off power for 10-15 seconds. Only after such a procedure I get bluetooth working again.

I'm guessing, for some reason, Linux drivers forces Bluetooth adapter into invalid state and the only way to completely reset it is to fully unplug the power. Probably booting into Windows resets the state.

So the Bluetooth continued to disconnect after using for awhile in Linux, or it didn't work at all from a cold boot. Remedy was to login to Windows and then back into Arch. I think I've finally solved the issue. In Windows, I turned off "allow windows to turn off this device to save power" in device manager for my wifi card adapter. I've had no bluetooth issues ever since. I found this solution in a recent reddit thread where OP stated turning this setting off fixed their wifi issues.

Another thing to consider is making sure fast boot is turned off. I recently had to reinstall Windows on my system because it got stuck in a safe mode boot loop while I tried to troubleshoot the bluetooth. I forgot to turn this setting off after the install, so I can't verify if this was the cause prior to the reinstall. I did in fact turn fast boot off when I initially set up my dual boot, but it's possible fast boot was turned back on after a Windows update (this issue was plaguing me before the Windows reinstall, but only started after 3-4 months into my dual boot setup).

It's really crazy that a Windows OS setting could be causing issues in Linux, but then again it's not really surprising.

Last edited by ElderBladex (2020-09-12 17:45:46)

Offline

#6 2020-11-16 03:30:11

blitzkraft
Member
Registered: 2020-11-16
Posts: 1

Re: [SOLVED]Bluetooth Suddenly Stopped Working - No Adapters Found

The problem might not be related to windows at all. I have had the exact same problem on gentoo. The only difference is my laptop went to suspend by closing lid. and was woken up after about 10 mins in sleep. I have just gentoo, no other operating system on the computer.

Resolved by powering off the computer, waiting for a few minutes (I waited ten mins).

Prior to that, I just rebooted multiple times, which did not resolve the issue. only powering off fully, waiting for sometime, then starting the computer fixed my bluetooth issue. I have checked dmesg logs, and have similar outputs. Another thing to add, I do not use systemd, I am using openrc.

I hope this proves useful to finding the solution to this bug. I created the account even though I don't use arch just to add more information and eliminate some variables.

Update: This happened again. This time without suspend at all. My laptop was on the whole time. Dmesg from when that happened:

[ 4499.034947] pcieport 0000:00:1d.2: AER:    [12] Timeout               
[ 4835.694813] usb 1-1.2: USB disconnect, device number 7
[ 8992.306417] perf: interrupt took too long (2501 > 2500), lowering kernel.perf_event_max_sample_rate to 79800
[ 9040.023674] Bluetooth: hci0: command 0x0402 tx timeout
[ 9043.354074] usb 1-5: reset full-speed USB device number 3 using xhci_hcd
[ 9043.480464] usb 1-5: device descriptor read/64, error -71
[ 9043.710412] usb 1-5: device descriptor read/64, error -71

I am not sure what to make of this. Found this thread: https://bbs.archlinux.org/viewtopic.php?id=226312 - possibly a power save mode thing? or possibly irrelevant. I have been using my setup for months now. I can't think of anything that could have suddenly triggered this. I will try the steps in that thread tomorrow. see if that works.

The 9040 seconds, is suspiciously close to 15mins - my time out for screensaver. However, I was using the computer during that time. just a coincidence, I think. I will need to revisit that, when all else fails.

Last edited by blitzkraft (2020-11-16 08:01:01)

Offline

#7 2022-05-05 20:53:34

Sathors
Member
Registered: 2011-02-23
Posts: 56

Re: [SOLVED]Bluetooth Suddenly Stopped Working - No Adapters Found

I've had exactly the same problem today, I had to disconnect my laptop from power by removing the battery for a few minutes. My controller stopped working after a reboot, without any change I could identify.

Nor was it appearing on Windows either.

Offline

#8 2022-07-17 07:23:55

rasko
Member
Registered: 2020-02-15
Posts: 5

Re: [SOLVED]Bluetooth Suddenly Stopped Working - No Adapters Found

Having similar issues as well, one solution is to press power button long enough (mine is about 20s) to reset the bluetooth hardware. But would really like to know the root fix.

Offline

Board footer

Powered by FluxBB