# [solved]Can't get bluetooth adaptor to work (Atheros AR3011)

## ruta

Hello all,

I've had this computer for awhile, but I only recently had reason to try to install a bluetooth device. I know my motherboard has an adaptor (it's a P8P67 Pro), so I go and follow the gentoo wiki Bluetooth article. I enable the following, as advised:

```
[*] Networking support --->

      <*>   Bluetooth subsystem support --->

              <*>   RFCOMM protocol support

              [ ]     RFCOMM TTY support

              < >   BNEP protocol support

              [ ]     Multicast filter support

              [ ]     Protocol filter support

              <*>   HIDP protocol support

                    Bluetooth device drivers --->

                      <*> HCI USB driver

                      <*> HCI UART driver

      <*>   RF switch subsystem support --->
```

I rebuild the kernel, install it, reboot, start the bluetooth service, everything else the guide specifies. However, hciconfig -a comes up empty. Just to make sure I really do have a bluetooth device, I use lsusb and affirm a bluetooth device is indeed present:

```
Atheros Communications, Inc. AR3011 Bluetooth (no firmware)
```

Thinking the problem was the firmware, I looked around and found some people saying the firmware was in linux-firmware. So I get that, do a reboot, and my hciconfig finally returns something:

```
# hciconfig -a

hci0:   Type: BR/EDR  Bus: USB

   BD Address: 00:00:00:00:00:00  ACL MTU: 0:0  SCO MTU: 0:0

   DOWN 

   RX bytes:0 acl:0 sco:0 events:0 errors:0

   TX bytes:0 acl:0 sco:0 commands:0 errors:0

   Features: 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00

   Packet type: DM1 DH1 HV1 

   Link policy: 

   Link mode: SLAVE ACCEPT 
```

Doesn't look good. I thought I'd try starting it anyway. As you'd expect, it didn't work.

```
# hciconfig hci0 up

Can't init device hci0: Input/output error (5)
```

I went to look if lsusb still said I had no firmware, but now lsusb says nothing about a bluetooth device at all!

```
# lsusb 

Bus 002 Device 005: ID 0b05:179c ASUSTek Computer, Inc. 

Bus 002 Device 004: ID 046d:c52b Logitech, Inc. Unifying Receiver

Bus 002 Device 003: ID 046d:c52e Logitech, Inc. MK260 Wireless Combo Receiver

Bus 002 Device 002: ID 8087:0024 Intel Corp. Integrated Rate Matching Hub

Bus 002 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 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

Bus 001 Device 003: ID 056a:0302 Wacom Co., Ltd 

Bus 001 Device 002: ID 8087:0024 Intel Corp. Integrated Rate Matching Hub

Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
```

I tried a few other kernel configurations, too, including building everything as a module (and everything modprobes fine). I did try the ath3k module in the kernel as well, but it seems only btusb will make hciconfig return anything. Finally, I made a ubuntu livecd, because I was starting to think maybe the thing just decided to die at an inopportune moment, but it worked in ubuntu. It appeared that ubuntu was using btusb, just like my gentoo set-up. It also didn't list the thing in lsusb. So I know it should work, and work in linux. I just don't know why it's not working in gentoo.

My dmesg has some bluetooth stuff too:

```
dmesg | grep -i bluetooth

[    2.829764] Bluetooth: Core ver 2.20

[    2.829774] Bluetooth: HCI device and connection manager initialized

[    2.829777] Bluetooth: HCI socket layer initialized

[    2.829779] Bluetooth: L2CAP socket layer initialized

[    2.829783] Bluetooth: SCO socket layer initialized

[    4.480939] Bluetooth: hci0 urb ffff880603737b40 submission failed (28)
```

The last line appears whenever I try hciconfig hci0 up. I found one other person on the forums with a similar error, but his solution was to move his bluetooth device to another usb slot. Mine's on the motherboard. I can't move it.

I have no idea what to do anymore!

edit: The problem was fixed by turning off my computer, and removing all power to my motherboard. I also unplugged my USB devices before powering it back on. This reset the circuit, which was apparently the problem.Last edited by ruta on Tue Aug 25, 2015 9:16 pm; edited 1 time in total

----------

## ruta

Just as an update, I borrowed a USB bluetooth adaptor from a friend. It's a Kensington, appears in lsusb as Cambridge Silicon Radio, Ltd Bluetooth Dongle (HCI mode). However, hciconfig also gives it blank information and the same error message as my on-board bluetooth device. I tried three different versions of bluez (including 4.101-r9), and they all returned the same. 

```
 # hciconfig -a

hci1:   Type: BR/EDR  Bus: USB

   BD Address: 00:00:00:00:00:00  ACL MTU: 0:0  SCO MTU: 0:0

   DOWN 

   RX bytes:0 acl:0 sco:0 events:0 errors:0

   TX bytes:0 acl:0 sco:0 commands:0 errors:0

   Features: 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00

   Packet type: DM1 DH1 HV1 

   Link policy: 

   Link mode: SLAVE ACCEPT 

hci0:   Type: BR/EDR  Bus: USB

   BD Address: 00:00:00:00:00:00  ACL MTU: 0:0  SCO MTU: 0:0

   DOWN 

   RX bytes:0 acl:0 sco:0 events:0 errors:0

   TX bytes:0 acl:0 sco:0 commands:0 errors:0

   Features: 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00

   Packet type: DM1 DH1 HV1 

   Link policy: 

   Link mode: SLAVE ACCEPT
```

----------

## NForce

Hi, I have the same bluetooth device on my laptop (it's in motherboard too). It took some time to get it working, but I can confirm it works on Gentoo Linux.

I have these relevant kernel options:

```
--- Networking support

         --- Bluetooth subsystem support

         [*]   Bluetooth Classic (BR/EDR) features 

         <*>     RFCOMM protocol support  

         [*]       RFCOMM TTY support  

         <*>     BNEP protocol support  

         [*]       Multicast filter support  

         [*]       Protocol filter support   

         <*>     HIDP protocol support 

         [*]   Bluetooth Low Energy (LE) features  

         [*]   Export Bluetooth internals in debugfs
```

I also have btusb module compiled into kernel and ath3k as module. The most relevant is ath3k module.

Also if you use ath9k for networking, you must select ATH9K_BTCOEX_SUPPORT option as "y"

And the last thing. If you reboot (not shutdown) from windows to linux - almost everytime bluetooth doesn't work

----------

## pulsar_

have you tried using BlueZ's bluetoothctl to configure instead?  my guess is that the power on and agent on may give you a real MAC address in hciconfig

https://wiki.gentoo.org/wiki/Bluetooth#BlueZ_5

----------

## Roman_Gruber

just in case you may missed it

 *Quote:*   

> Atheros Communications, Inc. AR3011 Bluetooth (no firmware)

 

no firmware means that this device needs some sort of firmware.

and i do not know where it is, but e.g.

you may use this package and check if the firmware gets loaded or check out linux pages and see where they got their firmware

this packge may contain something needed for your hardware

```
eix linux-firmware

[I] sys-kernel/linux-firmware

     Available versions:  20140603 (~)20140809 20140902 (~)20141009 20150206 (~)20150320 **99999999 {savedconfig}

     Installed versions:  20150320(18:55:01 28.03.2015)(-savedconfig)

     Homepage:            https://git.kernel.org/?p=linux/kernel/git/firmware/linux-firmware.git

     Description:         Linux firmware files

```

i doubt your hardware will work without firmware.

@ other guy

 *Quote:*   

> And the last thing. If you reboot (not shutdown) from windows to linux - almost everytime bluetooth doesn't work

 

should not be the case when your hardware uses the right firmware and is proper initalized...

Though my expierence only dates back to windows xp and gentoo from the past! Long lived turion 64-mt32, rip in peace.

----------

## Roman_Gruber

So you marked the topic as solved.

Just out of curiousity, what did the trick when you can name it please?

----------

