I'm using Linux 3.14.14-gentoo with
BT_ATH3K enabled. I've downloaded the latest linux-firmware from Portage (20131230), and bluez-5.21-r1.
My Bluetooth device is an AR3012 according to
Bus 003 Device 003: ID 0cf3:3004 Atheros Communications, Inc.
I'd give you my
lsusb -v, but it chokes there for some reason. Here is the card's entry:
Bus 003 Device 003: ID 0cf3:3004 Atheros Communications, Inc. lsusb: gconv.c:74: __gconv: Assertion `outbuf != ((void *)0) && *outbuf != ((void *)0)' failed.
lsusb exits after that. Anyone know what's going on there?
Anyway, my Bluetooth device wasn't being detected after setting up all of the above. Relevant information:
[vinny@gentoo ~]$ sudo rfkill list 0: phy0: Wireless LAN Soft blocked: no Hard blocked: no [vinny@gentoo ~]$ hcitool dev Devices:
On bootup, I could tell that the ath3k drivers weren't loading properly.
Here's some Bluetooth output early on in dmesg:
[ 0.228135] Bluetooth: Core ver 2.18 [ 0.228163] Bluetooth: HCI device and connection manager initialized [ 0.228166] Bluetooth: HCI socket layer initialized [ 0.228169] Bluetooth: L2CAP socket layer initialized [ 0.228175] Bluetooth: SCO socket layer initialized [ 3.018728] Bluetooth: RFCOMM TTY layer initialized [ 3.019511] Bluetooth: RFCOMM socket layer initialized [ 3.020285] Bluetooth: RFCOMM ver 1.11 [ 3.021051] Bluetooth: BNEP (Ethernet Emulation) ver 1.3 [ 3.021818] Bluetooth: BNEP filters: protocol multicast [ 3.022581] Bluetooth: BNEP socket layer initialized [ 3.023344] Bluetooth: HIDP (Human Interface Emulation) ver 1.2 [ 3.024111] Bluetooth: HIDP socket layer initialized
Bootup goes smoothly up until right after loading the touchpad, where it would hang:
[ 7.307114] input: FSPPS/2 Sentelic FingerSensingPad as /devices/platform/i8042/serio2/input/input13
After about a minute, the following error would display and the system would resume booting as normal.
[ 64.440637] Bluetooth: Patch file not found ar3k/AthrBT_0x11020000.dfu [ 64.443594] Bluetooth: Loading patch file failed [ 64.446465] ath3k: probe of 3-4:1.0 failed with error -2
And this is the problem that I am still having, except that last night when I was messing around with it it magically started working. I ran an
rfkill list and there it was, hci0!
hcitool also showed the device, so I was good to go, I went into
bluetoothctl and paired my mouse, added a udev rule to get everything running at boot, the works. I rebooted my computer a couple times and it worked like a charm, it didn't hang at boot, so I guess it got the firmware to load.
This morning I woke up and my laptop had unplugged and the battery had died, I booted back up, and sure enough, hang at the boot screen and the same error as before (or at least a similar one, I don't remember if I was missing the same firmware file originally or if something else was causing the module not to load). hci0 is suddenly nowhere to be found again.
I don't know if it was the fact that the computer completely shut down (I had only been rebooting it) that caused the physical device to deactivate, but I don't see a physical switch anywhere on my computer (Sager NP8298 built on Clevo P177SM-A) for Bluetooth, no keyboard toggle either.
Any ideas on how to get the computer to see the device? Everything worked beautifully when it was working.
[vinny@gentoo ~]$ ls -l /lib/firmware | grep ar3k drwxr-xr-x 7 root root 4096 Sep 18 15:00 ar3k [vinny@gentoo ~]$ ls -l /lib/firmware | grep ath3k -rw-r--r-- 1 root root 246804 Sep 18 14:16 ath3k-1.fw [vinny@gentoo ~]$ cd /lib/firmware/ar3k && ls 1020200 AthrBT_0x01020001.dfu AthrBT_0x41020000.dfu ramps_0x01020201_40.dfu 1020201 AthrBT_0x01020200.dfu ramps_0x01020001_26.dfu ramps_0x11020000_40.dfu 30000 AthrBT_0x01020201.dfu ramps_0x01020200_26.dfu ramps_0x31010000_40.dfu 30101 AthrBT_0x11020000.dfu ramps_0x01020200_40.dfu ramps_0x41020000_40.dfu 30101coex AthrBT_0x31010000.dfu ramps_0x01020201_26.dfu