Bluetooth

ASUS USB-BT211 vs openSUSE 11.4 x86_64

$ uname -r
2.6.37.6-0.5-desktop

Insert USB device

ath3k driver:

[2153846.491053] usb 7-2: new full speed USB device using uhci_hcd and address 2
[2153846.629068] usb 7-2: New USB device found, idVendor=0cf3, idProduct=3000
[2153846.629072] usb 7-2: New USB device strings: Mfr=0, Product=0, SerialNumber=0
[2153846.697354] Bluetooth: Atheros AR30xx firmware driver ver 1.0
[2153846.987106] usbcore: registered new interface driver ath3k
[2153847.204075] usb 7-2: USB disconnect, address 2
[2153848.660028] usb 7-2: new full speed USB device using uhci_hcd and address 3
[2153848.798101] usb 7-2: New USB device found, idVendor=0cf3, idProduct=3005
[2153848.798106] usb 7-2: New USB device strings: Mfr=0, Product=0, SerialNumber=0
$ lsusb
Bus 007 Device 006: ID 0cf3:3005 Atheros Communications, Inc.

Start Bluetooth stack

$ sudo bluetoothd
$ pgrep -fl blue
17628 bluetoothd
[2153848.832963] Bluetooth: Core ver 2.15
[2153848.833413] NET: Registered protocol family 31
[2153848.833415] Bluetooth: HCI device and connection manager initialized
[2153848.833417] Bluetooth: HCI socket layer initialized
[2153848.843656] Bluetooth: Generic Bluetooth USB driver ver 0.6
[2153848.844086] usbcore: registered new interface driver btusb
[2154006.770727] Bluetooth: L2CAP ver 2.15
[2154006.770729] Bluetooth: L2CAP socket layer initialized
[2154006.800182] Bluetooth: BNEP (Ethernet Emulation) ver 1.3
[2154006.800186] Bluetooth: BNEP filters: protocol multicast
[2154006.811511] Bluetooth: SCO (Voice Link) ver 0.6
[2154006.811513] Bluetooth: SCO socket layer initialized
[2154006.954075] hub 7-0:1.0: port 2 disabled by hub (EMI?), re-enabling...
[2154006.954085] usb 7-2: USB disconnect, address 3
[2154006.955086] btusb_intr_complete: hci0 urb ffff880050f819c0 failed to resubmit (19)
[2154006.955095] btusb_bulk_complete: hci0 urb ffff880050f81a80 failed to resubmit (19)
[2154006.956081] btusb_bulk_complete: hci0 urb ffff880050f81c00 failed to resubmit (19)
[2154007.163040] usb 7-2: new full speed USB device using uhci_hcd and address 4
[2154007.301112] usb 7-2: New USB device found, idVendor=0cf3, idProduct=3005
[2154007.301117] usb 7-2: New USB device strings: Mfr=0, Product=0, SerialNumber=0
[2154008.380595] Bluetooth: RFCOMM TTY layer initialized
[2154008.380600] Bluetooth: RFCOMM socket layer initialized
[2154008.380602] Bluetooth: RFCOMM ver 1.11
$ lsmod | egrep "bt|blu|ath"
btusb                  17871  1
bluetooth             107214  5 rfcomm,sco,bnep,l2cap,btusb
ath3k                   3866  0
rfkill                 21955  2 bluetooth,hp_wmi

Install Bluetooth client software

bluez-4.88-2.1.x86_64

obexftp-0.23-6.1.x86_64

Let's see how the adapter works:

$ hciconfig
hci0:   Type: BR/EDR  Bus: USB
        BD Address: 00:02:72:20:F9:39  ACL MTU: 1022:8  SCO MTU: 121:3
        UP RUNNING PSCAN
        RX bytes:13914 acl:226 sco:0 events:495 errors:0
        TX bytes:6056 acl:230 sco:0 commands:132 errors:0

Request info from the peer:

$ hcitool scan
Scanning ...
        A0:07:98:91:D5:4E       C3212
$ sudo hcitool info A0:07:98:91:D5:4E
Requesting information ...
        BD Address:  A0:07:98:91:D5:4E
        Device Name: C3212
        LMP Version: 2.1 (0x4) LMP Subversion: 0x4120
        Manufacturer: Broadcom Corporation (15)
        Features page 0: 0x01 0x00 0x00 0x00 0x00 0x00 0x00 0x00
                <3-slot packets>
        Features page 1: 0x01 0x00 0x00 0x00 0x00 0x00 0x00 0x00

Connecting to the peer

In this case, a Samsung SGH-C3212 is on the other end. The computer is allowed access.

Try to list files on the phone:

$ obexftp -b A0:07:98:91:D5:4E --noconn --uuid none --nopath --list
Suppressing FBS.
Browsing A0:07:98:91:D5:4E ...
Connecting...failed: connect
Tried to connect for 1343ms
error on connect(): Connection reset by peer
Still trying to connect
Connecting...failed: connect
Tried to connect for 1386ms
error on connect(): Connection reset by peer
Still trying to connect
Connecting...failed: connect
Tried to connect for 1323ms
error on connect(): Connection reset by peer
Still trying to connect

After each 'Connecting...', the phone asks for access and I press Yes.

$ sudo rfcomm connect 1 A0:07:98:91:D5:4E
Can't connect RFCOMM socket: Operation now in progress

Errors seen in dmesg:

[2155116.942196] hci_cmd_task: hci0 command tx timeout
[2155251.927147] hci_cmd_task: hci0 command tx timeout

There was an idea that downgrading bluez may help. Here is the result with bluez-4.19-1.5.x86_64:

$ obexftp -b A0:07:98:91:D5:4E --noconn --uuid none --nopath --list
Suppressing FBS.
Browsing A0:07:98:91:D5:4E ...
Connecting...failed: connect
Tried to connect for 152ms

However, the phone now sees the dialup capability of the computer beside the audio. With bluez-4.88 there was only audio available.

Some reports about the timeout error:

http://www.google.com/search?&q=%22hci_cmd_task%3A+hci0+command+tx+timeout%22

---

I ended up using a machine with Windows XP for this task.