You are not logged in.

#1 2017-05-18 18:08:02

friendofarch
Member
Registered: 2013-12-30
Posts: 59

[Solved] Can't activate Bluetooth (Broadcom BCM20702A1)

Hi,

I've tried for a couple of days to get my bluetooth to work, but haven't managed to do so...

It's a BCM20702A1 in a X230 Thinkpad.

Gnome just tells me, that it's switched off even if the switch is on ?!?

In one of the many tutorials I read was written to extract, the firmware from a .cab file and place it in /lib/firmware/brcm/:

ls /lib/firmware/brcm/
BCM-0a5c-21e6.hcd     # was not sure which naming was right so I added both files
BCM20702A1-0a5c-21e6.hcd  
...

dmesg tells me:

dmesg | grep -i bluetooth
[   20.029624] thinkpad_acpi: rfkill switch tpacpi_bluetooth_sw: radio is unblocked
[   21.045337] Bluetooth: Core ver 2.22
[   21.045355] Bluetooth: HCI device and connection manager initialized
[   21.045359] Bluetooth: HCI socket layer initialized
[   21.045361] Bluetooth: L2CAP socket layer initialized
[   21.045365] Bluetooth: SCO socket layer initialized
[   24.948877] Bluetooth: BNEP (Ethernet Emulation) ver 1.3
[   24.948879] Bluetooth: BNEP filters: protocol multicast
[   24.948883] Bluetooth: BNEP socket layer initialized
[11451.675470] Bluetooth: hci0: BCM: chip id 63
[11451.691527] Bluetooth: hci0: BCM20702A
[11451.692402] Bluetooth: hci0: BCM20702A1 (001.002.014) build 0000
[11452.637361] Bluetooth: hci0: BCM20702A1 (001.002.014) build 1757
[11452.653431] Bluetooth: hci0: Broadcom Bluetooth Device

rfkill

rfkill list
0: tpacpi_bluetooth_sw: Bluetooth
	Soft blocked: no
	Hard blocked: no
1: phy0: Wireless LAN
	Soft blocked: no
	Hard blocked: no
11: hci0: Bluetooth
	Soft blocked: no
	Hard blocked: no

and systemctl:

systemctl status bluetooth.service
● bluetooth.service - Bluetooth service
   Loaded: loaded (/usr/lib/systemd/system/bluetooth.service; enabled; vendor preset: disabled)
   Active: active (running) since Sun 2017-05-14 12:26:04 CEST; 4 days ago
     Docs: man:bluetoothd(8)
 Main PID: 617 (bluetoothd)
   Status: "Running"
    Tasks: 1 (limit: 4915)
   CGroup: /system.slice/bluetooth.service
           └─617 /usr/lib/bluetooth/bluetoothd

Mai 14 12:26:04 thinkpad systemd[1]: Starting Bluetooth service...
Mai 14 12:26:04 thinkpad bluetoothd[617]: Bluetooth daemon 5.45
Mai 14 12:26:04 thinkpad systemd[1]: Started Bluetooth service.
Mai 14 12:26:04 thinkpad bluetoothd[617]: Starting SDP server
Mai 14 12:26:04 thinkpad bluetoothd[617]: Bluetooth management interface 1.14 initialized

Just to make sure that it's not a hardware issue I tried it with a Live-System (Mint 18) and that works flawlessly.

Any ideas?

Last edited by friendofarch (2017-05-23 06:48:22)

Offline

#2 2017-05-20 09:52:00

friendofarch
Member
Registered: 2013-12-30
Posts: 59

Re: [Solved] Can't activate Bluetooth (Broadcom BCM20702A1)

No ideas?

Gathered some more information, maybe that helps...

cat /etc/systemd/system/bluetooth.target.wants/bluetooth.service

[Unit]
Description=Bluetooth service
Documentation=man:bluetoothd(8)
ConditionPathIsDirectory=/sys/class/bluetooth

[Service]
Type=dbus
BusName=org.bluez
ExecStart=/usr/lib/bluetooth/bluetoothd
NotifyAccess=main
#WatchdogSec=10
#Restart=on-failure
CapabilityBoundingSet=CAP_NET_ADMIN CAP_NET_BIND_SERVICE
LimitNPROC=1
ProtectHome=true
ProtectSystem=full

[Install]
WantedBy=bluetooth.target
Alias=dbus-org.bluez.service

lsusb

Bus 001 Device 005: ID 0a5c:21e6 Broadcom Corp. BCM20702 Bluetooth 4.0 [ThinkPad]
Couldn't open device, some information will be missing
Device Descriptor:
  bLength                18
  bDescriptorType         1
  bcdUSB               2.00
  bDeviceClass          255 Vendor Specific Class
  bDeviceSubClass         1 
  bDeviceProtocol         1 
  bMaxPacketSize0        64
  idVendor           0x0a5c Broadcom Corp.
  idProduct          0x21e6 BCM20702 Bluetooth 4.0 [ThinkPad]
  bcdDevice            1.12
  iManufacturer           1 
  iProduct                2 
  iSerial                 3 
  bNumConfigurations      1
  Configuration Descriptor:
    bLength                 9
    bDescriptorType         2
    wTotalLength          218
    bNumInterfaces          4
    bConfigurationValue     1
    iConfiguration          0 
    bmAttributes         0xe0
      Self Powered
      Remote Wakeup
    MaxPower                0mA
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        0
      bAlternateSetting       0
      bNumEndpoints           3
      bInterfaceClass       255 Vendor Specific Class
      bInterfaceSubClass      1 
      bInterfaceProtocol      1 
      iInterface              0 
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x81  EP 1 IN
        bmAttributes            3
          Transfer Type            Interrupt
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0010  1x 16 bytes
        bInterval               1
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x82  EP 2 IN
        bmAttributes            2
          Transfer Type            Bulk
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0040  1x 64 bytes
        bInterval               1
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x02  EP 2 OUT
        bmAttributes            2
          Transfer Type            Bulk
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0040  1x 64 bytes
        bInterval               1
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        1
      bAlternateSetting       0
      bNumEndpoints           2
      bInterfaceClass       255 Vendor Specific Class
      bInterfaceSubClass      1 
      bInterfaceProtocol      1 
      iInterface              0 
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x83  EP 3 IN
        bmAttributes            1
          Transfer Type            Isochronous
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0000  1x 0 bytes
        bInterval               1
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x03  EP 3 OUT
        bmAttributes            1
          Transfer Type            Isochronous
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0000  1x 0 bytes
        bInterval               1
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        1
      bAlternateSetting       1
      bNumEndpoints           2
      bInterfaceClass       255 Vendor Specific Class
      bInterfaceSubClass      1 
      bInterfaceProtocol      1 
      iInterface              0 
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x83  EP 3 IN
        bmAttributes            1
          Transfer Type            Isochronous
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0009  1x 9 bytes
        bInterval               1
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x03  EP 3 OUT
        bmAttributes            1
          Transfer Type            Isochronous
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0009  1x 9 bytes
        bInterval               1
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        1
      bAlternateSetting       2
      bNumEndpoints           2
      bInterfaceClass       255 Vendor Specific Class
      bInterfaceSubClass      1 
      bInterfaceProtocol      1 
      iInterface              0 
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x83  EP 3 IN
        bmAttributes            1
          Transfer Type            Isochronous
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0011  1x 17 bytes
        bInterval               1
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x03  EP 3 OUT
        bmAttributes            1
          Transfer Type            Isochronous
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0011  1x 17 bytes
        bInterval               1
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        1
      bAlternateSetting       3
      bNumEndpoints           2
      bInterfaceClass       255 Vendor Specific Class
      bInterfaceSubClass      1 
      bInterfaceProtocol      1 
      iInterface              0 
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x83  EP 3 IN
        bmAttributes            1
          Transfer Type            Isochronous
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0019  1x 25 bytes
        bInterval               1
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x03  EP 3 OUT
        bmAttributes            1
          Transfer Type            Isochronous
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0019  1x 25 bytes
        bInterval               1
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        1
      bAlternateSetting       4
      bNumEndpoints           2
      bInterfaceClass       255 Vendor Specific Class
      bInterfaceSubClass      1 
      bInterfaceProtocol      1 
      iInterface              0 
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x83  EP 3 IN
        bmAttributes            1
          Transfer Type            Isochronous
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0021  1x 33 bytes
        bInterval               1
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x03  EP 3 OUT
        bmAttributes            1
          Transfer Type            Isochronous
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0021  1x 33 bytes
        bInterval               1
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        1
      bAlternateSetting       5
      bNumEndpoints           2
      bInterfaceClass       255 Vendor Specific Class
      bInterfaceSubClass      1 
      bInterfaceProtocol      1 
      iInterface              0 
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x83  EP 3 IN
        bmAttributes            1
          Transfer Type            Isochronous
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0031  1x 49 bytes
        bInterval               1
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x03  EP 3 OUT
        bmAttributes            1
          Transfer Type            Isochronous
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0031  1x 49 bytes
        bInterval               1
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        2
      bAlternateSetting       0
      bNumEndpoints           2
      bInterfaceClass       255 Vendor Specific Class
      bInterfaceSubClass    255 Vendor Specific Subclass
      bInterfaceProtocol    255 Vendor Specific Protocol
      iInterface              0 
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x84  EP 4 IN
        bmAttributes            2
          Transfer Type            Bulk
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0020  1x 32 bytes
        bInterval               1
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x04  EP 4 OUT
        bmAttributes            2
          Transfer Type            Bulk
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0020  1x 32 bytes
        bInterval               1
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        3
      bAlternateSetting       0
      bNumEndpoints           0
      bInterfaceClass       254 Application Specific Interface
      bInterfaceSubClass      1 Device Firmware Update
      bInterfaceProtocol      1 
      iInterface              0 
      Device Firmware Upgrade Interface Descriptor:
        bLength                             9
        bDescriptorType                    33
        bmAttributes                        5
          Will Not Detach
          Manifestation Tolerant
          Upload Unsupported
          Download Supported
        wDetachTimeout                   5000 milliseconds
        wTransferSize                      64 bytes
        bcdDFUVersion                   1.10

bluetoothctl

Agent registered
[bluetooth]# power on
No default controller available
[bluetooth]# scan on
No default controller available
[bluetooth]# devices
No default controller available
[bluetooth]# list
[bluetooth]# 

Offline

#3 2017-05-22 04:15:40

uoou
Member
Registered: 2017-05-22
Posts: 4

Re: [Solved] Can't activate Bluetooth (Broadcom BCM20702A1)

I have the same symptoms on an XPS 15 (9550) with Broadcom BCM20703A1 after updating yesterday. I'd not updated for about week and bluetooth was working fine before the update.

After the update I get the exact same as you - device shows up in lsusb and rfkill,  lsmod shows the btusb module loaded and the bluetooth service is up and running without errors but bluetoothctl (and other bluetooth tools) report no devices.

Bluetooth is working fine on my desktop PC at the same level of updates with an "ASUSTek Computer, Inc. Qualcomm Bluetooth 4.1". So presumably it's something specific to these Broadcom chips.

I'd previously added in the firmware you mentioned (downloaded from the link in this post) so I tried removing that but that made no difference.

No idea what to try as bluetooth is a bit of a mystery to me.

Offline

#4 2017-05-22 06:43:33

friendofarch
Member
Registered: 2013-12-30
Posts: 59

Re: [Solved] Can't activate Bluetooth (Broadcom BCM20702A1)

uoou wrote:

I have the same symptoms on an XPS 15 (9550) with Broadcom BCM20703A1 after updating yesterday. I'd not updated for about week and bluetooth was working fine before the update.

Hi, thanks for the reply.

Can you reconstruct which bluetooth packages were updated? In this case maybe a (temporary) downgrade would be a solution?

What's a bit strange, I tried to setup bluetooth quickly ~a month ago and it did not work either, and the driver was installed 3 weeks ago.

Any more ideas?

Offline

#5 2017-05-22 07:30:50

uoou
Member
Registered: 2017-05-22
Posts: 4

Re: [Solved] Can't activate Bluetooth (Broadcom BCM20702A1)

Ok well that was easy - I downgraded bluez to the previous version I had installed (5.44) and now bluetooth works again. I was able to downgrade bluez without touching anything else so that made things simple.

My memory may have been off in terms of how long it's been since I did a pacman -Syu, it may have been more than a week, but I'm pretty sure it wasn't as long as a month which makes it weird that it's not been working for you for longer.

So it may be worth your trying an earlier version of the bluez package and see if that helps.

The firmware issue won't matter in terms of just seeing the device in bluetoothctl, as soon as this particular issue is solved the "[NEW] controller blah blah blah" line should appear when you run bluetoothctl (getting it to actually talk to things properly is where the firmware comes in).

But yeah, it seems reasonably clear that *my* problem, at least, is in the bluez package. Whether it's the same problem you're having remains to be seen.

Keep me posted and we'll see if we can get anywhere with this.

Last edited by uoou (2017-05-22 07:31:08)

Offline

#6 2017-05-30 15:11:47

friendofarch
Member
Registered: 2013-12-30
Posts: 59

Re: [Solved] Can't activate Bluetooth (Broadcom BCM20702A1)

Strange, I thought I made a post that I could solve it as well by downgrading the bluez package....

Just created a bug report:

https://bugs.archlinux.org/task/54217

Last edited by friendofarch (2017-05-30 15:26:01)

Offline

#7 2018-08-22 21:21:40

lincoln_lee
Member
Registered: 2018-08-22
Posts: 1

Re: [Solved] Can't activate Bluetooth (Broadcom BCM20702A1)

uoou wrote:

Ok well that was easy - I downgraded bluez to the previous version I had installed (5.44) and now bluetooth works again. I was able to downgrade bluez without touching anything else so that made things simple.

Hi, I have your same problem on the same PC. I tried to roll back from 5.50 to 5.49, 5.47, and 5.44, but without any luck. I do not see the bluetooth in the rfkill list though. Can you tell me which steps you followed after downgrading?

Thanks a lot

Offline

#8 2018-08-22 23:32:41

circleface
Member
Registered: 2012-05-26
Posts: 639

Re: [Solved] Can't activate Bluetooth (Broadcom BCM20702A1)

lincoln_lee, if you are experiencing the same problem, please open a new thread instead of bumping an old one.  You can link back to this thread if you think it is relevant.  It is better to create your own thread because then you own the thread and can mark it solved once you fix the issue.

Offline

#9 2018-08-22 23:34:22

jasonwryan
Anarchist
From: .nz
Registered: 2009-05-09
Posts: 30,424
Website

Re: [Solved] Can't activate Bluetooth (Broadcom BCM20702A1)


Arch + dwm   •   Mercurial repos  •   Surfraw

Registered Linux User #482438

Offline

Board footer

Powered by FluxBB