bluetoothctl can't detect device but hcitool can?

11,658

Solution 1

Upgrade your Linux kernel to 5.1.6 or above.

The issue fixed in this release has to do with buggy Bluetooth controller firmware, that would send a completion event twice, making the kernel turn the scan into a passive scan, therefore not creating device found events.

Kernel -> controller: LE Set Random Address
Controller -> kernel: Command "LE Set Random Address" Complete
Kernel -> controller: LE Set Scan Parameters (active scan)
Controller -> kernel: Command "LE Set Random Address" Complete

The kernel would previously have assumed it could not set the scan to and active scan, so it resumes as a passive scan instead.

Relevant commit is: https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?id=a3d50fb7ce931f08a2c6194fdc4c9a56c9ed4153

You can verify you have this issue by running btmon.

Solution 2

Rebooting a couple of times worked, one of those times where you should be asking yourself, Did you try turning it off and on again?

Share:
11,658

Related videos on Youtube

HackToHell
Author by

HackToHell

I work with Data ____━━____┓━╭━━━━━╮ ____━━____┗┓|::::::^━━━^ ____━━____━┗|:::::|。◕‿‿­­­­◕。| ____━━____ ━╰O—O-O—O ╯

Updated on September 18, 2022

Comments

  • HackToHell
    HackToHell over 1 year

    I have been trying to get my laptop pair with my wireless headphones, I enabled the drivers for my BCM chip as per the instructions here, https://askubuntu.com/a/632348/20245.

    Now if do

    ~ $ hciconfig hci0: Type: BR/EDR Bus: USB
    BD Address: 00:71:CC:9D:3F:8A ACL MTU: 1021:8 SCO MTU: 64:1
    UP RUNNING
    RX bytes:3677 acl:0 sco:0 events:203 errors:0
    TX bytes:29291 acl:0 sco:0 commands:189 errors:0

    I can see my device, I can scan with hcitool, however blueman-manager wasn't working, digging deeper I found that my device isn't detected in bluetoothctl.

     ~  $  bluetoothctl 
    [bluetooth]# scan on
    No default controller available
    [bluetooth]# 
    

    How do I make bluetoothhctl see what hcitool detects and interfaces with?

    lsusb output

    Bus 001 Device 002: ID 8087:8000 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 105b:e065 Foxconn International, Inc. BCM43142A0 Bluetooth module
    Bus 002 Device 003: ID 5986:055e Acer, Inc 
    Bus 002 Device 002: ID 0bda:0129 Realtek Semiconductor Corp. RTS5129 Card Reader Controller
    Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
    

    rfkill shows something interesting though, it shows 2 wifi devices.

     ~  $  rfkill list
    0: ideapad_wlan: Wireless LAN
            Soft blocked: no
            Hard blocked: no
    1: ideapad_bluetooth: Bluetooth
            Soft blocked: no
            Hard blocked: no
    2: phy0: Wireless LAN
            Soft blocked: no
            Hard blocked: no
    3: brcmwl-0: Wireless LAN
            Soft blocked: no
            Hard blocked: no
    5: hci0: Bluetooth
            Soft blocked: no
            Hard blocked: no
    

    dmesg gives me

    [  571.720739] Bluetooth: hci0: BCM: chip id 70
    [  571.736769] Bluetooth: hci0: BCM43142A
    [  571.736778] Bluetooth: hci0: BCM (001.001.011) build 0000
    [  572.226888] Bluetooth: hci0: BCM (001.001.011) build 0215
    [  572.242883] Bluetooth: hci0: Broadcom Bluetooth Device (43142)
    
  • MacMartin
    MacMartin over 7 years
    having that same problem with raspbian! hcitool shows the device, bluetoothctl wont. rebooting does not help. Did you un-/install something or made any configuration changes between the reboot?
  • HackToHell
    HackToHell over 7 years
    @eli I also added and removed the kernel module. Might help you too.
  • MacMartin
    MacMartin over 7 years
    thanks for your reply. But, sorry, which one do you mean? some file in here? -> /lib/modules/uname -r/kernel/drivers/bluetooth
  • HackToHell
    HackToHell over 7 years
    it's btbcm for me, you can check lsmod. Can we continue in the Ask Ubuntu Chat ? chat.stackexchange.com/rooms/201/ask-ubuntu-general-room Will be easier to answer questions there
  • HackToHell
    HackToHell over 7 years
    Also could you try updating bluez (build from git perhaps).
  • jojman
    jojman almost 6 years
    I have this same problem. It too goes away after a couple of reboots. I'm using Debian Sid. I think it happens only after suspending my system, but I may be wrong.