67

How can I tell if my laptop has a Bluetooth adapter?

landroni
  • 6,011
James
  • 3,283

10 Answers10

61

Your kernel would have picked it up and loaded a module for it when you started Ubuntu. From the command line, gnome-terminal type this command:

dmesg | grep -i blue

If you get output simliar to the below then your laptop has bluetooth capability.

[    2.933062] usb 1-1.4: Product: Broadcom Bluetooth Device
kingmilo
  • 10,784
30

Using lsusb:

sudo lsusb |grep Bluetooth

Should give an output similar to:

Device 005: ID 0a12:0001 Cambridge Silicon Radio, Ltd Bluetooth Dongle (HCI mode)

If there is no bluetooth device, you'll get no output for this command.

Courtesy: https://help.ubuntu.com/community/BluetoothSetup#Manual_Discovery

saji89
  • 12,187
25

on my Asus laptop i have a Bluetooth icon on the top right and

dmesg | grep Blue

Gets:

[    3.757769] Bluetooth: Core ver 2.16
[    3.757798] Bluetooth: HCI device and connection manager initialized
[    3.757802] Bluetooth: HCI socket layer initialized
[    3.757805] Bluetooth: L2CAP socket layer initialized
[    3.757814] Bluetooth: SCO socket layer initialized
[    3.767297] Bluetooth: Generic Bluetooth USB driver ver 0.6
[    4.332846] Bluetooth: RFCOMM TTY layer initialized
[    4.332853] Bluetooth: RFCOMM socket layer initialized
[    4.332856] Bluetooth: RFCOMM ver 1.11
[    4.340772] Bluetooth: BNEP (Ethernet Emulation) ver 1.3
[    4.340776] Bluetooth: BNEP filters: protocol multicast

but: sudo lsusb |grep Bluetooth Doesn't return anything.

also check if you have a Hardware network (airplane mode) switch. This can disable bluetooth and make it not visible to Ubuntu

TiloBunt
  • 2,315
16

All of the proposed answers failed to produce a correct result in my case. To detect whether my laptop indeed has a Bluetooth adapter I had to follow these instructions:

sudo apt-get install bluez-utils

Then:

sudo /etc/init.d/bluetooth restart

The above to make sure that you have installed all that is needed, and that all was properly initialized. Now:

geek@liv-inspiron:~$ hcitool dev
Devices:
    hci0    00:11:95:00:1A:CF

Note that your Bluetooth device will have a different ID. I also had to make sure that in Blueman Bluetooth was Turned On.

Before or after both lsusb |grep -i bluetooth and dmesg | grep -i blue do NOT output anything of interest (i.e. empty). Yet, the Bluetooth adapter is physically present and I can send files to another device...

landroni
  • 6,011
3

In addition to commands posted, each of which might fail reporting the Bluetooth adapter on occasion, you could try

$ hciconfig -a
2

Why not using lshw (list hardware) and catch for the word blue in case insensitive mode -i

sudo lshw | grep -i blue
2

You laptop may likey have a bluetooth mac address printed on a sticker near the battery on the underneath of your laptop.

Jbay
  • 29
  • 1
2

There is no way to find it out precisely. Some bluetooth modules are not supported by linux kernel and may not be detected.

Generally, you would look for bluetooth modules in lsusb and lspci outputs. But even if a module is supported, there may be output, which does not contain "bluetooth".

For instance, I have a working Atheros AR3012 bluetooth module.

lsusb shows it as 13d3:3408 IMC Networks.

It was not supported initially, I made a kernel patch to get it work. Now this patch is applied to all Ubuntu supported kernels.

If you are sure that you have bluetooth, and it does not work in Ubuntu, report this to launchpad by running in terminal

ubuntu-bug linux

And in addition to information collected by apport add output of sudo cat /sys/kernel/debug/usb/devices terminal command.

Pilot6
  • 92,041
0

If you are not seeing output in dmesg, etc. You may need to install the kernel module

modprobe btusb

Then you can check dmesg, etc.

[Thu Jul 14 21:56:21 2022] Bluetooth: Core ver 2.22
[Thu Jul 14 21:56:21 2022] Bluetooth: HCI device and connection manager initialized
[Thu Jul 14 21:56:21 2022] Bluetooth: HCI socket layer initialized
[Thu Jul 14 21:56:21 2022] Bluetooth: L2CAP socket layer initialized
[Thu Jul 14 21:56:21 2022] Bluetooth: SCO socket layer initialized
[Thu Jul 14 21:57:27 2022] Bluetooth: BNEP (Ethernet Emulation) ver 1.3
[Thu Jul 14 21:57:27 2022] Bluetooth: BNEP filters: protocol multicast
[Thu Jul 14 21:57:27 2022] Bluetooth: BNEP socket layer initialized

(if you wish to ensure that kernel module loads at boot time, add it to /etc/modules.

echo "btusb" >> /etc/modules

Jurgen
  • 1
0

There is an easier solution.

  1. Press the Super (Windows) key.
  2. Search "Bluetooth".
  3. This should tell you if you have a Bluetooth adapter. I don't so mine said "No Bluetooth adapters found". I'm not sure what it would say if you have one but it should be obvious.
Jens Erat
  • 5,131
  • 7
  • 33
  • 37