* 057c:3800 BlueFRITZ! Bluetooth Stick broken since 2.6.something @ 2011-11-18 15:28 Michael Schmitt 2011-11-18 15:36 ` Johan Hedberg 0 siblings, 1 reply; 30+ messages in thread From: Michael Schmitt @ 2011-11-18 15:28 UTC (permalink / raw) To: linux-bluetooth Hi list, as bugzilla.kernel.org seems to be down right now I thought about reporting directly to lkml but then I saw a bt-specific list and... here we are. I have a Bluetooth USB-Stick that does not work anymore with more recent 2.6 and 3.x kernels. I have another stick which works ok on all kernels (at least with those I run / tested ;)) When plugged in, the USB-LED lights up permanently (no blinking), the bluetooth LED is off. It does not show up anywhere apart from hciconfig which reports it to be down and a hciconfig hci1 up times out after a few seconds. adrastea:~# hcitool dev Devices: hci0 11:11:11:11:11:11 adrastea:~# hciconfig hci0: Type: BR/EDR Bus: USB BD Address: 11:11:11:11:11:11 ACL MTU: 678:8 SCO MTU: 48:10 UP RUNNING PSCAN ISCAN RX bytes:1461 acl:0 sco:0 events:44 errors:0 TX bytes:697 acl:0 sco:0 commands:44 errors:0 hci1: Type: BR/EDR Bus: USB BD Address: 00:04:0E:8C:E2:93 ACL MTU: 120:20 SCO MTU: 24:5 DOWN RX bytes:1086 acl:0 sco:0 events:39 errors:0 TX bytes:171 acl:0 sco:0 commands:39 errors:0 adrastea:~# hciconfig hci1 up Can't init device hci1: Connection timed out (110) adrastea:~# I never bisected an issue, but if necessary I will try it out. But sure, I prefer that someone (Mr. Holtmann?) just has an heureka!-moment and knows the second he reads this report what went wrong in what patch / enhancement. :) And as said (to make it utterly clear) the device works with older kernels. Tested and approved with kernel 2.6.32 (on Debian squeeze) and ist not physically broken. Greetings Michael P.S.: Here the lsusb -v output for that device (if the usb-id is not enough): Bus 004 Device 003: ID 057c:3800 AVM GmbH BlueFRITZ! Bluetooth Stick Device Descriptor: bLength 18 bDescriptorType 1 bcdUSB 1.10 bDeviceClass 255 Vendor Specific Class bDeviceSubClass 255 Vendor Specific Subclass bDeviceProtocol 255 Vendor Specific Protocol bMaxPacketSize0 64 idVendor 0x057c AVM GmbH idProduct 0x3800 BlueFRITZ! Bluetooth Stick bcdDevice 15.00 iManufacturer 1 Bluetooth Device iProduct 2 Bluetooth Device iSerial 3 93E28C0E0400 bNumConfigurations 1 Configuration Descriptor: bLength 9 bDescriptorType 2 wTotalLength 177 bNumInterfaces 2 bConfigurationValue 1 iConfiguration 0 bmAttributes 0xa0 (Bus Powered) Remote Wakeup MaxPower 200mA Interface Descriptor: bLength 9 bDescriptorType 4 bInterfaceNumber 0 bAlternateSetting 0 bNumEndpoints 3 bInterfaceClass 255 Vendor Specific Class bInterfaceSubClass 255 Vendor Specific Subclass bInterfaceProtocol 255 Vendor Specific Protocol iInterface 0 Endpoint Descriptor: bLength 7 bDescriptorType 5 bEndpointAddress 0x81 EP 1 IN bmAttributes 3 Transfer Type Interrupt Synch Type None Usage Type Data wMaxPacketSize 0x0010 1x 16 bytes bInterval 1 Endpoint Descriptor: bLength 7 bDescriptorType 5 bEndpointAddress 0x82 EP 2 IN bmAttributes 2 Transfer Type Bulk Synch Type None Usage Type Data wMaxPacketSize 0x0040 1x 64 bytes bInterval 0 Endpoint Descriptor: bLength 7 bDescriptorType 5 bEndpointAddress 0x02 EP 2 OUT bmAttributes 2 Transfer Type Bulk Synch Type None Usage Type Data wMaxPacketSize 0x0040 1x 64 bytes bInterval 0 Interface Descriptor: bLength 9 bDescriptorType 4 bInterfaceNumber 1 bAlternateSetting 0 bNumEndpoints 2 bInterfaceClass 255 Vendor Specific Class bInterfaceSubClass 255 Vendor Specific Subclass bInterfaceProtocol 255 Vendor Specific Protocol iInterface 0 Endpoint Descriptor: bLength 7 bDescriptorType 5 bEndpointAddress 0x83 EP 3 IN bmAttributes 1 Transfer Type Isochronous Synch Type None Usage Type Data wMaxPacketSize 0x0000 1x 0 bytes bInterval 1 Endpoint Descriptor: bLength 7 bDescriptorType 5 bEndpointAddress 0x03 EP 3 OUT bmAttributes 1 Transfer Type Isochronous Synch Type None Usage Type Data wMaxPacketSize 0x0000 1x 0 bytes bInterval 1 Interface Descriptor: bLength 9 bDescriptorType 4 bInterfaceNumber 1 bAlternateSetting 1 bNumEndpoints 2 bInterfaceClass 255 Vendor Specific Class bInterfaceSubClass 255 Vendor Specific Subclass bInterfaceProtocol 255 Vendor Specific Protocol iInterface 0 Endpoint Descriptor: bLength 7 bDescriptorType 5 bEndpointAddress 0x83 EP 3 IN bmAttributes 1 Transfer Type Isochronous Synch Type None Usage Type Data wMaxPacketSize 0x0009 1x 9 bytes bInterval 1 Endpoint Descriptor: bLength 7 bDescriptorType 5 bEndpointAddress 0x03 EP 3 OUT bmAttributes 1 Transfer Type Isochronous Synch Type None Usage Type Data wMaxPacketSize 0x0009 1x 9 bytes bInterval 1 Interface Descriptor: bLength 9 bDescriptorType 4 bInterfaceNumber 1 bAlternateSetting 2 bNumEndpoints 2 bInterfaceClass 255 Vendor Specific Class bInterfaceSubClass 255 Vendor Specific Subclass bInterfaceProtocol 255 Vendor Specific Protocol iInterface 0 Endpoint Descriptor: bLength 7 bDescriptorType 5 bEndpointAddress 0x83 EP 3 IN bmAttributes 1 Transfer Type Isochronous Synch Type None Usage Type Data wMaxPacketSize 0x0011 1x 17 bytes bInterval 1 Endpoint Descriptor: bLength 7 bDescriptorType 5 bEndpointAddress 0x03 EP 3 OUT bmAttributes 1 Transfer Type Isochronous Synch Type None Usage Type Data wMaxPacketSize 0x0011 1x 17 bytes bInterval 1 Interface Descriptor: bLength 9 bDescriptorType 4 bInterfaceNumber 1 bAlternateSetting 3 bNumEndpoints 2 bInterfaceClass 255 Vendor Specific Class bInterfaceSubClass 255 Vendor Specific Subclass bInterfaceProtocol 255 Vendor Specific Protocol iInterface 0 Endpoint Descriptor: bLength 7 bDescriptorType 5 bEndpointAddress 0x83 EP 3 IN bmAttributes 1 Transfer Type Isochronous Synch Type None Usage Type Data wMaxPacketSize 0x0019 1x 25 bytes bInterval 1 Endpoint Descriptor: bLength 7 bDescriptorType 5 bEndpointAddress 0x03 EP 3 OUT bmAttributes 1 Transfer Type Isochronous Synch Type None Usage Type Data wMaxPacketSize 0x0019 1x 25 bytes bInterval 1 Interface Descriptor: bLength 9 bDescriptorType 4 bInterfaceNumber 1 bAlternateSetting 4 bNumEndpoints 2 bInterfaceClass 255 Vendor Specific Class bInterfaceSubClass 255 Vendor Specific Subclass bInterfaceProtocol 255 Vendor Specific Protocol iInterface 0 Endpoint Descriptor: bLength 7 bDescriptorType 5 bEndpointAddress 0x83 EP 3 IN bmAttributes 1 Transfer Type Isochronous Synch Type None Usage Type Data wMaxPacketSize 0x0021 1x 33 bytes bInterval 1 Endpoint Descriptor: bLength 7 bDescriptorType 5 bEndpointAddress 0x03 EP 3 OUT bmAttributes 1 Transfer Type Isochronous Synch Type None Usage Type Data wMaxPacketSize 0x0021 1x 33 bytes bInterval 1 Interface Descriptor: bLength 9 bDescriptorType 4 bInterfaceNumber 1 bAlternateSetting 5 bNumEndpoints 2 bInterfaceClass 255 Vendor Specific Class bInterfaceSubClass 255 Vendor Specific Subclass bInterfaceProtocol 255 Vendor Specific Protocol iInterface 0 Endpoint Descriptor: bLength 7 bDescriptorType 5 bEndpointAddress 0x83 EP 3 IN bmAttributes 1 Transfer Type Isochronous Synch Type None Usage Type Data wMaxPacketSize 0x0031 1x 49 bytes bInterval 1 Endpoint Descriptor: bLength 7 bDescriptorType 5 bEndpointAddress 0x03 EP 3 OUT bmAttributes 1 Transfer Type Isochronous Synch Type None Usage Type Data wMaxPacketSize 0x0031 1x 49 bytes bInterval 1 Device Status: 0x0000 (Bus Powered) ^ permalink raw reply [flat|nested] 30+ messages in thread
* Re: 057c:3800 BlueFRITZ! Bluetooth Stick broken since 2.6.something 2011-11-18 15:28 057c:3800 BlueFRITZ! Bluetooth Stick broken since 2.6.something Michael Schmitt @ 2011-11-18 15:36 ` Johan Hedberg 2011-11-18 15:49 ` Michael Schmitt 2011-11-18 16:17 ` Michael Schmitt 0 siblings, 2 replies; 30+ messages in thread From: Johan Hedberg @ 2011-11-18 15:36 UTC (permalink / raw) To: Michael Schmitt; +Cc: linux-bluetooth Hi Michael, On Fri, Nov 18, 2011, Michael Schmitt wrote: > adrastea:~# hcitool dev > Devices: > hci0 11:11:11:11:11:11 > adrastea:~# hciconfig > hci0: Type: BR/EDR Bus: USB > BD Address: 11:11:11:11:11:11 ACL MTU: 678:8 SCO MTU: 48:10 > UP RUNNING PSCAN ISCAN > RX bytes:1461 acl:0 sco:0 events:44 errors:0 > TX bytes:697 acl:0 sco:0 commands:44 errors:0 > > hci1: Type: BR/EDR Bus: USB > BD Address: 00:04:0E:8C:E2:93 ACL MTU: 120:20 SCO MTU: 24:5 > DOWN > RX bytes:1086 acl:0 sco:0 events:39 errors:0 > TX bytes:171 acl:0 sco:0 commands:39 errors:0 > > adrastea:~# hciconfig hci1 up > Can't init device hci1: Connection timed out (110) > adrastea:~# I'm pretty sure we'll at least need to see the hcidump output for the initialization sequence of this adapter (i.e. start hcidump before calling hciconfig hci0 up) and show us the output. Which Bluetooth version does this adapter support and how old is it? Johan ^ permalink raw reply [flat|nested] 30+ messages in thread
* Re: 057c:3800 BlueFRITZ! Bluetooth Stick broken since 2.6.something 2011-11-18 15:36 ` Johan Hedberg @ 2011-11-18 15:49 ` Michael Schmitt 2011-11-18 16:21 ` Johan Hedberg 2011-11-18 16:17 ` Michael Schmitt 1 sibling, 1 reply; 30+ messages in thread From: Michael Schmitt @ 2011-11-18 15:49 UTC (permalink / raw) To: linux-bluetooth Am 18.11.2011 16:36, schrieb Johan Hedberg: > Hi Michael, > > On Fri, Nov 18, 2011, Michael Schmitt wrote: >> adrastea:~# hcitool dev >> Devices: >> hci0 11:11:11:11:11:11 >> adrastea:~# hciconfig >> hci0: Type: BR/EDR Bus: USB >> BD Address: 11:11:11:11:11:11 ACL MTU: 678:8 SCO MTU: 48:10 >> UP RUNNING PSCAN ISCAN >> RX bytes:1461 acl:0 sco:0 events:44 errors:0 >> TX bytes:697 acl:0 sco:0 commands:44 errors:0 >> >> hci1: Type: BR/EDR Bus: USB >> BD Address: 00:04:0E:8C:E2:93 ACL MTU: 120:20 SCO MTU: 24:5 >> DOWN >> RX bytes:1086 acl:0 sco:0 events:39 errors:0 >> TX bytes:171 acl:0 sco:0 commands:39 errors:0 >> >> adrastea:~# hciconfig hci1 up >> Can't init device hci1: Connection timed out (110) >> adrastea:~# > I'm pretty sure we'll at least need to see the hcidump output for the > initialization sequence of this adapter (i.e. start hcidump before > calling hciconfig hci0 up) and show us the output. Which Bluetooth > version does this adapter support and how old is it? > > Johan Hi Johann, let me fire up a machine that runs 2.6.32 (Debian squeeze) and where it works... or is there a way to get the bt-version it supports with the "broken" kernel? And no idea how old it is... at least some years as I got it for free from a buddy some time ago. It is from a AVM BlueTooth-ISDN-set which was in a box in the cellar and never used by the original owner (that was years ago too). Anyway, here is the hcidump output as requested. Only the timespan since issueing hciconfig hci0 up and error message displayed in terminal: adrastea:~# hcidump HCI sniffer - Bluetooth packet analyzer ver 2.1 device: hci0 snap_len: 1028 filter: 0xffffffff < HCI Command: Reset (0x03|0x0003) plen 0 > HCI Event: Command Complete (0x0e) plen 4 Reset (0x03|0x0003) ncmd 1 status 0x00 < HCI Command: Read Local Supported Features (0x04|0x0003) plen 0 > HCI Event: Command Complete (0x0e) plen 12 Read Local Supported Features (0x04|0x0003) ncmd 1 status 0x00 Features: 0xff 0xff 0x05 0x00 0x18 0x18 0x00 0x00 < HCI Command: Read Local Version Information (0x04|0x0001) plen 0 > HCI Event: Command Complete (0x0e) plen 12 Read Local Version Information (0x04|0x0001) ncmd 1 status 0x00 HCI Version: 1.2 (0x2) HCI Revision: 0x2006 LMP Version: 1.2 (0x2) LMP Subversion: 0x1806 Manufacturer: AVM Berlin (31) < HCI Command: Read Buffer Size (0x04|0x0005) plen 0 > HCI Event: Command Complete (0x0e) plen 11 Read Buffer Size (0x04|0x0005) ncmd 1 status 0x00 ACL MTU 120:20 SCO MTU 24:5 < HCI Command: Read BD ADDR (0x04|0x0009) plen 0 > HCI Event: Command Complete (0x0e) plen 10 Read BD ADDR (0x04|0x0009) ncmd 1 status 0x00 bdaddr 00:04:0E:8C:E2:93 < HCI Command: Read Class of Device (0x03|0x0023) plen 0 > HCI Event: Command Complete (0x0e) plen 7 Read Class of Device (0x03|0x0023) ncmd 1 status 0x00 class 0x000000 < HCI Command: Read Local Name (0x03|0x0014) plen 0 > HCI Event: Command Complete (0x0e) plen 252 Read Local Name (0x03|0x0014) ncmd 1 status 0x00 name '' < HCI Command: Read Voice Setting (0x03|0x0025) plen 0 > HCI Event: Command Complete (0x0e) plen 6 Read Voice Setting (0x03|0x0025) ncmd 1 status 0x00 voice setting 0x0060 < HCI Command: Set Event Filter (0x03|0x0005) plen 1 type 0 condition 0 Clear all filters > HCI Event: Command Complete (0x0e) plen 4 Set Event Filter (0x03|0x0005) ncmd 1 status 0x00 < HCI Command: Write Connection Accept Timeout (0x03|0x0016) plen 2 timeout 32000 > HCI Event: Command Complete (0x0e) plen 4 Write Connection Accept Timeout (0x03|0x0016) ncmd 1 status 0x00 < HCI Command: Delete Stored Link Key (0x03|0x0012) plen 7 bdaddr 00:00:00:00:00:00 all 1 > HCI Event: Command Complete (0x0e) plen 6 Delete Stored Link Key (0x03|0x0012) ncmd 1 status 0x00 deleted 0 < HCI Command: Set Event Mask (0x03|0x0001) plen 8 Mask: 0xfffffbff07180000 > HCI Event: Command Complete (0x0e) plen 4 Set Event Mask (0x03|0x0001) ncmd 1 status 0x00 < HCI Command: Read Local Supported Commands (0x04|0x0002) plen 0 > HCI Event: Command Status (0x0f) plen 4 Read Local Supported Commands (0x04|0x0002) status 0x01 ncmd 1 Error: Unknown HCI Command greetings Michael ^ permalink raw reply [flat|nested] 30+ messages in thread
* Re: 057c:3800 BlueFRITZ! Bluetooth Stick broken since 2.6.something 2011-11-18 15:49 ` Michael Schmitt @ 2011-11-18 16:21 ` Johan Hedberg 2011-11-18 16:34 ` Michael Schmitt 2011-11-21 8:57 ` Andrei Emeltchenko 0 siblings, 2 replies; 30+ messages in thread From: Johan Hedberg @ 2011-11-18 16:21 UTC (permalink / raw) To: Michael Schmitt; +Cc: linux-bluetooth Hi Michael, On Fri, Nov 18, 2011, Michael Schmitt wrote: > < HCI Command: Read Local Version Information (0x04|0x0001) plen 0 > > HCI Event: Command Complete (0x0e) plen 12 > Read Local Version Information (0x04|0x0001) ncmd 1 > status 0x00 > HCI Version: 1.2 (0x2) HCI Revision: 0x2006 > LMP Version: 1.2 (0x2) LMP Subversion: 0x1806 > Manufacturer: AVM Berlin (31) Ok, so this is a 1.2 adapter. > < HCI Command: Read Local Supported Commands (0x04|0x0002) plen 0 > > HCI Event: Command Status (0x0f) plen 4 > Read Local Supported Commands (0x04|0x0002) status 0x01 ncmd 1 > Error: Unknown HCI Command This is the reason why you're getting a timeout. Since the adapter claims to support Bluetooth version 1.2 it should also support this HCI command, so from that perspective it's not conforming to the specification. Right now the kernel (lib/bluetooth/hci_event.c) is completely missing a command status handler for this command. If such a handler was in place instead of a timeout you would be getting an immediate error (the kernel maps this HCI status code to EBADRQC). However, since this is also not acceptable behavior (as the adapter still wouldn't work for you) I suspect the need for some adapter-specific quirk is in place or then the kernel should just ignore any errors for HCI_Read_Local_Supported_Commands. Johan ^ permalink raw reply [flat|nested] 30+ messages in thread
* Re: 057c:3800 BlueFRITZ! Bluetooth Stick broken since 2.6.something 2011-11-18 16:21 ` Johan Hedberg @ 2011-11-18 16:34 ` Michael Schmitt 2011-11-18 20:30 ` Johan Hedberg 2011-11-21 8:57 ` Andrei Emeltchenko 1 sibling, 1 reply; 30+ messages in thread From: Michael Schmitt @ 2011-11-18 16:34 UTC (permalink / raw) To: linux-bluetooth Am 18.11.2011 17:21, schrieb Johan Hedberg: > Hi Michael, > > On Fri, Nov 18, 2011, Michael Schmitt wrote: >> < HCI Command: Read Local Version Information (0x04|0x0001) plen 0 >>> HCI Event: Command Complete (0x0e) plen 12 >> Read Local Version Information (0x04|0x0001) ncmd 1 >> status 0x00 >> HCI Version: 1.2 (0x2) HCI Revision: 0x2006 >> LMP Version: 1.2 (0x2) LMP Subversion: 0x1806 >> Manufacturer: AVM Berlin (31) > > Ok, so this is a 1.2 adapter. > >> < HCI Command: Read Local Supported Commands (0x04|0x0002) plen 0 >>> HCI Event: Command Status (0x0f) plen 4 >> Read Local Supported Commands (0x04|0x0002) status 0x01 ncmd 1 >> Error: Unknown HCI Command > > This is the reason why you're getting a timeout. Since the adapter > claims to support Bluetooth version 1.2 it should also support this HCI > command, so from that perspective it's not conforming to the > specification. Right now the kernel (lib/bluetooth/hci_event.c) is > completely missing a command status handler for this command. If such a > handler was in place instead of a timeout you would be getting an > immediate error (the kernel maps this HCI status code to EBADRQC). > > However, since this is also not acceptable behavior (as the adapter > still wouldn't work for you) I suspect the need for some > adapter-specific quirk is in place or then the kernel should just ignore > any errors for HCI_Read_Local_Supported_Commands. > > Johan Thanks for the input. But do you know why the device works with older kernel / userland? As Debian stable may be old, but not THAT old ;) (bluetooth 1.2 was released somewhere around 2005 I think). So, and what do we do from here on? Btw. I did mix up the two bt-sticks I have so the last info was from the wrong stick. Here is the right info but it looks almost the same (at least the version numbers...): mschmitt@sogo:~$ /usr/sbin/hciconfig -a hci0: Type: BR/EDR Bus: USB BD Address: 00:04:0E:8C:E2:93 ACL MTU: 120:20 SCO MTU: 24:5 UP RUNNING PSCAN ISCAN RX bytes:695 acl:0 sco:0 events:23 errors:0 TX bytes:97 acl:0 sco:0 commands:23 errors:0 Features: 0xff 0xff 0x05 0x00 0x18 0x18 0x00 0x00 Packet type: DM1 DM3 DM5 DH1 DH3 DH5 HV1 HV2 HV3 Link policy: Link mode: SLAVE ACCEPT Name: '' Class: 0x4a0000 Service Classes: Networking, Capturing, Telephony Device Class: Miscellaneous, HCI Version: 1.2 (0x2) Revision: 0x2006 LMP Version: 1.2 (0x2) Subversion: 0x1806 Manufacturer: AVM Berlin (31) greetings Michael ^ permalink raw reply [flat|nested] 30+ messages in thread
* Re: 057c:3800 BlueFRITZ! Bluetooth Stick broken since 2.6.something 2011-11-18 16:34 ` Michael Schmitt @ 2011-11-18 20:30 ` Johan Hedberg 2011-11-20 15:27 ` Michael Schmitt 0 siblings, 1 reply; 30+ messages in thread From: Johan Hedberg @ 2011-11-18 20:30 UTC (permalink / raw) To: Michael Schmitt; +Cc: linux-bluetooth [-- Attachment #1: Type: text/plain, Size: 901 bytes --] HI Michael, On Fri, Nov 18, 2011, Michael Schmitt wrote: > Thanks for the input. But do you know why the device works with > older kernel / userland?> Probably because the list of supported commands wasn't previously requested as part of the adapter init sequence, or because the kernel code didn't actually wait for all commands to complete before notifying success to user space (I know the latter is at least true since I submitted a patch for it). > So, and what do we do from here on? Well, the attached patch will at least make sure that the failure of this command is correctly detected so you get an immediate error instead of a timeout. The next step is to decide whether to do a quirk for your specific adapter or to make it a general rule that errors for this particular HCI command are ignored (for that we'd need feedback from the real kernel experts like Marcel and Gustavo). Johan [-- Attachment #2: 0001-Bluetooth-Fix-request-completion-for-command-status-.patch --] [-- Type: text/plain, Size: 1019 bytes --] >From e8cc224c3d8b6ea5b956efb33cdc3569fc782d4c Mon Sep 17 00:00:00 2001 From: Johan Hedberg <johan.hedberg@intel.com> Date: Fri, 18 Nov 2011 22:21:48 +0200 Subject: [PATCH] Bluetooth: Fix request completion for command status events If a HCI command triggered by hci_request() fails at the command status phase we need to properly inform the request tracking code of the completion of the request. Signed-off-by: Johan Hedberg <johan.hedberg@intel.com> --- net/bluetooth/hci_event.c | 3 +++ 1 files changed, 3 insertions(+), 0 deletions(-) diff --git a/net/bluetooth/hci_event.c b/net/bluetooth/hci_event.c index dfe6fbc..236f895 100644 --- a/net/bluetooth/hci_event.c +++ b/net/bluetooth/hci_event.c @@ -2055,6 +2055,9 @@ static inline void hci_cmd_status_evt(struct hci_dev *hdev, struct sk_buff *skb) opcode = __le16_to_cpu(ev->opcode); + if (ev->status != 0) + hci_req_complete(hdev, opcode, ev->status); + switch (opcode) { case HCI_OP_INQUIRY: hci_cs_inquiry(hdev, ev->status); -- 1.7.7.2 ^ permalink raw reply related [flat|nested] 30+ messages in thread
* Re: 057c:3800 BlueFRITZ! Bluetooth Stick broken since 2.6.something 2011-11-18 20:30 ` Johan Hedberg @ 2011-11-20 15:27 ` Michael Schmitt 2011-11-27 10:04 ` Michael Schmitt 0 siblings, 1 reply; 30+ messages in thread From: Michael Schmitt @ 2011-11-20 15:27 UTC (permalink / raw) To: linux-bluetooth; +Cc: marcel, padovan Am 18.11.2011 21:30, schrieb Johan Hedberg: > HI Michael, > > On Fri, Nov 18, 2011, Michael Schmitt wrote: >> Thanks for the input. But do you know why the device works with >> older kernel / userland?> > Probably because the list of supported commands wasn't previously > requested as part of the adapter init sequence, or because the kernel > code didn't actually wait for all commands to complete before notifying > success to user space (I know the latter is at least true since I > submitted a patch for it). So that means, if the bt-stack in the kernel would ignore the successful completion of those "what protocol version do you understand"-commands all bt-related stuff with the stick would work nevertheless? >> So, and what do we do from here on? > Well, the attached patch will at least make sure that the failure of > this command is correctly detected so you get an immediate error instead > of a timeout. The next step is to decide whether to do a quirk for your > specific adapter or to make it a general rule that errors for this > particular HCI command are ignored (for that we'd need feedback from the > real kernel experts like Marcel and Gustavo). But apparently none of them had the urge to actually respond in this ml-thread yet. :) Let's see, I try to poke them "mildly" in cc'ing them... General speaking, the bt-stick in question is old (at least 5 years or so) and I have another (working) stick here, so there is no immediate adversity for me. But I guess as this stick is from major bt-accessoirs supplier from germany (AVM GmbH Berlin) this hardware may be around for many users for a fairly long time. But then again... it seems to be a hardware-bug... Anyway, I guess it would ne nice to have it "fixed" someday. :) Greetings Michael ^ permalink raw reply [flat|nested] 30+ messages in thread
* Re: 057c:3800 BlueFRITZ! Bluetooth Stick broken since 2.6.something 2011-11-20 15:27 ` Michael Schmitt @ 2011-11-27 10:04 ` Michael Schmitt 2011-11-28 8:42 ` Andrei Emeltchenko 0 siblings, 1 reply; 30+ messages in thread From: Michael Schmitt @ 2011-11-27 10:04 UTC (permalink / raw) To: linux-bluetooth; +Cc: marcel, padovan Just as a follow-up question (as I did not get a clear conclusion out of the discussion and it seems to me the "discussion" did stop without a real conclusion)... What is the plan right now? Will there be a patch upstream (in the kernel) at some point? Is it not clear how to fix that (broken?) hardware driver-wise yet? Should I test something? regards Michael ^ permalink raw reply [flat|nested] 30+ messages in thread
* Re: 057c:3800 BlueFRITZ! Bluetooth Stick broken since 2.6.something 2011-11-27 10:04 ` Michael Schmitt @ 2011-11-28 8:42 ` Andrei Emeltchenko 0 siblings, 0 replies; 30+ messages in thread From: Andrei Emeltchenko @ 2011-11-28 8:42 UTC (permalink / raw) To: Michael Schmitt; +Cc: linux-bluetooth, marcel, padovan Hi Michael, On Sun, Nov 27, 2011 at 11:04:31AM +0100, Michael Schmitt wrote: > Just as a follow-up question (as I did not get a clear conclusion > out of the discussion and it seems to me the "discussion" did stop > without a real conclusion)... > > What is the plan right now? Will there be a patch upstream (in the > kernel) at some point? Is it not clear how to fix that (broken?) > hardware driver-wise yet? Should I test something? Could you test Johan's patch: http://permalink.gmane.org/gmane.linux.bluez.kernel/18752 [PATCH 2/2] Bluetooth: Ignore HCI_Read_Local_Commands failures You can also apply the first patch. Best regards Andrei Emeltchenko > > regards > Michael > -- > To unsubscribe from this list: send the line "unsubscribe linux-bluetooth" in > the body of a message to majordomo@vger.kernel.org > More majordomo info at http://vger.kernel.org/majordomo-info.html ^ permalink raw reply [flat|nested] 30+ messages in thread
* Re: 057c:3800 BlueFRITZ! Bluetooth Stick broken since 2.6.something 2011-11-18 16:21 ` Johan Hedberg 2011-11-18 16:34 ` Michael Schmitt @ 2011-11-21 8:57 ` Andrei Emeltchenko 2011-11-21 9:12 ` Andrei Emeltchenko 2011-11-21 9:13 ` Marcel Holtmann 1 sibling, 2 replies; 30+ messages in thread From: Andrei Emeltchenko @ 2011-11-21 8:57 UTC (permalink / raw) To: Michael Schmitt, linux-bluetooth Hi Johan, On Fri, Nov 18, 2011 at 06:21:11PM +0200, Johan Hedberg wrote: > Hi Michael, > > On Fri, Nov 18, 2011, Michael Schmitt wrote: > > < HCI Command: Read Local Version Information (0x04|0x0001) plen 0 > > > HCI Event: Command Complete (0x0e) plen 12 > > Read Local Version Information (0x04|0x0001) ncmd 1 > > status 0x00 > > HCI Version: 1.2 (0x2) HCI Revision: 0x2006 > > LMP Version: 1.2 (0x2) LMP Subversion: 0x1806 > > Manufacturer: AVM Berlin (31) > > Ok, so this is a 1.2 adapter. > > > < HCI Command: Read Local Supported Commands (0x04|0x0002) plen 0 > > > HCI Event: Command Status (0x0f) plen 4 > > Read Local Supported Commands (0x04|0x0002) status 0x01 ncmd 1 > > Error: Unknown HCI Command > > This is the reason why you're getting a timeout. Since the adapter > claims to support Bluetooth version 1.2 it should also support this HCI > command, so from that perspective it's not conforming to the Apparently we check for "Bluetooth Core Specification 1.1" Shall we change to: diff --git a/net/bluetooth/hci_event.c b/net/bluetooth/hci_event.c index f0fbb02..ed55b33 100644 --- a/net/bluetooth/hci_event.c +++ b/net/bluetooth/hci_event.c @@ -562,7 +562,7 @@ static void hci_setup(struct hci_dev *hdev) { hci_setup_event_mask(hdev); - if (hdev->lmp_ver > 1) + if (hdev->lmp_ver > 2) hci_send_cmd(hdev, HCI_OP_READ_LOCAL_COMMANDS, 0, NULL); if (hdev->features[6] & LMP_SIMPLE_PAIR) { Reference: https://www.bluetooth.org/Technical/AssignedNumbers/link_manager.htm Best regards Andrei Emeltchenko > specification. Right now the kernel (lib/bluetooth/hci_event.c) is > completely missing a command status handler for this command. If such a > handler was in place instead of a timeout you would be getting an > immediate error (the kernel maps this HCI status code to EBADRQC). > > However, since this is also not acceptable behavior (as the adapter > still wouldn't work for you) I suspect the need for some > adapter-specific quirk is in place or then the kernel should just ignore > any errors for HCI_Read_Local_Supported_Commands. > > Johan > -- > To unsubscribe from this list: send the line "unsubscribe linux-bluetooth" in > the body of a message to majordomo@vger.kernel.org > More majordomo info at http://vger.kernel.org/majordomo-info.html ^ permalink raw reply related [flat|nested] 30+ messages in thread
* Re: 057c:3800 BlueFRITZ! Bluetooth Stick broken since 2.6.something 2011-11-21 8:57 ` Andrei Emeltchenko @ 2011-11-21 9:12 ` Andrei Emeltchenko 2011-11-21 9:13 ` Marcel Holtmann 1 sibling, 0 replies; 30+ messages in thread From: Andrei Emeltchenko @ 2011-11-21 9:12 UTC (permalink / raw) To: Michael Schmitt, linux-bluetooth On Mon, Nov 21, 2011 at 10:57:06AM +0200, Andrei Emeltchenko wrote: > Hi Johan, > > On Fri, Nov 18, 2011 at 06:21:11PM +0200, Johan Hedberg wrote: > > Hi Michael, > > > > On Fri, Nov 18, 2011, Michael Schmitt wrote: > > > < HCI Command: Read Local Version Information (0x04|0x0001) plen 0 > > > > HCI Event: Command Complete (0x0e) plen 12 > > > Read Local Version Information (0x04|0x0001) ncmd 1 > > > status 0x00 > > > HCI Version: 1.2 (0x2) HCI Revision: 0x2006 > > > LMP Version: 1.2 (0x2) LMP Subversion: 0x1806 > > > Manufacturer: AVM Berlin (31) > > > > Ok, so this is a 1.2 adapter. > > > > > < HCI Command: Read Local Supported Commands (0x04|0x0002) plen 0 > > > > HCI Event: Command Status (0x0f) plen 4 > > > Read Local Supported Commands (0x04|0x0002) status 0x01 ncmd 1 > > > Error: Unknown HCI Command > > > > This is the reason why you're getting a timeout. Since the adapter > > claims to support Bluetooth version 1.2 it should also support this HCI > > command, so from that perspective it's not conforming to the > > Apparently we check for "Bluetooth Core Specification 1.1" Sorry, it is already checking for it. Discard the code below. Best regards Andrei Emeltchenko > > Shall we change to: > > diff --git a/net/bluetooth/hci_event.c b/net/bluetooth/hci_event.c > index f0fbb02..ed55b33 100644 > --- a/net/bluetooth/hci_event.c > +++ b/net/bluetooth/hci_event.c > @@ -562,7 +562,7 @@ static void hci_setup(struct hci_dev *hdev) > { > hci_setup_event_mask(hdev); > > - if (hdev->lmp_ver > 1) > + if (hdev->lmp_ver > 2) > hci_send_cmd(hdev, HCI_OP_READ_LOCAL_COMMANDS, 0, NULL); > > if (hdev->features[6] & LMP_SIMPLE_PAIR) { > > Reference: > https://www.bluetooth.org/Technical/AssignedNumbers/link_manager.htm > > Best regards > Andrei Emeltchenko > > > specification. Right now the kernel (lib/bluetooth/hci_event.c) is > > completely missing a command status handler for this command. If such a > > handler was in place instead of a timeout you would be getting an > > immediate error (the kernel maps this HCI status code to EBADRQC). > > > > However, since this is also not acceptable behavior (as the adapter > > still wouldn't work for you) I suspect the need for some > > adapter-specific quirk is in place or then the kernel should just ignore > > any errors for HCI_Read_Local_Supported_Commands. > > > > Johan > > -- > > To unsubscribe from this list: send the line "unsubscribe linux-bluetooth" in > > the body of a message to majordomo@vger.kernel.org > > More majordomo info at http://vger.kernel.org/majordomo-info.html > -- > To unsubscribe from this list: send the line "unsubscribe linux-bluetooth" in > the body of a message to majordomo@vger.kernel.org > More majordomo info at http://vger.kernel.org/majordomo-info.html ^ permalink raw reply [flat|nested] 30+ messages in thread
* Re: 057c:3800 BlueFRITZ! Bluetooth Stick broken since 2.6.something 2011-11-21 8:57 ` Andrei Emeltchenko 2011-11-21 9:12 ` Andrei Emeltchenko @ 2011-11-21 9:13 ` Marcel Holtmann 2011-11-21 10:22 ` Andrei Emeltchenko 2011-11-21 10:35 ` Johan Hedberg 1 sibling, 2 replies; 30+ messages in thread From: Marcel Holtmann @ 2011-11-21 9:13 UTC (permalink / raw) To: Andrei Emeltchenko; +Cc: Michael Schmitt, linux-bluetooth Hi Andrei, > > On Fri, Nov 18, 2011, Michael Schmitt wrote: > > > < HCI Command: Read Local Version Information (0x04|0x0001) plen 0 > > > > HCI Event: Command Complete (0x0e) plen 12 > > > Read Local Version Information (0x04|0x0001) ncmd 1 > > > status 0x00 > > > HCI Version: 1.2 (0x2) HCI Revision: 0x2006 > > > LMP Version: 1.2 (0x2) LMP Subversion: 0x1806 > > > Manufacturer: AVM Berlin (31) > > > > Ok, so this is a 1.2 adapter. > > > > > < HCI Command: Read Local Supported Commands (0x04|0x0002) plen 0 > > > > HCI Event: Command Status (0x0f) plen 4 > > > Read Local Supported Commands (0x04|0x0002) status 0x01 ncmd 1 > > > Error: Unknown HCI Command > > > > This is the reason why you're getting a timeout. Since the adapter > > claims to support Bluetooth version 1.2 it should also support this HCI > > command, so from that perspective it's not conforming to the > > Apparently we check for "Bluetooth Core Specification 1.1" > > Shall we change to: > > diff --git a/net/bluetooth/hci_event.c b/net/bluetooth/hci_event.c > index f0fbb02..ed55b33 100644 > --- a/net/bluetooth/hci_event.c > +++ b/net/bluetooth/hci_event.c > @@ -562,7 +562,7 @@ static void hci_setup(struct hci_dev *hdev) > { > hci_setup_event_mask(hdev); > > - if (hdev->lmp_ver > 1) > + if (hdev->lmp_ver > 2) > hci_send_cmd(hdev, HCI_OP_READ_LOCAL_COMMANDS, 0, NULL); 0x00 is 1.0b and 0x01 is 1.1. So you are changing the check from 1.2 to 2.0. The command was introduced with 1.2 actually. The only real change that needs to be done here is to check hci_ver instead of lmp_ver. This command is a HCI feature and not a LMP feature actually. Regards Marcel ^ permalink raw reply [flat|nested] 30+ messages in thread
* Re: 057c:3800 BlueFRITZ! Bluetooth Stick broken since 2.6.something 2011-11-21 9:13 ` Marcel Holtmann @ 2011-11-21 10:22 ` Andrei Emeltchenko 2011-11-21 13:03 ` Marcel Holtmann 2011-11-21 10:35 ` Johan Hedberg 1 sibling, 1 reply; 30+ messages in thread From: Andrei Emeltchenko @ 2011-11-21 10:22 UTC (permalink / raw) To: Marcel Holtmann; +Cc: Michael Schmitt, linux-bluetooth Hi Marcel, On Mon, Nov 21, 2011 at 10:13:49AM +0100, Marcel Holtmann wrote: > Hi Andrei, > > > > On Fri, Nov 18, 2011, Michael Schmitt wrote: > > > > < HCI Command: Read Local Version Information (0x04|0x0001) plen 0 > > > > > HCI Event: Command Complete (0x0e) plen 12 > > > > Read Local Version Information (0x04|0x0001) ncmd 1 > > > > status 0x00 > > > > HCI Version: 1.2 (0x2) HCI Revision: 0x2006 > > > > LMP Version: 1.2 (0x2) LMP Subversion: 0x1806 > > > > Manufacturer: AVM Berlin (31) > > > > > > Ok, so this is a 1.2 adapter. > > > > > > > < HCI Command: Read Local Supported Commands (0x04|0x0002) plen 0 > > > > > HCI Event: Command Status (0x0f) plen 4 > > > > Read Local Supported Commands (0x04|0x0002) status 0x01 ncmd 1 > > > > Error: Unknown HCI Command > > > > > > This is the reason why you're getting a timeout. Since the adapter > > > claims to support Bluetooth version 1.2 it should also support this HCI > > > command, so from that perspective it's not conforming to the > > > > Apparently we check for "Bluetooth Core Specification 1.1" > > > > Shall we change to: > > > > diff --git a/net/bluetooth/hci_event.c b/net/bluetooth/hci_event.c > > index f0fbb02..ed55b33 100644 > > --- a/net/bluetooth/hci_event.c > > +++ b/net/bluetooth/hci_event.c > > @@ -562,7 +562,7 @@ static void hci_setup(struct hci_dev *hdev) > > { > > hci_setup_event_mask(hdev); > > > > - if (hdev->lmp_ver > 1) > > + if (hdev->lmp_ver > 2) > > hci_send_cmd(hdev, HCI_OP_READ_LOCAL_COMMANDS, 0, NULL); > > 0x00 is 1.0b and 0x01 is 1.1. So you are changing the check from 1.2 to > 2.0. The command was introduced with 1.2 actually. Can we define in bluetooth.h something like: #define BLUETOOTH_LMP_VER_1.1 1 #define BLUETOOTH_LMP_VER_1.2 2 > The only real change that needs to be done here is to check hci_ver > instead of lmp_ver. This command is a HCI feature and not a LMP feature > actually. Maybe same define for HCI_VER ? Best regards Andrei Emeltchenko ^ permalink raw reply [flat|nested] 30+ messages in thread
* Re: 057c:3800 BlueFRITZ! Bluetooth Stick broken since 2.6.something 2011-11-21 10:22 ` Andrei Emeltchenko @ 2011-11-21 13:03 ` Marcel Holtmann 0 siblings, 0 replies; 30+ messages in thread From: Marcel Holtmann @ 2011-11-21 13:03 UTC (permalink / raw) To: Andrei Emeltchenko; +Cc: Michael Schmitt, linux-bluetooth Hi Andrei, > > > > On Fri, Nov 18, 2011, Michael Schmitt wrote: > > > > > < HCI Command: Read Local Version Information (0x04|0x0001) plen 0 > > > > > > HCI Event: Command Complete (0x0e) plen 12 > > > > > Read Local Version Information (0x04|0x0001) ncmd 1 > > > > > status 0x00 > > > > > HCI Version: 1.2 (0x2) HCI Revision: 0x2006 > > > > > LMP Version: 1.2 (0x2) LMP Subversion: 0x1806 > > > > > Manufacturer: AVM Berlin (31) > > > > > > > > Ok, so this is a 1.2 adapter. > > > > > > > > > < HCI Command: Read Local Supported Commands (0x04|0x0002) plen 0 > > > > > > HCI Event: Command Status (0x0f) plen 4 > > > > > Read Local Supported Commands (0x04|0x0002) status 0x01 ncmd 1 > > > > > Error: Unknown HCI Command > > > > > > > > This is the reason why you're getting a timeout. Since the adapter > > > > claims to support Bluetooth version 1.2 it should also support this HCI > > > > command, so from that perspective it's not conforming to the > > > > > > Apparently we check for "Bluetooth Core Specification 1.1" > > > > > > Shall we change to: > > > > > > diff --git a/net/bluetooth/hci_event.c b/net/bluetooth/hci_event.c > > > index f0fbb02..ed55b33 100644 > > > --- a/net/bluetooth/hci_event.c > > > +++ b/net/bluetooth/hci_event.c > > > @@ -562,7 +562,7 @@ static void hci_setup(struct hci_dev *hdev) > > > { > > > hci_setup_event_mask(hdev); > > > > > > - if (hdev->lmp_ver > 1) > > > + if (hdev->lmp_ver > 2) > > > hci_send_cmd(hdev, HCI_OP_READ_LOCAL_COMMANDS, 0, NULL); > > > > 0x00 is 1.0b and 0x01 is 1.1. So you are changing the check from 1.2 to > > 2.0. The command was introduced with 1.2 actually. > > Can we define in bluetooth.h something like: > > #define BLUETOOTH_LMP_VER_1.1 1 > #define BLUETOOTH_LMP_VER_1.2 2 yes, but just leave LMP out of it. Just do BLUETOOTH_VER_1_1 or similar. Even the . in the define will not work out. > > The only real change that needs to be done here is to check hci_ver > > instead of lmp_ver. This command is a HCI feature and not a LMP feature > > actually. > > Maybe same define for HCI_VER ? They are identical. So one is enough. They just have a different meaning. The LMP is air protocol version and HCI is host controller version. In most cases they are the same, but not have to be. Regards Marcel ^ permalink raw reply [flat|nested] 30+ messages in thread
* Re: 057c:3800 BlueFRITZ! Bluetooth Stick broken since 2.6.something 2011-11-21 9:13 ` Marcel Holtmann 2011-11-21 10:22 ` Andrei Emeltchenko @ 2011-11-21 10:35 ` Johan Hedberg 2011-11-21 13:04 ` Marcel Holtmann 1 sibling, 1 reply; 30+ messages in thread From: Johan Hedberg @ 2011-11-21 10:35 UTC (permalink / raw) To: Marcel Holtmann; +Cc: Andrei Emeltchenko, Michael Schmitt, linux-bluetooth Hi Marcel, On Mon, Nov 21, 2011, Marcel Holtmann wrote: > > > On Fri, Nov 18, 2011, Michael Schmitt wrote: > > > > < HCI Command: Read Local Version Information (0x04|0x0001) plen 0 > > > > > HCI Event: Command Complete (0x0e) plen 12 > > > > Read Local Version Information (0x04|0x0001) ncmd 1 > > > > status 0x00 > > > > HCI Version: 1.2 (0x2) HCI Revision: 0x2006 > > > > LMP Version: 1.2 (0x2) LMP Subversion: 0x1806 > > > > Manufacturer: AVM Berlin (31) > > > > > > Ok, so this is a 1.2 adapter. > > > > > > > < HCI Command: Read Local Supported Commands (0x04|0x0002) plen 0 > > > > > HCI Event: Command Status (0x0f) plen 4 > > > > Read Local Supported Commands (0x04|0x0002) status 0x01 ncmd 1 > > > > Error: Unknown HCI Command > > > > > > This is the reason why you're getting a timeout. Since the adapter > > > claims to support Bluetooth version 1.2 it should also support this HCI > > > command, so from that perspective it's not conforming to the > > > > Apparently we check for "Bluetooth Core Specification 1.1" > > > > Shall we change to: > > > > diff --git a/net/bluetooth/hci_event.c b/net/bluetooth/hci_event.c > > index f0fbb02..ed55b33 100644 > > --- a/net/bluetooth/hci_event.c > > +++ b/net/bluetooth/hci_event.c > > @@ -562,7 +562,7 @@ static void hci_setup(struct hci_dev *hdev) > > { > > hci_setup_event_mask(hdev); > > > > - if (hdev->lmp_ver > 1) > > + if (hdev->lmp_ver > 2) > > hci_send_cmd(hdev, HCI_OP_READ_LOCAL_COMMANDS, 0, NULL); > > 0x00 is 1.0b and 0x01 is 1.1. So you are changing the check from 1.2 to > 2.0. The command was introduced with 1.2 actually. > > The only real change that needs to be done here is to check hci_ver > instead of lmp_ver. This command is a HCI feature and not a LMP feature > actually. That doesn't help much with this particular dongle though since the LMP and HCI versions are the same. What I'd propose is the patch which I already attached to an earlier email in this thread and then either a quirk for this adapter or just generally ignoring the HCI_Read_Local_Commands failure status. Johan ^ permalink raw reply [flat|nested] 30+ messages in thread
* Re: 057c:3800 BlueFRITZ! Bluetooth Stick broken since 2.6.something 2011-11-21 10:35 ` Johan Hedberg @ 2011-11-21 13:04 ` Marcel Holtmann 2011-11-21 15:21 ` Johan Hedberg 0 siblings, 1 reply; 30+ messages in thread From: Marcel Holtmann @ 2011-11-21 13:04 UTC (permalink / raw) To: Johan Hedberg; +Cc: Andrei Emeltchenko, Michael Schmitt, linux-bluetooth Hi Johan, > > > > On Fri, Nov 18, 2011, Michael Schmitt wrote: > > > > > < HCI Command: Read Local Version Information (0x04|0x0001) plen 0 > > > > > > HCI Event: Command Complete (0x0e) plen 12 > > > > > Read Local Version Information (0x04|0x0001) ncmd 1 > > > > > status 0x00 > > > > > HCI Version: 1.2 (0x2) HCI Revision: 0x2006 > > > > > LMP Version: 1.2 (0x2) LMP Subversion: 0x1806 > > > > > Manufacturer: AVM Berlin (31) > > > > > > > > Ok, so this is a 1.2 adapter. > > > > > > > > > < HCI Command: Read Local Supported Commands (0x04|0x0002) plen 0 > > > > > > HCI Event: Command Status (0x0f) plen 4 > > > > > Read Local Supported Commands (0x04|0x0002) status 0x01 ncmd 1 > > > > > Error: Unknown HCI Command > > > > > > > > This is the reason why you're getting a timeout. Since the adapter > > > > claims to support Bluetooth version 1.2 it should also support this HCI > > > > command, so from that perspective it's not conforming to the > > > > > > Apparently we check for "Bluetooth Core Specification 1.1" > > > > > > Shall we change to: > > > > > > diff --git a/net/bluetooth/hci_event.c b/net/bluetooth/hci_event.c > > > index f0fbb02..ed55b33 100644 > > > --- a/net/bluetooth/hci_event.c > > > +++ b/net/bluetooth/hci_event.c > > > @@ -562,7 +562,7 @@ static void hci_setup(struct hci_dev *hdev) > > > { > > > hci_setup_event_mask(hdev); > > > > > > - if (hdev->lmp_ver > 1) > > > + if (hdev->lmp_ver > 2) > > > hci_send_cmd(hdev, HCI_OP_READ_LOCAL_COMMANDS, 0, NULL); > > > > 0x00 is 1.0b and 0x01 is 1.1. So you are changing the check from 1.2 to > > 2.0. The command was introduced with 1.2 actually. > > > > The only real change that needs to be done here is to check hci_ver > > instead of lmp_ver. This command is a HCI feature and not a LMP feature > > actually. > > That doesn't help much with this particular dongle though since the LMP > and HCI versions are the same. What I'd propose is the patch which I > already attached to an earlier email in this thread and then either a > quirk for this adapter or just generally ignoring the > HCI_Read_Local_Commands failure status. using lmp_ver instead of hci_ver is still a bug, but fair enough it is a different bug. I am fine just allowing Read_Local_Commands to fail. However that will serious limit some features since we have to be using the result more often in the future. But luckily that does not matter for 1.2 controller at all. Regards Marcel ^ permalink raw reply [flat|nested] 30+ messages in thread
* Re: 057c:3800 BlueFRITZ! Bluetooth Stick broken since 2.6.something 2011-11-21 13:04 ` Marcel Holtmann @ 2011-11-21 15:21 ` Johan Hedberg 0 siblings, 0 replies; 30+ messages in thread From: Johan Hedberg @ 2011-11-21 15:21 UTC (permalink / raw) To: Marcel Holtmann; +Cc: Andrei Emeltchenko, Michael Schmitt, linux-bluetooth Hi Marcel, On Mon, Nov 21, 2011, Marcel Holtmann wrote: > > That doesn't help much with this particular dongle though since the LMP > > and HCI versions are the same. What I'd propose is the patch which I > > already attached to an earlier email in this thread and then either a > > quirk for this adapter or just generally ignoring the > > HCI_Read_Local_Commands failure status. > > using lmp_ver instead of hci_ver is still a bug, but fair enough it is a > different bug. > > I am fine just allowing Read_Local_Commands to fail. However that will > serious limit some features since we have to be using the result more > often in the future. But luckily that does not matter for 1.2 controller > at all. Ok. I just sent two patches for this. I have a hunch these might also fix the recently reported "resume takes longer due to increased timeout" regression report. Johan ^ permalink raw reply [flat|nested] 30+ messages in thread
* Re: 057c:3800 BlueFRITZ! Bluetooth Stick broken since 2.6.something 2011-11-18 15:36 ` Johan Hedberg 2011-11-18 15:49 ` Michael Schmitt @ 2011-11-18 16:17 ` Michael Schmitt 1 sibling, 0 replies; 30+ messages in thread From: Michael Schmitt @ 2011-11-18 16:17 UTC (permalink / raw) To: linux-bluetooth Am 18.11.2011 16:36, schrieb Johan Hedberg: > Hi Michael, > > On Fri, Nov 18, 2011, Michael Schmitt wrote: >> adrastea:~# hcitool dev >> Devices: >> hci0 11:11:11:11:11:11 >> adrastea:~# hciconfig >> hci0: Type: BR/EDR Bus: USB >> BD Address: 11:11:11:11:11:11 ACL MTU: 678:8 SCO MTU: 48:10 >> UP RUNNING PSCAN ISCAN >> RX bytes:1461 acl:0 sco:0 events:44 errors:0 >> TX bytes:697 acl:0 sco:0 commands:44 errors:0 >> >> hci1: Type: BR/EDR Bus: USB >> BD Address: 00:04:0E:8C:E2:93 ACL MTU: 120:20 SCO MTU: 24:5 >> DOWN >> RX bytes:1086 acl:0 sco:0 events:39 errors:0 >> TX bytes:171 acl:0 sco:0 commands:39 errors:0 >> >> adrastea:~# hciconfig hci1 up >> Can't init device hci1: Connection timed out (110) >> adrastea:~# > I'm pretty sure we'll at least need to see the hcidump output for the > initialization sequence of this adapter (i.e. start hcidump before > calling hciconfig hci0 up) and show us the output. Which Bluetooth > version does this adapter support and how old is it? > > Johan I am not sure if this is the right version you were talking about, but here it is (from the squeeze box): mschmitt@sogo:~$ /usr/sbin/hciconfig -a hci0: Type: BR/EDR Bus: USB BD Address: 11:11:11:11:11:11 ACL MTU: 678:8 SCO MTU: 48:10 UP RUNNING PSCAN RX bytes:969 acl:0 sco:0 events:27 errors:0 TX bytes:361 acl:0 sco:0 commands:27 errors:0 Features: 0xbf 0xfe 0x8d 0x78 0x08 0x18 0x00 0x00 Packet type: DM1 DM3 DM5 DH1 DH3 DH5 HV1 HV2 HV3 Link policy: RSWITCH HOLD SNIFF PARK Link mode: SLAVE ACCEPT Name: 'sogo-0' Class: 0x4a0100 Service Classes: Networking, Capturing, Telephony Device Class: Computer, Uncategorized HCI Version: 1.2 (0x2) Revision: 0x1fe LMP Version: 1.2 (0x2) Subversion: 0x1fe Manufacturer: Integrated System Solution Corp. (57) greetings Michael ^ permalink raw reply [flat|nested] 30+ messages in thread
* 057c:3800 BlueFRITZ! Bluetooth Stick broken since 2.6.something @ 2013-07-18 13:26 Jörg Esser 2013-07-18 14:13 ` Marcel Holtmann 0 siblings, 1 reply; 30+ messages in thread From: Jörg Esser @ 2013-07-18 13:26 UTC (permalink / raw) To: linux-bluetooth Hi list, don´t know if it is wrong to post under the same topic which is more than one year old. Ref to it is here. http://www.spinics.net/lists/linux-bluetooth/msg18763.html There was never an answer to the latest question from Michael if there will be a solution. I also tried to get this to run with my latest kernel 3.10 under debian 7 without success. Will there be a solution or should I open my real trashbin?(other sticks are working so far for me) :) Let me know if you need more info´s on that. Thx, Joerg My syslog says: Jul 18 15:11:10 debian-capi kernel: [ 64.808373] usb 1-3: new full-speed USB device number 5 using ohci_hcd Jul 18 15:11:10 debian-capi kernel: [ 65.277828] usb 1-3: New USB device found, idVendor=057c, idProduct=3800 Jul 18 15:11:10 debian-capi kernel: [ 65.277834] usb 1-3: New USB device strings: Mfr=1, Product=2, SerialNumber=3 Jul 18 15:11:10 debian-capi kernel: [ 65.277838] usb 1-3: Product: Bluetooth Device Jul 18 15:11:10 debian-capi kernel: [ 65.277841] usb 1-3: Manufacturer: Bluetooth Device Jul 18 15:11:10 debian-capi kernel: [ 65.277844] usb 1-3: SerialNumber: CC1C8D0E0400 Jul 18 15:11:10 debian-capi bluetoothd[2199]: HCI dev 0 registered Jul 18 15:11:10 debian-capi bluetoothd[2199]: Listening for HCI events on hci0 Jul 18 15:11:11 debian-capi bluetoothd[2894]: Can't init device hci0: Invalid request code (56) debian-capi:~# lsusb -v -d 057c:3800 Bus 001 Device 005: ID 057c:3800 AVM GmbH BlueFRITZ! Bluetooth Stick Device Descriptor: bLength 18 bDescriptorType 1 bcdUSB 1.10 bDeviceClass 255 Vendor Specific Class bDeviceSubClass 255 Vendor Specific Subclass bDeviceProtocol 255 Vendor Specific Protocol bMaxPacketSize0 64 idVendor 0x057c AVM GmbH idProduct 0x3800 BlueFRITZ! Bluetooth Stick bcdDevice 15.00 iManufacturer 1 Bluetooth Device iProduct 2 Bluetooth Device iSerial 3 CC1C8D0E0400 bNumConfigurations 1 Configuration Descriptor: bLength 9 bDescriptorType 2 wTotalLength 177 bNumInterfaces 2 bConfigurationValue 1 iConfiguration 0 bmAttributes 0xa0 (Bus Powered) Remote Wakeup MaxPower 200mA Interface Descriptor: bLength 9 bDescriptorType 4 bInterfaceNumber 0 bAlternateSetting 0 bNumEndpoints 3 bInterfaceClass 255 Vendor Specific Class bInterfaceSubClass 255 Vendor Specific Subclass bInterfaceProtocol 255 Vendor Specific Protocol iInterface 0 Endpoint Descriptor: bLength 7 bDescriptorType 5 bEndpointAddress 0x81 EP 1 IN bmAttributes 3 Transfer Type Interrupt Synch Type None Usage Type Data wMaxPacketSize 0x0010 1x 16 bytes bInterval 1 Endpoint Descriptor: bLength 7 bDescriptorType 5 bEndpointAddress 0x82 EP 2 IN bmAttributes 2 Transfer Type Bulk Synch Type None Usage Type Data wMaxPacketSize 0x0040 1x 64 bytes bInterval 0 Endpoint Descriptor: bLength 7 bDescriptorType 5 bEndpointAddress 0x02 EP 2 OUT bmAttributes 2 Transfer Type Bulk Synch Type None Usage Type Data wMaxPacketSize 0x0040 1x 64 bytes bInterval 0 Interface Descriptor: bLength 9 bDescriptorType 4 bInterfaceNumber 1 bAlternateSetting 0 bNumEndpoints 2 bInterfaceClass 255 Vendor Specific Class bInterfaceSubClass 255 Vendor Specific Subclass bInterfaceProtocol 255 Vendor Specific Protocol iInterface 0 Endpoint Descriptor: bLength 7 bDescriptorType 5 bEndpointAddress 0x83 EP 3 IN bmAttributes 1 Transfer Type Isochronous Synch Type None Usage Type Data wMaxPacketSize 0x0000 1x 0 bytes bInterval 1 Endpoint Descriptor: bLength 7 bDescriptorType 5 bEndpointAddress 0x03 EP 3 OUT bmAttributes 1 Transfer Type Isochronous Synch Type None Usage Type Data wMaxPacketSize 0x0000 1x 0 bytes bInterval 1 Interface Descriptor: bLength 9 bDescriptorType 4 bInterfaceNumber 1 bAlternateSetting 1 bNumEndpoints 2 bInterfaceClass 255 Vendor Specific Class bInterfaceSubClass 255 Vendor Specific Subclass bInterfaceProtocol 255 Vendor Specific Protocol iInterface 0 Endpoint Descriptor: bLength 7 bDescriptorType 5 bEndpointAddress 0x83 EP 3 IN bmAttributes 1 Transfer Type Isochronous Synch Type None Usage Type Data wMaxPacketSize 0x0009 1x 9 bytes bInterval 1 Endpoint Descriptor: bLength 7 bDescriptorType 5 bEndpointAddress 0x03 EP 3 OUT bmAttributes 1 Transfer Type Isochronous Synch Type None Usage Type Data wMaxPacketSize 0x0009 1x 9 bytes bInterval 1 Interface Descriptor: bLength 9 bDescriptorType 4 bInterfaceNumber 1 bAlternateSetting 2 bNumEndpoints 2 bInterfaceClass 255 Vendor Specific Class bInterfaceSubClass 255 Vendor Specific Subclass bInterfaceProtocol 255 Vendor Specific Protocol iInterface 0 Endpoint Descriptor: bLength 7 bDescriptorType 5 bEndpointAddress 0x83 EP 3 IN bmAttributes 1 Transfer Type Isochronous Synch Type None Usage Type Data wMaxPacketSize 0x0011 1x 17 bytes bInterval 1 Endpoint Descriptor: bLength 7 bDescriptorType 5 bEndpointAddress 0x03 EP 3 OUT bmAttributes 1 Transfer Type Isochronous Synch Type None Usage Type Data wMaxPacketSize 0x0011 1x 17 bytes bInterval 1 Interface Descriptor: bLength 9 bDescriptorType 4 bInterfaceNumber 1 bAlternateSetting 3 bNumEndpoints 2 bInterfaceClass 255 Vendor Specific Class bInterfaceSubClass 255 Vendor Specific Subclass bInterfaceProtocol 255 Vendor Specific Protocol iInterface 0 Endpoint Descriptor: bLength 7 bDescriptorType 5 bEndpointAddress 0x83 EP 3 IN bmAttributes 1 Transfer Type Isochronous Synch Type None Usage Type Data wMaxPacketSize 0x0019 1x 25 bytes bInterval 1 Endpoint Descriptor: bLength 7 bDescriptorType 5 bEndpointAddress 0x03 EP 3 OUT bmAttributes 1 Transfer Type Isochronous Synch Type None Usage Type Data wMaxPacketSize 0x0019 1x 25 bytes bInterval 1 Interface Descriptor: bLength 9 bDescriptorType 4 bInterfaceNumber 1 bAlternateSetting 4 bNumEndpoints 2 bInterfaceClass 255 Vendor Specific Class bInterfaceSubClass 255 Vendor Specific Subclass bInterfaceProtocol 255 Vendor Specific Protocol iInterface 0 Endpoint Descriptor: bLength 7 bDescriptorType 5 bEndpointAddress 0x83 EP 3 IN bmAttributes 1 Transfer Type Isochronous Synch Type None Usage Type Data wMaxPacketSize 0x0021 1x 33 bytes bInterval 1 Endpoint Descriptor: bLength 7 bDescriptorType 5 bEndpointAddress 0x03 EP 3 OUT bmAttributes 1 Transfer Type Isochronous Synch Type None Usage Type Data wMaxPacketSize 0x0021 1x 33 bytes bInterval 1 Interface Descriptor: bLength 9 bDescriptorType 4 bInterfaceNumber 1 bAlternateSetting 5 bNumEndpoints 2 bInterfaceClass 255 Vendor Specific Class bInterfaceSubClass 255 Vendor Specific Subclass bInterfaceProtocol 255 Vendor Specific Protocol iInterface 0 Endpoint Descriptor: bLength 7 bDescriptorType 5 bEndpointAddress 0x83 EP 3 IN bmAttributes 1 Transfer Type Isochronous Synch Type None Usage Type Data wMaxPacketSize 0x0031 1x 49 bytes bInterval 1 Endpoint Descriptor: bLength 7 bDescriptorType 5 bEndpointAddress 0x03 EP 3 OUT bmAttributes 1 Transfer Type Isochronous Synch Type None Usage Type Data wMaxPacketSize 0x0031 1x 49 bytes bInterval 1 Device Status: 0x0000 (Bus Powered) debian-capi:~# ^ permalink raw reply [flat|nested] 30+ messages in thread
* Re: 057c:3800 BlueFRITZ! Bluetooth Stick broken since 2.6.something 2013-07-18 13:26 Jörg Esser @ 2013-07-18 14:13 ` Marcel Holtmann 2013-07-19 6:26 ` Jörg Esser 0 siblings, 1 reply; 30+ messages in thread From: Marcel Holtmann @ 2013-07-18 14:13 UTC (permalink / raw) To: Jörg Esser; +Cc: linux-bluetooth Hi Joerg, > don´t know if it is wrong to post under the same topic which is more than one year old. > Ref to it is here. > http://www.spinics.net/lists/linux-bluetooth/msg18763.html > There was never an answer to the latest question from Michael if there will be a solution. > > I also tried to get this to run with my latest kernel 3.10 under debian 7 without success. > Will there be a solution or should I open my real trashbin?(other sticks are working so far for me) :) > > Let me know if you need more info´s on that. > > Thx, > Joerg > > My syslog says: > Jul 18 15:11:10 debian-capi kernel: [ 64.808373] usb 1-3: new full-speed USB device number 5 using ohci_hcd > Jul 18 15:11:10 debian-capi kernel: [ 65.277828] usb 1-3: New USB device found, idVendor=057c, idProduct=3800 > Jul 18 15:11:10 debian-capi kernel: [ 65.277834] usb 1-3: New USB device strings: Mfr=1, Product=2, SerialNumber=3 > Jul 18 15:11:10 debian-capi kernel: [ 65.277838] usb 1-3: Product: Bluetooth Device > Jul 18 15:11:10 debian-capi kernel: [ 65.277841] usb 1-3: Manufacturer: Bluetooth Device > Jul 18 15:11:10 debian-capi kernel: [ 65.277844] usb 1-3: SerialNumber: CC1C8D0E0400 > Jul 18 15:11:10 debian-capi bluetoothd[2199]: HCI dev 0 registered > Jul 18 15:11:10 debian-capi bluetoothd[2199]: Listening for HCI events on hci0 > Jul 18 15:11:11 debian-capi bluetoothd[2894]: Can't init device hci0: Invalid request code (56) any chance you can run btmon and see if we have failing HCI commands during the setup phase. > debian-capi:~# lsusb -v -d 057c:3800 Can you include /sys/kernel/debug/usb/devices from this device. Regards Marcel ^ permalink raw reply [flat|nested] 30+ messages in thread
* Re: 057c:3800 BlueFRITZ! Bluetooth Stick broken since 2.6.something 2013-07-18 14:13 ` Marcel Holtmann @ 2013-07-19 6:26 ` Jörg Esser 2013-07-19 13:49 ` Marcel Holtmann 0 siblings, 1 reply; 30+ messages in thread From: Jörg Esser @ 2013-07-19 6:26 UTC (permalink / raw) To: Marcel Holtmann; +Cc: linux-bluetooth Marcel Holtmann schrieb: > Hi Joerg, > >> don´t know if it is wrong to post under the same topic which is more than one year old. >> Ref to it is here. >> http://www.spinics.net/lists/linux-bluetooth/msg18763.html >> There was never an answer to the latest question from Michael if there will be a solution. >> >> I also tried to get this to run with my latest kernel 3.10 under debian 7 without success. >> Will there be a solution or should I open my real trashbin?(other sticks are working so far for me) :) >> >> Let me know if you need more info´s on that. >> >> Thx, >> Joerg >> >> My syslog says: >> Jul 18 15:11:10 debian-capi kernel: [ 64.808373] usb 1-3: new full-speed USB device number 5 using ohci_hcd >> Jul 18 15:11:10 debian-capi kernel: [ 65.277828] usb 1-3: New USB device found, idVendor=057c, idProduct=3800 >> Jul 18 15:11:10 debian-capi kernel: [ 65.277834] usb 1-3: New USB device strings: Mfr=1, Product=2, SerialNumber=3 >> Jul 18 15:11:10 debian-capi kernel: [ 65.277838] usb 1-3: Product: Bluetooth Device >> Jul 18 15:11:10 debian-capi kernel: [ 65.277841] usb 1-3: Manufacturer: Bluetooth Device >> Jul 18 15:11:10 debian-capi kernel: [ 65.277844] usb 1-3: SerialNumber: CC1C8D0E0400 >> Jul 18 15:11:10 debian-capi bluetoothd[2199]: HCI dev 0 registered >> Jul 18 15:11:10 debian-capi bluetoothd[2199]: Listening for HCI events on hci0 >> Jul 18 15:11:11 debian-capi bluetoothd[2894]: Can't init device hci0: Invalid request code (56) > any chance you can run btmon and see if we have failing HCI commands during the setup phase. Sure! Here you are: debian-capi:~# btmon Bluetooth monitor ver 5.7 = New Index: 00:00:00:00:00:00 (BR/EDR,USB,hci0) [hci0] 0.025804 < HCI Command: Reset (0x03|0x0003) plen 0 [hci0] 0.031045 > HCI Event: Command Complete (0x0e) plen 4 [hci0] 0.037000 Reset (0x03|0x0003) ncmd 1 Status: Success (0x00) < HCI Command: Read Local Supported Feat.. (0x04|0x0003) plen 0 [hci0] 0.037209 > HCI Event: Command Complete (0x0e) plen 12 [hci0] 0.040740 Read Local Supported Features (0x04|0x0003) ncmd 1 Status: Success (0x00) Features: 0xff 0xff 0x05 0x00 0x18 0x18 0x00 0x00 3 slot packets 5 slot packets Encryption Slot offset Timing accuracy Role switch Hold mode Sniff mode Park state Power control requests Channel quality driven data rate (CQDDR) SCO link HV2 packets HV3 packets u-law log synchronous data A-law log synchronous data CVSD synchronous data Power control AFH capable slave AFH classification slave AFH capable master AFH classification master < HCI Command: Read Local Version Inform.. (0x04|0x0001) plen 0 [hci0] 0.041025 > HCI Event: Command Complete (0x0e) plen 12 [hci0] 0.043811 Read Local Version Information (0x04|0x0001) ncmd 1 Status: Success (0x00) HCI version: 2 - 0x2006 LMP version: 2 - 0x1806 Manufacturer: AVM Berlin (31) < HCI Command: Read BD ADDR (0x04|0x0009) plen 0 [hci0] 0.044100 > HCI Event: Command Complete (0x0e) plen 10 [hci0] 0.046722 Read BD ADDR (0x04|0x0009) ncmd 1 Status: Success (0x00) Address: 00:04:0E:8D:1C:CC (OUI 00-04-0E) < HCI Command: Read Buffer Size (0x04|0x0005) plen 0 [hci0] 0.046988 > HCI Event: Command Complete (0x0e) plen 11 [hci0] 0.050948 Read Buffer Size (0x04|0x0005) ncmd 1 Status: Success (0x00) ACL MTU: 120 ACL max packet: 20 SCO MTU: 24 SCO max packet: 5 < HCI Command: Read Class of Device (0x03|0x0023) plen 0 [hci0] 0.051235 > HCI Event: Command Complete (0x0e) plen 7 [hci0] 0.055000 Read Class of Device (0x03|0x0023) ncmd 1 Status: Success (0x00) Class: 0x000000 Major class: Miscellaneous Minor class: 0x00 < HCI Command: Read Local Name (0x03|0x0014) plen 0 [hci0] 0.055261 > HCI Event: Command Complete (0x0e) plen 252 [hci0] 0.092918 Read Local Name (0x03|0x0014) ncmd 1 Status: Success (0x00) Name: < HCI Command: Read Voice Setting (0x03|0x0025) plen 0 [hci0] 0.093212 > HCI Event: Command Complete (0x0e) plen 6 [hci0] 0.096713 Read Voice Setting (0x03|0x0025) ncmd 1 Status: Success (0x00) Setting: 0x0060 < HCI Command: Set Event Filter (0x03|0x0005) plen 1 [hci0] 0.096974 Type: 0x00 > HCI Event: Command Complete (0x0e) plen 4 [hci0] 0.101024 Set Event Filter (0x03|0x0005) ncmd 1 Status: Success (0x00) < HCI Command: Write Connection Accept T.. (0x03|0x0016) plen 2 [hci0] 0.101262 Timeout: 20000.000 msec (0x7d00) > HCI Event: Command Complete (0x0e) plen 4 [hci0] 0.105011 Write Connection Accept Timeout (0x03|0x0016) ncmd 1 Status: Success (0x00) < HCI Command: Read Page Scan Activity (0x03|0x001b) plen 0 [hci0] 0.105254 > HCI Event: Command Complete (0x0e) plen 8 [hci0] 0.108002 Read Page Scan Activity (0x03|0x001b) ncmd 1 Status: Success (0x00) Interval: 1280.000 msec (0x0800) Window: 11.250 msec (0x0012) < HCI Command: Read Page Scan Type (0x03|0x0046) plen 0 [hci0] 0.108255 > HCI Event: Command Complete (0x0e) plen 5 [hci0] 0.111710 Read Page Scan Type (0x03|0x0046) ncmd 1 Status: Success (0x00) Type: Standard Scan (0x00) < HCI Command: Set Event Mask (0x03|0x0001) plen 8 [hci0] 0.111960 Mask: 0x00001807fffbffff Inquiry Complete Inquiry Result Connection Complete Connection Request Disconnection Complete Authentication Complete Remote Name Request Complete Encryption Change Change Connection Link Key Complete Master Link Key Complete Read Remote Supported Features Complete Read Remote Version Information Complete QoS Setup Complete Command Complete Command Status Hardware Error Flush Occurred Role Change Mode Change Return Link Keys PIN Code Request Link Key Request Link Key Notification Loopback Command Data Buffer Overflow Max Slots Change Read Clock Offset Complete Connection Packet Type Changed QoS Violation Page Scan Mode Change Page Scan Repetition Mode Change Flow Specification Complete Inquiry Result with RSSI Read Remote Extended Features Complete Synchronous Connection Complete Synchronous Connection Changed > HCI Event: Command Complete (0x0e) plen 4 [hci0] 0.114810 Set Event Mask (0x03|0x0001) ncmd 1 Status: Success (0x00) < HCI Command: Read Local Supported Comm.. (0x04|0x0002) plen 0 [hci0] 0.114948 > HCI Event: Command Status (0x0f) plen 4 [hci0] 0.117791 Read Local Supported Commands (0x04|0x0002) ncmd 1 Status: Unknown HCI Command (0x01) < HCI Command: Reset (0x03|0x0003) plen 0 [hci0] 0.121133 > HCI Event: Command Complete (0x0e) plen 4 [hci0] 0.131017 Reset (0x03|0x0003) ncmd 1 Status: Success (0x00) < HCI Command: Read Local Supported Feat.. (0x04|0x0003) plen 0 [hci0] 0.131157 > HCI Event: Command Complete (0x0e) plen 12 [hci0] 0.134997 Read Local Supported Features (0x04|0x0003) ncmd 1 Status: Success (0x00) Features: 0xff 0xff 0x05 0x00 0x18 0x18 0x00 0x00 3 slot packets 5 slot packets Encryption Slot offset Timing accuracy Role switch Hold mode Sniff mode Park state Power control requests Channel quality driven data rate (CQDDR) SCO link HV2 packets HV3 packets u-law log synchronous data A-law log synchronous data CVSD synchronous data Power control AFH capable slave AFH classification slave AFH capable master AFH classification master < HCI Command: Read Local Version Inform.. (0x04|0x0001) plen 0 [hci0] 0.135164 > HCI Event: Command Complete (0x0e) plen 12 [hci0] 0.138030 Read Local Version Information (0x04|0x0001) ncmd 1 Status: Success (0x00) HCI version: 2 - 0x2006 LMP version: 2 - 0x1806 Manufacturer: AVM Berlin (31) < HCI Command: Read BD ADDR (0x04|0x0009) plen 0 [hci0] 0.138178 > HCI Event: Command Complete (0x0e) plen 10 [hci0] 0.141784 Read BD ADDR (0x04|0x0009) ncmd 1 Status: Success (0x00) Address: 00:04:0E:8D:1C:CC (OUI 00-04-0E) < HCI Command: Read Buffer Size (0x04|0x0005) plen 0 [hci0] 0.141965 > HCI Event: Command Complete (0x0e) plen 11 [hci0] 0.144741 Read Buffer Size (0x04|0x0005) ncmd 1 Status: Success (0x00) ACL MTU: 120 ACL max packet: 20 SCO MTU: 24 SCO max packet: 5 < HCI Command: Read Class of Device (0x03|0x0023) plen 0 [hci0] 0.144831 > HCI Event: Command Complete (0x0e) plen 7 [hci0] 0.148377 Read Class of Device (0x03|0x0023) ncmd 1 Status: Success (0x00) Class: 0x000000 Major class: Miscellaneous Minor class: 0x00 < HCI Command: Read Local Name (0x03|0x0014) plen 0 [hci0] 0.148518 > HCI Event: Command Complete (0x0e) plen 252 [hci0] 0.187913 Read Local Name (0x03|0x0014) ncmd 1 Status: Success (0x00) Name: < HCI Command: Read Voice Setting (0x03|0x0025) plen 0 [hci0] 0.188103 > HCI Event: Command Complete (0x0e) plen 6 [hci0] 0.191659 Read Voice Setting (0x03|0x0025) ncmd 1 Status: Success (0x00) Setting: 0x0060 < HCI Command: Set Event Filter (0x03|0x0005) plen 1 [hci0] 0.191790 Type: 0x00 > HCI Event: Command Complete (0x0e) plen 4 [hci0] 0.195844 Set Event Filter (0x03|0x0005) ncmd 1 Status: Success (0x00) < HCI Command: Write Connection Accept T.. (0x03|0x0016) plen 2 [hci0] 0.195971 Timeout: 20000.000 msec (0x7d00) > HCI Event: Command Complete (0x0e) plen 4 [hci0] 0.198667 Write Connection Accept Timeout (0x03|0x0016) ncmd 1 Status: Success (0x00) < HCI Command: Read Page Scan Activity (0x03|0x001b) plen 0 [hci0] 0.198911 > HCI Event: Command Complete (0x0e) plen 8 [hci0] 0.202899 Read Page Scan Activity (0x03|0x001b) ncmd 1 Status: Success (0x00) Interval: 1280.000 msec (0x0800) Window: 11.250 msec (0x0012) < HCI Command: Read Page Scan Type (0x03|0x0046) plen 0 [hci0] 0.203040 > HCI Event: Command Complete (0x0e) plen 5 [hci0] 0.206659 Read Page Scan Type (0x03|0x0046) ncmd 1 Status: Success (0x00) Type: Standard Scan (0x00) < HCI Command: Set Event Mask (0x03|0x0001) plen 8 [hci0] 0.206842 Mask: 0x00001807fffbffff Inquiry Complete Inquiry Result Connection Complete Connection Request Disconnection Complete Authentication Complete Remote Name Request Complete Encryption Change Change Connection Link Key Complete Master Link Key Complete Read Remote Supported Features Complete Read Remote Version Information Complete QoS Setup Complete Command Complete Command Status Hardware Error Flush Occurred Role Change Mode Change Return Link Keys PIN Code Request Link Key Request Link Key Notification Loopback Command Data Buffer Overflow Max Slots Change Read Clock Offset Complete Connection Packet Type Changed QoS Violation Page Scan Mode Change Page Scan Repetition Mode Change Flow Specification Complete Inquiry Result with RSSI Read Remote Extended Features Complete Synchronous Connection Complete Synchronous Connection Changed > HCI Event: Command Complete (0x0e) plen 4 [hci0] 0.209839 Set Event Mask (0x03|0x0001) ncmd 1 Status: Success (0x00) < HCI Command: Read Local Supported Comm.. (0x04|0x0002) plen 0 [hci0] 0.210014 > HCI Event: Command Status (0x0f) plen 4 [hci0] 0.217361 Read Local Supported Commands (0x04|0x0002) ncmd 1 Status: Unknown HCI Command (0x01) > >> debian-capi:~# lsusb -v -d 057c:3800 > Can you include /sys/kernel/debug/usb/devices from this device. After mounting debugfs with *mount -t debugfs none /sys/kernel/debug* I got this: debian-capi:~# cat /sys/kernel/debug/usb/devices T: Bus=02 Lev=00 Prnt=00 Port=00 Cnt=00 Dev#= 1 Spd=480 MxCh= 8 B: Alloc= 0/800 us ( 0%), #Int= 0, #Iso= 0 D: Ver= 2.00 Cls=09(hub ) Sub=00 Prot=00 MxPS=64 #Cfgs= 1 P: Vendor=1d6b ProdID=0002 Rev= 3.10 S: Manufacturer=Linux 3.10.1 ehci_hcd S: Product=EHCI Host Controller S: SerialNumber=0000:00:0b.0 C:* #Ifs= 1 Cfg#= 1 Atr=e0 MxPwr= 0mA I:* If#= 0 Alt= 0 #EPs= 1 Cls=09(hub ) Sub=00 Prot=00 Driver=hub E: Ad=81(I) Atr=03(Int.) MxPS= 4 Ivl=256ms T: Bus=01 Lev=00 Prnt=00 Port=00 Cnt=00 Dev#= 1 Spd=12 MxCh= 8 B: Alloc= 0/900 us ( 0%), #Int= 0, #Iso= 0 D: Ver= 1.10 Cls=09(hub ) Sub=00 Prot=00 MxPS=64 #Cfgs= 1 P: Vendor=1d6b ProdID=0001 Rev= 3.10 S: Manufacturer=Linux 3.10.1 ohci_hcd S: Product=OHCI Host Controller S: SerialNumber=0000:00:06.0 C:* #Ifs= 1 Cfg#= 1 Atr=e0 MxPwr= 0mA I:* If#= 0 Alt= 0 #EPs= 1 Cls=09(hub ) Sub=00 Prot=00 Driver=hub E: Ad=81(I) Atr=03(Int.) MxPS= 2 Ivl=255ms T: Bus=01 Lev=01 Prnt=01 Port=00 Cnt=01 Dev#= 2 Spd=12 MxCh= 0 D: Ver= 1.10 Cls=00(>ifc ) Sub=00 Prot=00 MxPS= 8 #Cfgs= 1 P: Vendor=80ee ProdID=0021 Rev= 1.00 S: Manufacturer=VirtualBox S: Product=USB Tablet C:* #Ifs= 1 Cfg#= 1 Atr=80 MxPwr=100mA I:* If#= 0 Alt= 0 #EPs= 1 Cls=03(HID ) Sub=00 Prot=00 Driver=usbhid E: Ad=81(I) Atr=03(Int.) MxPS= 6 Ivl=10ms T: Bus=01 Lev=01 Prnt=01 Port=01 Cnt=02 Dev#= 3 Spd=12 MxCh= 0 D: Ver= 1.10 Cls=02(comm.) Sub=00 Prot=00 MxPS= 8 #Cfgs= 1 P: Vendor=0675 ProdID=1688 Rev= 1.00 S: Manufacturer=USB ISDN TA S: Product=USB ISDN TA S: SerialNumber=USB ISDN TA C:* #Ifs= 2 Cfg#= 1 Atr=a0 MxPwr= 64mA I:* If#= 0 Alt= 0 #EPs= 0 Cls=02(comm.) Sub=80 Prot=ff Driver=(none) I: If#= 1 Alt= 0 #EPs= 0 Cls=0a(data ) Sub=00 Prot=ff Driver=HFC-S_USB I:* If#= 1 Alt= 1 #EPs= 8 Cls=0a(data ) Sub=00 Prot=ff Driver=HFC-S_USB E: Ad=05(O) Atr=01(Isoc) MxPS= 16 Ivl=1ms E: Ad=85(I) Atr=01(Isoc) MxPS= 16 Ivl=1ms E: Ad=06(O) Atr=01(Isoc) MxPS= 16 Ivl=1ms E: Ad=86(I) Atr=01(Isoc) MxPS= 16 Ivl=1ms E: Ad=07(O) Atr=01(Isoc) MxPS= 16 Ivl=1ms E: Ad=87(I) Atr=01(Isoc) MxPS= 16 Ivl=1ms E: Ad=08(O) Atr=01(Isoc) MxPS= 16 Ivl=1ms E: Ad=88(I) Atr=01(Isoc) MxPS= 16 Ivl=1ms I: If#= 1 Alt= 2 #EPs= 7 Cls=0a(data ) Sub=00 Prot=ff Driver=HFC-S_USB E: Ad=01(O) Atr=02(Bulk) MxPS= 64 Ivl=0ms E: Ad=81(I) Atr=03(Int.) MxPS= 64 Ivl=4ms E: Ad=02(O) Atr=02(Bulk) MxPS= 64 Ivl=0ms E: Ad=82(I) Atr=03(Int.) MxPS= 64 Ivl=4ms E: Ad=03(O) Atr=02(Bulk) MxPS= 64 Ivl=0ms E: Ad=83(I) Atr=03(Int.) MxPS= 64 Ivl=16ms E: Ad=84(I) Atr=03(Int.) MxPS= 64 Ivl=4ms I: If#= 1 Alt= 3 #EPs= 8 Cls=0a(data ) Sub=00 Prot=ff Driver=HFC-S_USB E: Ad=03(O) Atr=02(Bulk) MxPS= 64 Ivl=0ms E: Ad=83(I) Atr=02(Bulk) MxPS= 64 Ivl=0ms E: Ad=04(O) Atr=02(Bulk) MxPS= 64 Ivl=0ms E: Ad=84(I) Atr=02(Bulk) MxPS= 64 Ivl=0ms E: Ad=05(O) Atr=01(Isoc) MxPS= 16 Ivl=1ms E: Ad=85(I) Atr=01(Isoc) MxPS= 16 Ivl=1ms E: Ad=06(O) Atr=01(Isoc) MxPS= 16 Ivl=1ms E: Ad=86(I) Atr=01(Isoc) MxPS= 16 Ivl=1ms T: Bus=01 Lev=01 Prnt=01 Port=02 Cnt=03 Dev#= 8 Spd=12 MxCh= 0 D: Ver= 1.10 Cls=ff(vend.) Sub=ff Prot=ff MxPS=64 #Cfgs= 1 P: Vendor=057c ProdID=3800 Rev=15.00 S: Manufacturer=Bluetooth Device S: Product=Bluetooth Device S: SerialNumber=CC1C8D0E0400 C:* #Ifs= 2 Cfg#= 1 Atr=a0 MxPwr=200mA I:* If#= 0 Alt= 0 #EPs= 3 Cls=ff(vend.) Sub=ff Prot=ff Driver=btusb E: Ad=81(I) Atr=03(Int.) MxPS= 16 Ivl=1ms E: Ad=82(I) Atr=02(Bulk) MxPS= 64 Ivl=0ms E: Ad=02(O) Atr=02(Bulk) MxPS= 64 Ivl=0ms I:* If#= 1 Alt= 0 #EPs= 2 Cls=ff(vend.) Sub=ff Prot=ff Driver=btusb E: Ad=83(I) Atr=01(Isoc) MxPS= 0 Ivl=1ms E: Ad=03(O) Atr=01(Isoc) MxPS= 0 Ivl=1ms I: If#= 1 Alt= 1 #EPs= 2 Cls=ff(vend.) Sub=ff Prot=ff Driver=btusb E: Ad=83(I) Atr=01(Isoc) MxPS= 9 Ivl=1ms E: Ad=03(O) Atr=01(Isoc) MxPS= 9 Ivl=1ms I: If#= 1 Alt= 2 #EPs= 2 Cls=ff(vend.) Sub=ff Prot=ff Driver=btusb E: Ad=83(I) Atr=01(Isoc) MxPS= 17 Ivl=1ms E: Ad=03(O) Atr=01(Isoc) MxPS= 17 Ivl=1ms I: If#= 1 Alt= 3 #EPs= 2 Cls=ff(vend.) Sub=ff Prot=ff Driver=btusb E: Ad=83(I) Atr=01(Isoc) MxPS= 25 Ivl=1ms E: Ad=03(O) Atr=01(Isoc) MxPS= 25 Ivl=1ms I: If#= 1 Alt= 4 #EPs= 2 Cls=ff(vend.) Sub=ff Prot=ff Driver=btusb E: Ad=83(I) Atr=01(Isoc) MxPS= 33 Ivl=1ms E: Ad=03(O) Atr=01(Isoc) MxPS= 33 Ivl=1ms I: If#= 1 Alt= 5 #EPs= 2 Cls=ff(vend.) Sub=ff Prot=ff Driver=btusb E: Ad=83(I) Atr=01(Isoc) MxPS= 49 Ivl=1ms E: Ad=03(O) Atr=01(Isoc) MxPS= 49 Ivl=1ms debian-capi:~# Oh i forgot to mention that I run this under Virtualbox 4.2.16 with Windows7 64bit host. I hope that i still get support? If not I also can put this into some real hardware with latest kernel. -- Gruss, Joerg ^ permalink raw reply [flat|nested] 30+ messages in thread
* Re: 057c:3800 BlueFRITZ! Bluetooth Stick broken since 2.6.something 2013-07-19 6:26 ` Jörg Esser @ 2013-07-19 13:49 ` Marcel Holtmann 2013-07-19 16:20 ` Johan Hedberg 0 siblings, 1 reply; 30+ messages in thread From: Marcel Holtmann @ 2013-07-19 13:49 UTC (permalink / raw) To: Jörg Esser; +Cc: linux-bluetooth Hi Joerg, >>> don´t know if it is wrong to post under the same topic which is more than one year old. >>> Ref to it is here. >>> http://www.spinics.net/lists/linux-bluetooth/msg18763.html >>> There was never an answer to the latest question from Michael if there will be a solution. >>> >>> I also tried to get this to run with my latest kernel 3.10 under debian 7 without success. >>> Will there be a solution or should I open my real trashbin?(other sticks are working so far for me) :) >>> >>> Let me know if you need more info´s on that. >>> >>> Thx, >>> Joerg >>> >>> My syslog says: >>> Jul 18 15:11:10 debian-capi kernel: [ 64.808373] usb 1-3: new full-speed USB device number 5 using ohci_hcd >>> Jul 18 15:11:10 debian-capi kernel: [ 65.277828] usb 1-3: New USB device found, idVendor=057c, idProduct=3800 >>> Jul 18 15:11:10 debian-capi kernel: [ 65.277834] usb 1-3: New USB device strings: Mfr=1, Product=2, SerialNumber=3 >>> Jul 18 15:11:10 debian-capi kernel: [ 65.277838] usb 1-3: Product: Bluetooth Device >>> Jul 18 15:11:10 debian-capi kernel: [ 65.277841] usb 1-3: Manufacturer: Bluetooth Device >>> Jul 18 15:11:10 debian-capi kernel: [ 65.277844] usb 1-3: SerialNumber: CC1C8D0E0400 >>> Jul 18 15:11:10 debian-capi bluetoothd[2199]: HCI dev 0 registered >>> Jul 18 15:11:10 debian-capi bluetoothd[2199]: Listening for HCI events on hci0 >>> Jul 18 15:11:11 debian-capi bluetoothd[2894]: Can't init device hci0: Invalid request code (56) >> any chance you can run btmon and see if we have failing HCI commands during the setup phase. > Sure! Here you are: > > debian-capi:~# btmon > Bluetooth monitor ver 5.7 > = New Index: 00:00:00:00:00:00 (BR/EDR,USB,hci0) [hci0] 0.025804 > < HCI Command: Reset (0x03|0x0003) plen 0 [hci0] 0.031045 > > HCI Event: Command Complete (0x0e) plen 4 [hci0] 0.037000 > Reset (0x03|0x0003) ncmd 1 > Status: Success (0x00) > < HCI Command: Read Local Supported Feat.. (0x04|0x0003) plen 0 [hci0] 0.037209 > > HCI Event: Command Complete (0x0e) plen 12 [hci0] 0.040740 > Read Local Supported Features (0x04|0x0003) ncmd 1 > Status: Success (0x00) > Features: 0xff 0xff 0x05 0x00 0x18 0x18 0x00 0x00 > 3 slot packets > 5 slot packets > Encryption > Slot offset > Timing accuracy > Role switch > Hold mode > Sniff mode > Park state > Power control requests > Channel quality driven data rate (CQDDR) > SCO link > HV2 packets > HV3 packets > u-law log synchronous data > A-law log synchronous data > CVSD synchronous data > Power control > AFH capable slave > AFH classification slave > AFH capable master > AFH classification master > < HCI Command: Read Local Version Inform.. (0x04|0x0001) plen 0 [hci0] 0.041025 > > HCI Event: Command Complete (0x0e) plen 12 [hci0] 0.043811 > Read Local Version Information (0x04|0x0001) ncmd 1 > Status: Success (0x00) > HCI version: 2 - 0x2006 > LMP version: 2 - 0x1806 > Manufacturer: AVM Berlin (31) it declares itself here as Bluetooth 1.2 device. Which means it is the second generation of BlueFritz! USB device. <snip> > < HCI Command: Read Local Supported Comm.. (0x04|0x0002) plen 0 [hci0] 0.210014 > > HCI Event: Command Status (0x0f) plen 4 [hci0] 0.217361 > Read Local Supported Commands (0x04|0x0002) ncmd 1 > Status: Unknown HCI Command (0x01) And here is your failing command. Newer kernels have been strict with failing commands and will just abort the setup if anything goes wrong. Johan, we need to figure out on how to work around this one. Might just match for the manufacturer before sending the command. >>> debian-capi:~# lsusb -v -d 057c:3800 >> Can you include /sys/kernel/debug/usb/devices from this device. > > After mounting debugfs with > > *mount -t debugfs none /sys/kernel/debug* > > I got this: > > debian-capi:~# cat /sys/kernel/debug/usb/devices <snip> > T: Bus=01 Lev=01 Prnt=01 Port=02 Cnt=03 Dev#= 8 Spd=12 MxCh= 0 > D: Ver= 1.10 Cls=ff(vend.) Sub=ff Prot=ff MxPS=64 #Cfgs= 1 > P: Vendor=057c ProdID=3800 Rev=15.00 > S: Manufacturer=Bluetooth Device > S: Product=Bluetooth Device > S: SerialNumber=CC1C8D0E0400 > C:* #Ifs= 2 Cfg#= 1 Atr=a0 MxPwr=200mA > I:* If#= 0 Alt= 0 #EPs= 3 Cls=ff(vend.) Sub=ff Prot=ff Driver=btusb > E: Ad=81(I) Atr=03(Int.) MxPS= 16 Ivl=1ms > E: Ad=82(I) Atr=02(Bulk) MxPS= 64 Ivl=0ms > E: Ad=02(O) Atr=02(Bulk) MxPS= 64 Ivl=0ms > I:* If#= 1 Alt= 0 #EPs= 2 Cls=ff(vend.) Sub=ff Prot=ff Driver=btusb > E: Ad=83(I) Atr=01(Isoc) MxPS= 0 Ivl=1ms > E: Ad=03(O) Atr=01(Isoc) MxPS= 0 Ivl=1ms > I: If#= 1 Alt= 1 #EPs= 2 Cls=ff(vend.) Sub=ff Prot=ff Driver=btusb > E: Ad=83(I) Atr=01(Isoc) MxPS= 9 Ivl=1ms > E: Ad=03(O) Atr=01(Isoc) MxPS= 9 Ivl=1ms > I: If#= 1 Alt= 2 #EPs= 2 Cls=ff(vend.) Sub=ff Prot=ff Driver=btusb > E: Ad=83(I) Atr=01(Isoc) MxPS= 17 Ivl=1ms > E: Ad=03(O) Atr=01(Isoc) MxPS= 17 Ivl=1ms > I: If#= 1 Alt= 3 #EPs= 2 Cls=ff(vend.) Sub=ff Prot=ff Driver=btusb > E: Ad=83(I) Atr=01(Isoc) MxPS= 25 Ivl=1ms > E: Ad=03(O) Atr=01(Isoc) MxPS= 25 Ivl=1ms > I: If#= 1 Alt= 4 #EPs= 2 Cls=ff(vend.) Sub=ff Prot=ff Driver=btusb > E: Ad=83(I) Atr=01(Isoc) MxPS= 33 Ivl=1ms > E: Ad=03(O) Atr=01(Isoc) MxPS= 33 Ivl=1ms > I: If#= 1 Alt= 5 #EPs= 2 Cls=ff(vend.) Sub=ff Prot=ff Driver=btusb > E: Ad=83(I) Atr=01(Isoc) MxPS= 49 Ivl=1ms > E: Ad=03(O) Atr=01(Isoc) MxPS= 49 Ivl=1ms Sorry to make you jump through this hoop, but I needed to know which version of the dongle it is. The first version has its own driver. > debian-capi:~# > > Oh i forgot to mention that I run this under Virtualbox 4.2.16 with Windows7 64bit host. > I hope that i still get support? > If not I also can put this into some real hardware with latest kernel. I think the issue is pretty clear. Regards Marcel ^ permalink raw reply [flat|nested] 30+ messages in thread
* Re: 057c:3800 BlueFRITZ! Bluetooth Stick broken since 2.6.something 2013-07-19 13:49 ` Marcel Holtmann @ 2013-07-19 16:20 ` Johan Hedberg 2013-07-22 7:10 ` Jörg Esser 0 siblings, 1 reply; 30+ messages in thread From: Johan Hedberg @ 2013-07-19 16:20 UTC (permalink / raw) To: Marcel Holtmann; +Cc: Jörg Esser, linux-bluetooth Hi Marcel, On Fri, Jul 19, 2013, Marcel Holtmann wrote: > > > HCI Event: Command Complete (0x0e) plen 12 [hci0] 0.043811 > > Read Local Version Information (0x04|0x0001) ncmd 1 > > Status: Success (0x00) > > HCI version: 2 - 0x2006 > > LMP version: 2 - 0x1806 > > Manufacturer: AVM Berlin (31) > > it declares itself here as Bluetooth 1.2 device. Which means it is the > second generation of BlueFritz! USB device. > > <snip> > > > < HCI Command: Read Local Supported Comm.. (0x04|0x0002) plen 0 [hci0] 0.210014 > > > HCI Event: Command Status (0x0f) plen 4 [hci0] 0.217361 > > Read Local Supported Commands (0x04|0x0002) ncmd 1 > > Status: Unknown HCI Command (0x01) > > And here is your failing command. Newer kernels have been strict with > failing commands and will just abort the setup if anything goes wrong. > > Johan, we need to figure out on how to work around this one. Might > just match for the manufacturer before sending the command. Either that or a quirk based on the USB id. Wouldn't matching just the manufacturer be a bit problematic for any newer chips from this company, or they stopped doing Bluetooth dongles after this one? Johan ^ permalink raw reply [flat|nested] 30+ messages in thread
* Re: 057c:3800 BlueFRITZ! Bluetooth Stick broken since 2.6.something 2013-07-19 16:20 ` Johan Hedberg @ 2013-07-22 7:10 ` Jörg Esser 2013-07-22 14:22 ` Marcel Holtmann 0 siblings, 1 reply; 30+ messages in thread From: Jörg Esser @ 2013-07-22 7:10 UTC (permalink / raw) To: linux-bluetooth Johan Hedberg schrieb: > Hi Marcel, > > On Fri, Jul 19, 2013, Marcel Holtmann wrote: >>>> HCI Event: Command Complete (0x0e) plen 12 [hci0] 0.043811 >>> Read Local Version Information (0x04|0x0001) ncmd 1 >>> Status: Success (0x00) >>> HCI version: 2 - 0x2006 >>> LMP version: 2 - 0x1806 >>> Manufacturer: AVM Berlin (31) >> it declares itself here as Bluetooth 1.2 device. Which means it is the >> second generation of BlueFritz! USB device. >> >> <snip> >> >>> < HCI Command: Read Local Supported Comm.. (0x04|0x0002) plen 0 [hci0] 0.210014 >>>> HCI Event: Command Status (0x0f) plen 4 [hci0] 0.217361 >>> Read Local Supported Commands (0x04|0x0002) ncmd 1 >>> Status: Unknown HCI Command (0x01) >> And here is your failing command. Newer kernels have been strict with >> failing commands and will just abort the setup if anything goes wrong. >> >> Johan, we need to figure out on how to work around this one. Might >> just match for the manufacturer before sending the command. > Either that or a quirk based on the USB id. Wouldn't matching just the > manufacturer be a bit problematic for any newer chips from this company, > or they stopped doing Bluetooth dongles after this one? They stopped doing Bluetooth dongles after this one. I found no more Product with bluetooth on their website. The support from AVM endet on 01.12.2009. As I read here http://www.wehavemorefun.de/fritzbox/BlueFRITZ!_USB Should I open my trashbin? -- Gruss, Joerg ^ permalink raw reply [flat|nested] 30+ messages in thread
* Re: 057c:3800 BlueFRITZ! Bluetooth Stick broken since 2.6.something 2013-07-22 7:10 ` Jörg Esser @ 2013-07-22 14:22 ` Marcel Holtmann 2013-07-23 23:39 ` Johan Hedberg 0 siblings, 1 reply; 30+ messages in thread From: Marcel Holtmann @ 2013-07-22 14:22 UTC (permalink / raw) To: Jörg Esser; +Cc: linux-bluetooth Hi Johan, >>>>> HCI Event: Command Complete (0x0e) plen 12 [hci0] 0.043811 >>>> Read Local Version Information (0x04|0x0001) ncmd 1 >>>> Status: Success (0x00) >>>> HCI version: 2 - 0x2006 >>>> LMP version: 2 - 0x1806 >>>> Manufacturer: AVM Berlin (31) >>> it declares itself here as Bluetooth 1.2 device. Which means it is the >>> second generation of BlueFritz! USB device. >>> >>> <snip> >>> >>>> < HCI Command: Read Local Supported Comm.. (0x04|0x0002) plen 0 [hci0] 0.210014 >>>>> HCI Event: Command Status (0x0f) plen 4 [hci0] 0.217361 >>>> Read Local Supported Commands (0x04|0x0002) ncmd 1 >>>> Status: Unknown HCI Command (0x01) >>> And here is your failing command. Newer kernels have been strict with >>> failing commands and will just abort the setup if anything goes wrong. >>> >>> Johan, we need to figure out on how to work around this one. Might >>> just match for the manufacturer before sending the command. >> Either that or a quirk based on the USB id. Wouldn't matching just the >> manufacturer be a bit problematic for any newer chips from this company, >> or they stopped doing Bluetooth dongles after this one? > They stopped doing Bluetooth dongles after this one. I found no more Product with bluetooth on their website. > The support from AVM endet on 01.12.2009. > As I read here http://www.wehavemorefun.de/fritzbox/BlueFRITZ!_USB yes, they ever only made two products. And their baseband was based on Silicon Wave which actually got bought by Qualcomm if I remember this correctly. So going by the manufacturer id and adding a good comment into the code might make this work nicely again. Johan, if you prefer a quirk, then go for that one. > Should I open my trash bin? It is nice to have these old-timers around. And we do want to make them work. Knowing where they fail is actually pretty good. Then again, it is a Bluetooth 1.2 dongle and your are missing features like Secure Simple Pairing or Low Energy. Regards Marcel ^ permalink raw reply [flat|nested] 30+ messages in thread
* Re: 057c:3800 BlueFRITZ! Bluetooth Stick broken since 2.6.something 2013-07-22 14:22 ` Marcel Holtmann @ 2013-07-23 23:39 ` Johan Hedberg 2013-07-25 9:10 ` Jörg Esser 0 siblings, 1 reply; 30+ messages in thread From: Johan Hedberg @ 2013-07-23 23:39 UTC (permalink / raw) To: Marcel Holtmann; +Cc: Jörg Esser, linux-bluetooth [-- Attachment #1: Type: text/plain, Size: 2142 bytes --] Hi Marcel, On Mon, Jul 22, 2013, Marcel Holtmann wrote: > >>>>> HCI Event: Command Complete (0x0e) plen 12 [hci0] 0.043811 > >>>> Read Local Version Information (0x04|0x0001) ncmd 1 > >>>> Status: Success (0x00) > >>>> HCI version: 2 - 0x2006 > >>>> LMP version: 2 - 0x1806 > >>>> Manufacturer: AVM Berlin (31) > >>> it declares itself here as Bluetooth 1.2 device. Which means it is the > >>> second generation of BlueFritz! USB device. > >>> > >>> <snip> > >>> > >>>> < HCI Command: Read Local Supported Comm.. (0x04|0x0002) plen 0 [hci0] 0.210014 > >>>>> HCI Event: Command Status (0x0f) plen 4 [hci0] 0.217361 > >>>> Read Local Supported Commands (0x04|0x0002) ncmd 1 > >>>> Status: Unknown HCI Command (0x01) > >>> And here is your failing command. Newer kernels have been strict with > >>> failing commands and will just abort the setup if anything goes wrong. > >>> > >>> Johan, we need to figure out on how to work around this one. Might > >>> just match for the manufacturer before sending the command. > >> Either that or a quirk based on the USB id. Wouldn't matching just the > >> manufacturer be a bit problematic for any newer chips from this company, > >> or they stopped doing Bluetooth dongles after this one? > > They stopped doing Bluetooth dongles after this one. I found no more > > Product with bluetooth on their website. > > The support from AVM endet on 01.12.2009. > > As I read here http://www.wehavemorefun.de/fritzbox/BlueFRITZ!_USB > > yes, they ever only made two products. And their baseband was based on > Silicon Wave which actually got bought by Qualcomm if I remember this > correctly. So going by the manufacturer id and adding a good comment > into the code might make this work nicely again. > > Johan, if you prefer a quirk, then go for that one. Since we know that these are the only pieces of hardware that exist with this manufacturer id I think it's simplest to just use that instead of creating more code for this. Attached is a patch that still needs to be tested. It might e.g. reveal other commands that also fail with this hardware. Johan [-- Attachment #2: 0001-Bluetooth-Fix-HCI-init-for-BlueFRITZ-devices.patch --] [-- Type: text/plain, Size: 1222 bytes --] >From 6c95ba1014b1949543fb16d3999fa3ed58e0f0d5 Mon Sep 17 00:00:00 2001 From: Johan Hedberg <johan.hedberg@intel.com> Date: Wed, 24 Jul 2013 02:32:46 +0300 Subject: [PATCH] Bluetooth: Fix HCI init for BlueFRITZ! devices None of the BlueFRITZ! devices with manufacurer ID 31 (AVM Berlin) support HCI_Read_Local_Supported_Commands. It is safe to use the manufacturer ID (instead of e.g. a USB ID specific quirk) because the company never created any newer controllers. Signed-off-by: Johan Hedberg <johan.hedberg@intel.com> --- net/bluetooth/hci_core.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/net/bluetooth/hci_core.c b/net/bluetooth/hci_core.c index dc34bfa..d651aa7 100644 --- a/net/bluetooth/hci_core.c +++ b/net/bluetooth/hci_core.c @@ -513,7 +513,10 @@ static void hci_init2_req(struct hci_request *req, unsigned long opt) hci_setup_event_mask(req); - if (hdev->hci_ver > BLUETOOTH_VER_1_1) + /* AVM Berlin (31), aka "BlueFRITZ!", doesn't support the read + * local supported commands HCI command. + */ + if (hdev->manufacturer != 31 && hdev->hci_ver > BLUETOOTH_VER_1_1) hci_req_add(req, HCI_OP_READ_LOCAL_COMMANDS, 0, NULL); if (lmp_ssp_capable(hdev)) { -- 1.8.3.2 ^ permalink raw reply related [flat|nested] 30+ messages in thread
* Re: 057c:3800 BlueFRITZ! Bluetooth Stick broken since 2.6.something 2013-07-23 23:39 ` Johan Hedberg @ 2013-07-25 9:10 ` Jörg Esser 2013-07-25 10:55 ` Gustavo Padovan 2013-07-25 14:40 ` Marcel Holtmann 0 siblings, 2 replies; 30+ messages in thread From: Jörg Esser @ 2013-07-25 9:10 UTC (permalink / raw) To: linux-bluetooth Johan Hedberg schrieb: > Hi Marcel, > > On Mon, Jul 22, 2013, Marcel Holtmann wrote: >>>>>>> HCI Event: Command Complete (0x0e) plen 12 [hci0] 0.043811 >>>>>> Read Local Version Information (0x04|0x0001) ncmd 1 >>>>>> Status: Success (0x00) >>>>>> HCI version: 2 - 0x2006 >>>>>> LMP version: 2 - 0x1806 >>>>>> Manufacturer: AVM Berlin (31) >>>>> it declares itself here as Bluetooth 1.2 device. Which means it is the >>>>> second generation of BlueFritz! USB device. >>>>> >>>>> <snip> >>>>> >>>>>> < HCI Command: Read Local Supported Comm.. (0x04|0x0002) plen 0 [hci0] 0.210014 >>>>>>> HCI Event: Command Status (0x0f) plen 4 [hci0] 0.217361 >>>>>> Read Local Supported Commands (0x04|0x0002) ncmd 1 >>>>>> Status: Unknown HCI Command (0x01) >>>>> And here is your failing command. Newer kernels have been strict with >>>>> failing commands and will just abort the setup if anything goes wrong. >>>>> >>>>> Johan, we need to figure out on how to work around this one. Might >>>>> just match for the manufacturer before sending the command. >>>> Either that or a quirk based on the USB id. Wouldn't matching just the >>>> manufacturer be a bit problematic for any newer chips from this company, >>>> or they stopped doing Bluetooth dongles after this one? >>> They stopped doing Bluetooth dongles after this one. I found no more >>> Product with bluetooth on their website. >>> The support from AVM endet on 01.12.2009. >>> As I read herehttp://www.wehavemorefun.de/fritzbox/BlueFRITZ!_USB >> yes, they ever only made two products. And their baseband was based on >> Silicon Wave which actually got bought by Qualcomm if I remember this >> correctly. So going by the manufacturer id and adding a good comment >> into the code might make this work nicely again. >> >> Johan, if you prefer a quirk, then go for that one. > Since we know that these are the only pieces of hardware that exist with > this manufacturer id I think it's simplest to just use that instead of > creating more code for this. > > Attached is a patch that still needs to be tested. It might e.g. reveal > other commands that also fail with this hardware. > > Johan After appling your patch I can use the adapter. syslog says: Jul 24 16:21:31 debian-capi kernel: [ 153.864308] usb 1-3: new full-speed USB device number 4 using ohci_hcd Jul 24 16:21:31 debian-capi kernel: [ 154.120244] usb 1-3: New USB device found, idVendor=057c, idProduct=3800 Jul 24 16:21:31 debian-capi kernel: [ 154.120251] usb 1-3: New USB device strings: Mfr=1, Product=2, SerialNumber=3 Jul 24 16:21:31 debian-capi kernel: [ 154.120254] usb 1-3: Product: Bluetooth Device Jul 24 16:21:31 debian-capi kernel: [ 154.120257] usb 1-3: Manufacturer: Bluetooth Device Jul 24 16:21:31 debian-capi kernel: [ 154.120260] usb 1-3: SerialNumber: CC1C8D0E0400 Jul 24 16:21:31 debian-capi bluetoothd[2203]: HCI dev 0 registered Jul 24 16:21:31 debian-capi bluetoothd[2203]: Listening for HCI events on hci0 Jul 24 16:21:31 debian-capi kernel: [ 154.149949] usbcore: registered new interface driver btusb Jul 24 16:21:31 debian-capi bluetoothd[2203]: HCI dev 0 up Jul 24 16:21:31 debian-capi bluetoothd[2203]: Proximity GATT Reporter Driver: Operation not permitted (1) Jul 24 16:21:31 debian-capi bluetoothd[2203]: Unable to load keys to adapter_ops: Function not implemented (38) Jul 24 16:21:31 debian-capi bluetoothd[2203]: Adapter /org/bluez/2203/hci0 has been enabled after scanning with hcitool scan, it finds my BT Speaker btmon says: btmon Bluetooth monitor ver 5.7 = New Index: 00:00:00:00:00:00 (BR/EDR,USB,hci0) [hci0] 0.767719 < HCI Command: Reset (0x03|0x0003) plen 0 [hci0] 0.773725 > HCI Event: Command Complete (0x0e) plen 4 [hci0] 0.781039 Reset (0x03|0x0003) ncmd 1 Status: Success (0x00) < HCI Command: Read Local Supported Fea.. (0x04|0x0003) plen 0 [hci0] 0.781774 > HCI Event: Command Complete (0x0e) plen 12 [hci0] 0.785505 Read Local Supported Features (0x04|0x0003) ncmd 1 Status: Success (0x00) Features: 0xff 0xff 0x05 0x00 0x18 0x18 0x00 0x00 3 slot packets 5 slot packets Encryption Slot offset Timing accuracy Role switch Hold mode Sniff mode Park state Power control requests Channel quality driven data rate (CQDDR) SCO link HV2 packets HV3 packets u-law log synchronous data A-law log synchronous data CVSD synchronous data Power control AFH capable slave AFH classification slave AFH capable master AFH classification master < HCI Command: Read Local Version Infor.. (0x04|0x0001) plen 0 [hci0] 0.785575 > HCI Event: Command Complete (0x0e) plen 12 [hci0] 0.788286 Read Local Version Information (0x04|0x0001) ncmd 1 Status: Success (0x00) HCI version: 2 - 0x2006 LMP version: 2 - 0x1806 Manufacturer: AVM Berlin (31) < HCI Command: Read BD ADDR (0x04|0x0009) plen 0 [hci0] 0.788360 > HCI Event: Command Complete (0x0e) plen 10 [hci0] 0.791218 Read BD ADDR (0x04|0x0009) ncmd 1 Status: Success (0x00) Address: 00:04:0E:8D:1C:CC (OUI 00-04-0E) < HCI Command: Read Buffer Size (0x04|0x0005) plen 0 [hci0] 0.791858 > HCI Event: Command Complete (0x0e) plen 11 [hci0] 0.794638 Read Buffer Size (0x04|0x0005) ncmd 1 Status: Success (0x00) ACL MTU: 120 ACL max packet: 20 SCO MTU: 24 SCO max packet: 5 < HCI Command: Read Class of Device (0x03|0x0023) plen 0 [hci0] 0.794704 > HCI Event: Command Complete (0x0e) plen 7 [hci0] 0.798330 Read Class of Device (0x03|0x0023) ncmd 1 Status: Success (0x00) Class: 0x000000 Major class: Miscellaneous Minor class: 0x00 < HCI Command: Read Local Name (0x03|0x0014) plen 0 [hci0] 0.798394 > HCI Event: Command Complete (0x0e) plen 252 [hci0] 0.836309 Read Local Name (0x03|0x0014) ncmd 1 Status: Success (0x00) Name: < HCI Command: Read Voice Setting (0x03|0x0025) plen 0 [hci0] 0.836479 > HCI Event: Command Complete (0x0e) plen 6 [hci0] 0.839240 Read Voice Setting (0x03|0x0025) ncmd 1 Status: Success (0x00) Setting: 0x0060 < HCI Command: Set Event Filter (0x03|0x0005) plen 1 [hci0] 0.839409 Type: 0x00 > HCI Event: Command Complete (0x0e) plen 4 [hci0] 0.842197 Set Event Filter (0x03|0x0005) ncmd 1 Status: Success (0x00) < HCI Command: Write Connection Accept... (0x03|0x0016) plen 2 [hci0] 0.842365 Timeout: 20000.000 msec (0x7d00) > HCI Event: Command Complete (0x0e) plen 4 [hci0] 0.845015 Write Connection Accept Timeout (0x03|0x0016) ncmd 1 Status: Success (0x00) < HCI Command: Read Page Scan Activity (0x03|0x001b) plen 0 [hci0] 0.845182 > HCI Event: Command Complete (0x0e) plen 8 [hci0] 0.849023 Read Page Scan Activity (0x03|0x001b) ncmd 1 Status: Success (0x00) Interval: 1280.000 msec (0x0800) Window: 11.250 msec (0x0012) < HCI Command: Read Page Scan Type (0x03|0x0046) plen 0 [hci0] 0.849185 > HCI Event: Command Complete (0x0e) plen 5 [hci0] 0.853008 Read Page Scan Type (0x03|0x0046) ncmd 1 Status: Success (0x00) Type: Standard Scan (0x00) < HCI Command: Set Event Mask (0x03|0x0001) plen 8 [hci0] 0.853166 Mask: 0x00001807fffbffff Inquiry Complete Inquiry Result Connection Complete Connection Request Disconnection Complete Authentication Complete Remote Name Request Complete Encryption Change Change Connection Link Key Complete Master Link Key Complete Read Remote Supported Features Complete Read Remote Version Information Complete QoS Setup Complete Command Complete Command Status Hardware Error Flush Occurred Role Change Mode Change Return Link Keys PIN Code Request Link Key Request Link Key Notification Loopback Command Data Buffer Overflow Max Slots Change Read Clock Offset Complete Connection Packet Type Changed QoS Violation Page Scan Mode Change Page Scan Repetition Mode Change Flow Specification Complete Inquiry Result with RSSI Read Remote Extended Features Complete Synchronous Connection Complete Synchronous Connection Changed > HCI Event: Command Complete (0x0e) plen 4 [hci0] 0.857379 Set Event Mask (0x03|0x0001) ncmd 1 Status: Success (0x00) < HCI Command: Write Page Timeout (0x03|0x0018) plen 2 [hci0] 0.858038 Timeout: 5120.000 msec (0x2000) > HCI Event: Command Complete (0x0e) plen 4 [hci0] 0.859862 Write Page Timeout (0x03|0x0018) ncmd 1 Status: Success (0x00) < HCI Command: Read Stored Link Key (0x03|0x000d) plen 7 [hci0] 0.859932 Address: 00:00:00:00:00:00 (OUI 00-00-00) Read all: 0x01 > HCI Event: Command Complete (0x0e) plen 8 [hci0] 0.863627 Read Stored Link Key (0x03|0x000d) ncmd 1 Status: Success (0x00) Max num keys: 8 Num keys: 0 < HCI Command: Write Local Name (0x03|0x0013) plen 248 [hci0] 0.882030 Name: debian-capi-0 > HCI Event: Command Complete (0x0e) plen 4 [hci0] 0.885847 Write Local Name (0x03|0x0013) ncmd 1 Status: Success (0x00) < HCI Command: Set Event Mask (0x03|0x0001) plen 8 [hci0] 0.917369 Mask: 0x00001807fffbffff Inquiry Complete Inquiry Result Connection Complete Connection Request Disconnection Complete Authentication Complete Remote Name Request Complete Encryption Change Change Connection Link Key Complete Master Link Key Complete Read Remote Supported Features Complete Read Remote Version Information Complete QoS Setup Complete Command Complete Command Status Hardware Error Flush Occurred Role Change Mode Change Return Link Keys PIN Code Request Link Key Request Link Key Notification Loopback Command Data Buffer Overflow Max Slots Change Read Clock Offset Complete Connection Packet Type Changed QoS Violation Page Scan Mode Change Page Scan Repetition Mode Change Flow Specification Complete Inquiry Result with RSSI Read Remote Extended Features Complete Synchronous Connection Complete Synchronous Connection Changed > HCI Event: Command Complete (0x0e) plen 4 [hci0] 0.924343 Set Event Mask (0x03|0x0001) ncmd 1 Status: Success (0x00) < HCI Command: Write Default Link Polic.. (0x02|0x000f) plen 2 [hci0] 0.924523 Link policy: 0x000f > HCI Event: Command Status (0x0f) plen 4 [hci0] 0.928050 Write Default Link Policy Settings (0x02|0x000f) ncmd 1 Status: Unknown HCI Command (0x01) < HCI Command: Write Class of Device (0x03|0x0024) plen 3 [hci0] 0.928289 Class: 0x6e0100 Major class: Computer (desktop, notebook, PDA, organizers) Minor class: Uncategorized, code for device not assigned Networking (LAN, Ad hoc) Rendering (Printing, Speaker) Capturing (Scanner, Microphone) Audio (Speaker, Microphone, Headset) Telephony (Cordless telephony, Modem, Headset) > HCI Event: Command Complete (0x0e) plen 4 [hci0] 0.931044 Write Class of Device (0x03|0x0024) ncmd 1 Status: Success (0x00) < HCI Command: Write Scan Enable (0x03|0x001a) plen 1 [hci0] 0.931274 Scan enable: Page Scan (0x02) > HCI Event: Command Complete (0x0e) plen 4 [hci0] 0.934042 Write Scan Enable (0x03|0x001a) ncmd 1 Status: Success (0x00) < HCI Command: Read Local Name (0x03|0x0014) plen 0 [hci0] 0.934286 @ New Settings: 0x0093 powered connectable pairable br/edr > HCI Event: Command Complete (0x0e) plen 252 [hci0] 0.974894 Read Local Name (0x03|0x0014) ncmd 1 Status: Success (0x00) Name: debian-capi-0 < HCI Command: Read Scan Enable (0x03|0x0019) plen 0 [hci0] 0.975018 > HCI Event: Command Complete (0x0e) plen 5 [hci0] 0.978549 Read Scan Enable (0x03|0x0019) ncmd 1 Status: Success (0x00) Scan enable: Page Scan (0x02) < HCI Command: Inquiry (0x01|0x0001) plen 5 [hci0] 159.025599 Access code: 0x9e8b33 (General Inquiry) Length: 10.24s (0x08) Num responses: 0 > HCI Event: Command Status (0x0f) plen 4 [hci0] 159.033290 Inquiry (0x01|0x0001) ncmd 1 Status: Success (0x00) @ Discovering: 0x01 (0) > HCI Event: Inquiry Result (0x02) plen 15 [hci0] 165.868687 Num responses: 1 Address: A0:E9:DB:00:B5:BB (OUI A0-E9-DB) Page scan repetition mode: R1 (0x01) Page period mode: P2 (0x02) Page scan mode: Mandatory (0x00) Class: 0x240404 Major class: Audio/Video (headset, speaker, stereo, video, vcr) Minor class: 0x01 Rendering (Printing, Speaker) Audio (Speaker, Microphone, Headset) Clock offset: 0x14a9 @ Device Found: A0:E9:DB:00:B5:BB (0) rssi 0 flags 0x0003 04 0d 04 04 24 ....$ > HCI Event: Inquiry Complete (0x01) plen 1 [hci0] 169.281636 Status: Success (0x00) < HCI Command: Remote Name Request (0x01|0x0019) plen 10 [hci0] 169.282228 Address: A0:E9:DB:00:B5:BB (OUI A0-E9-DB) Page scan repetition mode: R1 (0x01) Page scan mode: Mandatory (0x00) Clock offset: 0x94a9 > HCI Event: Command Status (0x0f) plen 4 [hci0] 169.288567 Remote Name Request (0x01|0x0019) ncmd 1 Status: Success (0x00) > HCI Event: Remote Name Req Complete (0x07) plen 255 [hci0] 169.877365 Status: Success (0x00) Address: A0:E9:DB:00:B5:BB (OUI A0-E9-DB) Name: RAIKKO BT Speaker Playing Audio with mplayer -ao alsa:device=btheadset 05N\ The\ Race\ -\ .mp3 Also works nicely. Let me know if I should test anything else. Thx for this good and fast support. -- Gruss, Joerg ^ permalink raw reply [flat|nested] 30+ messages in thread
* Re: 057c:3800 BlueFRITZ! Bluetooth Stick broken since 2.6.something 2013-07-25 9:10 ` Jörg Esser @ 2013-07-25 10:55 ` Gustavo Padovan 2013-07-25 14:51 ` Marcel Holtmann 2013-07-25 14:40 ` Marcel Holtmann 1 sibling, 1 reply; 30+ messages in thread From: Gustavo Padovan @ 2013-07-25 10:55 UTC (permalink / raw) To: Jörg Esser; +Cc: linux-bluetooth Hi, * Jörg Esser <jackfritt@boh.de> [2013-07-25 11:10:33 +0200]: > Johan Hedberg schrieb: > >Hi Marcel, > > > >On Mon, Jul 22, 2013, Marcel Holtmann wrote: > >>>>>>>HCI Event: Command Complete (0x0e) plen 12 [hci0] 0.043811 > >>>>>> Read Local Version Information (0x04|0x0001) ncmd 1 > >>>>>> Status: Success (0x00) > >>>>>> HCI version: 2 - 0x2006 > >>>>>> LMP version: 2 - 0x1806 > >>>>>> Manufacturer: AVM Berlin (31) > >>>>>it declares itself here as Bluetooth 1.2 device. Which means it is the > >>>>>second generation of BlueFritz! USB device. > >>>>> > >>>>><snip> > >>>>> > >>>>>>< HCI Command: Read Local Supported Comm.. (0x04|0x0002) plen 0 [hci0] 0.210014 > >>>>>>>HCI Event: Command Status (0x0f) plen 4 [hci0] 0.217361 > >>>>>> Read Local Supported Commands (0x04|0x0002) ncmd 1 > >>>>>> Status: Unknown HCI Command (0x01) > >>>>>And here is your failing command. Newer kernels have been strict with > >>>>>failing commands and will just abort the setup if anything goes wrong. > >>>>> > >>>>>Johan, we need to figure out on how to work around this one. Might > >>>>>just match for the manufacturer before sending the command. > >>>>Either that or a quirk based on the USB id. Wouldn't matching just the > >>>>manufacturer be a bit problematic for any newer chips from this company, > >>>>or they stopped doing Bluetooth dongles after this one? > >>>They stopped doing Bluetooth dongles after this one. I found no more > >>>Product with bluetooth on their website. > >>>The support from AVM endet on 01.12.2009. > >>>As I read herehttp://www.wehavemorefun.de/fritzbox/BlueFRITZ!_USB > >>yes, they ever only made two products. And their baseband was based on > >>Silicon Wave which actually got bought by Qualcomm if I remember this > >>correctly. So going by the manufacturer id and adding a good comment > >>into the code might make this work nicely again. > >> > >>Johan, if you prefer a quirk, then go for that one. > >Since we know that these are the only pieces of hardware that exist with > >this manufacturer id I think it's simplest to just use that instead of > >creating more code for this. > > > >Attached is a patch that still needs to be tested. It might e.g. reveal > >other commands that also fail with this hardware. > > > >Johan > After appling your patch I can use the adapter. > syslog says: > Jul 24 16:21:31 debian-capi kernel: [ 153.864308] usb 1-3: new > full-speed USB device number 4 using ohci_hcd > Jul 24 16:21:31 debian-capi kernel: [ 154.120244] usb 1-3: New USB > device found, idVendor=057c, idProduct=3800 > Jul 24 16:21:31 debian-capi kernel: [ 154.120251] usb 1-3: New USB > device strings: Mfr=1, Product=2, SerialNumber=3 > Jul 24 16:21:31 debian-capi kernel: [ 154.120254] usb 1-3: Product: > Bluetooth Device > Jul 24 16:21:31 debian-capi kernel: [ 154.120257] usb 1-3: > Manufacturer: Bluetooth Device > Jul 24 16:21:31 debian-capi kernel: [ 154.120260] usb 1-3: > SerialNumber: CC1C8D0E0400 > Jul 24 16:21:31 debian-capi bluetoothd[2203]: HCI dev 0 registered > Jul 24 16:21:31 debian-capi bluetoothd[2203]: Listening for HCI > events on hci0 > Jul 24 16:21:31 debian-capi kernel: [ 154.149949] usbcore: > registered new interface driver btusb > Jul 24 16:21:31 debian-capi bluetoothd[2203]: HCI dev 0 up > Jul 24 16:21:31 debian-capi bluetoothd[2203]: Proximity GATT > Reporter Driver: Operation not permitted (1) > Jul 24 16:21:31 debian-capi bluetoothd[2203]: Unable to load keys to > adapter_ops: Function not implemented (38) > Jul 24 16:21:31 debian-capi bluetoothd[2203]: Adapter > /org/bluez/2203/hci0 has been enabled > > after scanning with hcitool scan, it finds my BT Speaker > btmon says: > > btmon > Bluetooth monitor ver 5.7 > = New Index: 00:00:00:00:00:00 (BR/EDR,USB,hci0) [hci0] 0.767719 > < HCI Command: Reset (0x03|0x0003) plen 0 [hci0] 0.773725 > > HCI Event: Command Complete (0x0e) plen 4 [hci0] 0.781039 > Reset (0x03|0x0003) ncmd 1 > Status: Success (0x00) > < HCI Command: Read Local Supported Fea.. (0x04|0x0003) plen 0 > [hci0] 0.781774 > > HCI Event: Command Complete (0x0e) plen 12 [hci0] 0.785505 > Read Local Supported Features (0x04|0x0003) ncmd 1 > Status: Success (0x00) > Features: 0xff 0xff 0x05 0x00 0x18 0x18 0x00 0x00 > 3 slot packets > 5 slot packets > Encryption > Slot offset > Timing accuracy > Role switch > Hold mode > Sniff mode > Park state > Power control requests > Channel quality driven data rate (CQDDR) > SCO link > HV2 packets > HV3 packets > u-law log synchronous data > A-law log synchronous data > CVSD synchronous data > Power control > AFH capable slave > AFH classification slave > AFH capable master > AFH classification master > < HCI Command: Read Local Version Infor.. (0x04|0x0001) plen 0 > [hci0] 0.785575 > > HCI Event: Command Complete (0x0e) plen 12 [hci0] 0.788286 > Read Local Version Information (0x04|0x0001) ncmd 1 > Status: Success (0x00) > HCI version: 2 - 0x2006 > LMP version: 2 - 0x1806 > Manufacturer: AVM Berlin (31) > < HCI Command: Read BD ADDR (0x04|0x0009) plen 0 [hci0] 0.788360 > > HCI Event: Command Complete (0x0e) plen 10 [hci0] 0.791218 > Read BD ADDR (0x04|0x0009) ncmd 1 > Status: Success (0x00) > Address: 00:04:0E:8D:1C:CC (OUI 00-04-0E) > < HCI Command: Read Buffer Size (0x04|0x0005) plen 0 [hci0] 0.791858 > > HCI Event: Command Complete (0x0e) plen 11 [hci0] 0.794638 > Read Buffer Size (0x04|0x0005) ncmd 1 > Status: Success (0x00) > ACL MTU: 120 ACL max packet: 20 > SCO MTU: 24 SCO max packet: 5 > < HCI Command: Read Class of Device (0x03|0x0023) plen 0 [hci0] 0.794704 > > HCI Event: Command Complete (0x0e) plen 7 [hci0] 0.798330 > Read Class of Device (0x03|0x0023) ncmd 1 > Status: Success (0x00) > Class: 0x000000 > Major class: Miscellaneous > Minor class: 0x00 > < HCI Command: Read Local Name (0x03|0x0014) plen 0 [hci0] 0.798394 > > HCI Event: Command Complete (0x0e) plen 252 [hci0] 0.836309 > Read Local Name (0x03|0x0014) ncmd 1 > Status: Success (0x00) > Name: > < HCI Command: Read Voice Setting (0x03|0x0025) plen 0 [hci0] 0.836479 > > HCI Event: Command Complete (0x0e) plen 6 [hci0] 0.839240 > Read Voice Setting (0x03|0x0025) ncmd 1 > Status: Success (0x00) > Setting: 0x0060 > < HCI Command: Set Event Filter (0x03|0x0005) plen 1 [hci0] 0.839409 > Type: 0x00 > > HCI Event: Command Complete (0x0e) plen 4 [hci0] 0.842197 > Set Event Filter (0x03|0x0005) ncmd 1 > Status: Success (0x00) > < HCI Command: Write Connection Accept... (0x03|0x0016) plen 2 > [hci0] 0.842365 > Timeout: 20000.000 msec (0x7d00) > > HCI Event: Command Complete (0x0e) plen 4 [hci0] 0.845015 > Write Connection Accept Timeout (0x03|0x0016) ncmd 1 > Status: Success (0x00) > < HCI Command: Read Page Scan Activity (0x03|0x001b) plen 0 [hci0] 0.845182 > > HCI Event: Command Complete (0x0e) plen 8 [hci0] 0.849023 > Read Page Scan Activity (0x03|0x001b) ncmd 1 > Status: Success (0x00) > Interval: 1280.000 msec (0x0800) > Window: 11.250 msec (0x0012) > < HCI Command: Read Page Scan Type (0x03|0x0046) plen 0 [hci0] 0.849185 > > HCI Event: Command Complete (0x0e) plen 5 [hci0] 0.853008 > Read Page Scan Type (0x03|0x0046) ncmd 1 > Status: Success (0x00) > Type: Standard Scan (0x00) > < HCI Command: Set Event Mask (0x03|0x0001) plen 8 [hci0] 0.853166 > Mask: 0x00001807fffbffff > Inquiry Complete > Inquiry Result > Connection Complete > Connection Request > Disconnection Complete > Authentication Complete > Remote Name Request Complete > Encryption Change > Change Connection Link Key Complete > Master Link Key Complete > Read Remote Supported Features Complete > Read Remote Version Information Complete > QoS Setup Complete > Command Complete > Command Status > Hardware Error > Flush Occurred > Role Change > Mode Change > Return Link Keys > PIN Code Request > Link Key Request > Link Key Notification > Loopback Command > Data Buffer Overflow > Max Slots Change > Read Clock Offset Complete > Connection Packet Type Changed > QoS Violation > Page Scan Mode Change > Page Scan Repetition Mode Change > Flow Specification Complete > Inquiry Result with RSSI > Read Remote Extended Features Complete > Synchronous Connection Complete > Synchronous Connection Changed > > HCI Event: Command Complete (0x0e) plen 4 [hci0] 0.857379 > Set Event Mask (0x03|0x0001) ncmd 1 > Status: Success (0x00) > < HCI Command: Write Page Timeout (0x03|0x0018) plen 2 [hci0] 0.858038 > Timeout: 5120.000 msec (0x2000) > > HCI Event: Command Complete (0x0e) plen 4 [hci0] 0.859862 > Write Page Timeout (0x03|0x0018) ncmd 1 > Status: Success (0x00) > < HCI Command: Read Stored Link Key (0x03|0x000d) plen 7 [hci0] 0.859932 > Address: 00:00:00:00:00:00 (OUI 00-00-00) > Read all: 0x01 > > HCI Event: Command Complete (0x0e) plen 8 [hci0] 0.863627 > Read Stored Link Key (0x03|0x000d) ncmd 1 > Status: Success (0x00) > Max num keys: 8 > Num keys: 0 > < HCI Command: Write Local Name (0x03|0x0013) plen 248 [hci0] 0.882030 > Name: debian-capi-0 > > HCI Event: Command Complete (0x0e) plen 4 [hci0] 0.885847 > Write Local Name (0x03|0x0013) ncmd 1 > Status: Success (0x00) > < HCI Command: Set Event Mask (0x03|0x0001) plen 8 [hci0] 0.917369 > Mask: 0x00001807fffbffff > Inquiry Complete > Inquiry Result > Connection Complete > Connection Request > Disconnection Complete > Authentication Complete > Remote Name Request Complete > Encryption Change > Change Connection Link Key Complete > Master Link Key Complete > Read Remote Supported Features Complete > Read Remote Version Information Complete > QoS Setup Complete > Command Complete > Command Status > Hardware Error > Flush Occurred > Role Change > Mode Change > Return Link Keys > PIN Code Request > Link Key Request > Link Key Notification > Loopback Command > Data Buffer Overflow > Max Slots Change > Read Clock Offset Complete > Connection Packet Type Changed > QoS Violation > Page Scan Mode Change > Page Scan Repetition Mode Change > Flow Specification Complete > Inquiry Result with RSSI > Read Remote Extended Features Complete > Synchronous Connection Complete > Synchronous Connection Changed > > HCI Event: Command Complete (0x0e) plen 4 [hci0] 0.924343 > Set Event Mask (0x03|0x0001) ncmd 1 > Status: Success (0x00) > < HCI Command: Write Default Link Polic.. (0x02|0x000f) plen 2 > [hci0] 0.924523 > Link policy: 0x000f > > HCI Event: Command Status (0x0f) plen 4 [hci0] 0.928050 > Write Default Link Policy Settings (0x02|0x000f) ncmd 1 > Status: Unknown HCI Command (0x01) > < HCI Command: Write Class of Device (0x03|0x0024) plen 3 [hci0] 0.928289 > Class: 0x6e0100 > Major class: Computer (desktop, notebook, PDA, organizers) > Minor class: Uncategorized, code for device not assigned > Networking (LAN, Ad hoc) > Rendering (Printing, Speaker) > Capturing (Scanner, Microphone) > Audio (Speaker, Microphone, Headset) > Telephony (Cordless telephony, Modem, Headset) > > HCI Event: Command Complete (0x0e) plen 4 [hci0] 0.931044 > Write Class of Device (0x03|0x0024) ncmd 1 > Status: Success (0x00) > < HCI Command: Write Scan Enable (0x03|0x001a) plen 1 [hci0] 0.931274 > Scan enable: Page Scan (0x02) > > HCI Event: Command Complete (0x0e) plen 4 [hci0] 0.934042 > Write Scan Enable (0x03|0x001a) ncmd 1 > Status: Success (0x00) > < HCI Command: Read Local Name (0x03|0x0014) plen 0 [hci0] 0.934286 > @ New Settings: 0x0093 > powered connectable pairable br/edr > > HCI Event: Command Complete (0x0e) plen 252 [hci0] 0.974894 > Read Local Name (0x03|0x0014) ncmd 1 > Status: Success (0x00) > Name: debian-capi-0 > < HCI Command: Read Scan Enable (0x03|0x0019) plen 0 [hci0] 0.975018 > > HCI Event: Command Complete (0x0e) plen 5 [hci0] 0.978549 > Read Scan Enable (0x03|0x0019) ncmd 1 > Status: Success (0x00) > Scan enable: Page Scan (0x02) > < HCI Command: Inquiry (0x01|0x0001) plen 5 [hci0] 159.025599 > Access code: 0x9e8b33 (General Inquiry) > Length: 10.24s (0x08) > Num responses: 0 > > HCI Event: Command Status (0x0f) plen 4 [hci0] 159.033290 > Inquiry (0x01|0x0001) ncmd 1 > Status: Success (0x00) > @ Discovering: 0x01 (0) > > HCI Event: Inquiry Result (0x02) plen 15 [hci0] 165.868687 > Num responses: 1 > Address: A0:E9:DB:00:B5:BB (OUI A0-E9-DB) > Page scan repetition mode: R1 (0x01) > Page period mode: P2 (0x02) > Page scan mode: Mandatory (0x00) > Class: 0x240404 > Major class: Audio/Video (headset, speaker, stereo, video, vcr) > Minor class: 0x01 > Rendering (Printing, Speaker) > Audio (Speaker, Microphone, Headset) > Clock offset: 0x14a9 > @ Device Found: A0:E9:DB:00:B5:BB (0) rssi 0 flags 0x0003 > 04 0d 04 04 24 ....$ > > HCI Event: Inquiry Complete (0x01) plen 1 [hci0] 169.281636 > Status: Success (0x00) > < HCI Command: Remote Name Request (0x01|0x0019) plen 10 [hci0] 169.282228 > Address: A0:E9:DB:00:B5:BB (OUI A0-E9-DB) > Page scan repetition mode: R1 (0x01) > Page scan mode: Mandatory (0x00) > Clock offset: 0x94a9 > > HCI Event: Command Status (0x0f) plen 4 [hci0] 169.288567 > Remote Name Request (0x01|0x0019) ncmd 1 > Status: Success (0x00) > > HCI Event: Remote Name Req Complete (0x07) plen 255 [hci0] 169.877365 > Status: Success (0x00) > Address: A0:E9:DB:00:B5:BB (OUI A0-E9-DB) > Name: RAIKKO BT Speaker > > > Playing Audio with > mplayer -ao alsa:device=btheadset 05N\ The\ Race\ -\ .mp3 > > Also works nicely. Let me know if I should test anything else. > > Thx for this good and fast support. Patch has been applied to bluetooth.git. Thanks everyone. Gustavo ^ permalink raw reply [flat|nested] 30+ messages in thread
* Re: 057c:3800 BlueFRITZ! Bluetooth Stick broken since 2.6.something 2013-07-25 10:55 ` Gustavo Padovan @ 2013-07-25 14:51 ` Marcel Holtmann 0 siblings, 0 replies; 30+ messages in thread From: Marcel Holtmann @ 2013-07-25 14:51 UTC (permalink / raw) To: Gustavo Padovan; +Cc: Jörg Esser, linux-bluetooth Hi Gustavo, >>>>>>>>> HCI Event: Command Complete (0x0e) plen 12 [hci0] 0.043811 >>>>>>>> Read Local Version Information (0x04|0x0001) ncmd 1 >>>>>>>> Status: Success (0x00) >>>>>>>> HCI version: 2 - 0x2006 >>>>>>>> LMP version: 2 - 0x1806 >>>>>>>> Manufacturer: AVM Berlin (31) >>>>>>> it declares itself here as Bluetooth 1.2 device. Which means it is the >>>>>>> second generation of BlueFritz! USB device. >>>>>>> >>>>>>> <snip> >>>>>>> >>>>>>>> < HCI Command: Read Local Supported Comm.. (0x04|0x0002) plen 0 [hci0] 0.210014 >>>>>>>>> HCI Event: Command Status (0x0f) plen 4 [hci0] 0.217361 >>>>>>>> Read Local Supported Commands (0x04|0x0002) ncmd 1 >>>>>>>> Status: Unknown HCI Command (0x01) >>>>>>> And here is your failing command. Newer kernels have been strict with >>>>>>> failing commands and will just abort the setup if anything goes wrong. >>>>>>> >>>>>>> Johan, we need to figure out on how to work around this one. Might >>>>>>> just match for the manufacturer before sending the command. >>>>>> Either that or a quirk based on the USB id. Wouldn't matching just the >>>>>> manufacturer be a bit problematic for any newer chips from this company, >>>>>> or they stopped doing Bluetooth dongles after this one? >>>>> They stopped doing Bluetooth dongles after this one. I found no more >>>>> Product with bluetooth on their website. >>>>> The support from AVM endet on 01.12.2009. >>>>> As I read herehttp://www.wehavemorefun.de/fritzbox/BlueFRITZ!_USB >>>> yes, they ever only made two products. And their baseband was based on >>>> Silicon Wave which actually got bought by Qualcomm if I remember this >>>> correctly. So going by the manufacturer id and adding a good comment >>>> into the code might make this work nicely again. >>>> >>>> Johan, if you prefer a quirk, then go for that one. >>> Since we know that these are the only pieces of hardware that exist with >>> this manufacturer id I think it's simplest to just use that instead of >>> creating more code for this. >>> >>> Attached is a patch that still needs to be tested. It might e.g. reveal >>> other commands that also fail with this hardware. >>> >>> Johan >> After appling your patch I can use the adapter. >> syslog says: >> Jul 24 16:21:31 debian-capi kernel: [ 153.864308] usb 1-3: new >> full-speed USB device number 4 using ohci_hcd >> Jul 24 16:21:31 debian-capi kernel: [ 154.120244] usb 1-3: New USB >> device found, idVendor=057c, idProduct=3800 >> Jul 24 16:21:31 debian-capi kernel: [ 154.120251] usb 1-3: New USB >> device strings: Mfr=1, Product=2, SerialNumber=3 >> Jul 24 16:21:31 debian-capi kernel: [ 154.120254] usb 1-3: Product: >> Bluetooth Device >> Jul 24 16:21:31 debian-capi kernel: [ 154.120257] usb 1-3: >> Manufacturer: Bluetooth Device >> Jul 24 16:21:31 debian-capi kernel: [ 154.120260] usb 1-3: >> SerialNumber: CC1C8D0E0400 >> Jul 24 16:21:31 debian-capi bluetoothd[2203]: HCI dev 0 registered >> Jul 24 16:21:31 debian-capi bluetoothd[2203]: Listening for HCI >> events on hci0 >> Jul 24 16:21:31 debian-capi kernel: [ 154.149949] usbcore: >> registered new interface driver btusb >> Jul 24 16:21:31 debian-capi bluetoothd[2203]: HCI dev 0 up >> Jul 24 16:21:31 debian-capi bluetoothd[2203]: Proximity GATT >> Reporter Driver: Operation not permitted (1) >> Jul 24 16:21:31 debian-capi bluetoothd[2203]: Unable to load keys to >> adapter_ops: Function not implemented (38) >> Jul 24 16:21:31 debian-capi bluetoothd[2203]: Adapter >> /org/bluez/2203/hci0 has been enabled >> >> after scanning with hcitool scan, it finds my BT Speaker >> btmon says: >> >> btmon >> Bluetooth monitor ver 5.7 >> = New Index: 00:00:00:00:00:00 (BR/EDR,USB,hci0) [hci0] 0.767719 >> < HCI Command: Reset (0x03|0x0003) plen 0 [hci0] 0.773725 >>> HCI Event: Command Complete (0x0e) plen 4 [hci0] 0.781039 >> Reset (0x03|0x0003) ncmd 1 >> Status: Success (0x00) >> < HCI Command: Read Local Supported Fea.. (0x04|0x0003) plen 0 >> [hci0] 0.781774 >>> HCI Event: Command Complete (0x0e) plen 12 [hci0] 0.785505 >> Read Local Supported Features (0x04|0x0003) ncmd 1 >> Status: Success (0x00) >> Features: 0xff 0xff 0x05 0x00 0x18 0x18 0x00 0x00 >> 3 slot packets >> 5 slot packets >> Encryption >> Slot offset >> Timing accuracy >> Role switch >> Hold mode >> Sniff mode >> Park state >> Power control requests >> Channel quality driven data rate (CQDDR) >> SCO link >> HV2 packets >> HV3 packets >> u-law log synchronous data >> A-law log synchronous data >> CVSD synchronous data >> Power control >> AFH capable slave >> AFH classification slave >> AFH capable master >> AFH classification master >> < HCI Command: Read Local Version Infor.. (0x04|0x0001) plen 0 >> [hci0] 0.785575 >>> HCI Event: Command Complete (0x0e) plen 12 [hci0] 0.788286 >> Read Local Version Information (0x04|0x0001) ncmd 1 >> Status: Success (0x00) >> HCI version: 2 - 0x2006 >> LMP version: 2 - 0x1806 >> Manufacturer: AVM Berlin (31) >> < HCI Command: Read BD ADDR (0x04|0x0009) plen 0 [hci0] 0.788360 >>> HCI Event: Command Complete (0x0e) plen 10 [hci0] 0.791218 >> Read BD ADDR (0x04|0x0009) ncmd 1 >> Status: Success (0x00) >> Address: 00:04:0E:8D:1C:CC (OUI 00-04-0E) >> < HCI Command: Read Buffer Size (0x04|0x0005) plen 0 [hci0] 0.791858 >>> HCI Event: Command Complete (0x0e) plen 11 [hci0] 0.794638 >> Read Buffer Size (0x04|0x0005) ncmd 1 >> Status: Success (0x00) >> ACL MTU: 120 ACL max packet: 20 >> SCO MTU: 24 SCO max packet: 5 >> < HCI Command: Read Class of Device (0x03|0x0023) plen 0 [hci0] 0.794704 >>> HCI Event: Command Complete (0x0e) plen 7 [hci0] 0.798330 >> Read Class of Device (0x03|0x0023) ncmd 1 >> Status: Success (0x00) >> Class: 0x000000 >> Major class: Miscellaneous >> Minor class: 0x00 >> < HCI Command: Read Local Name (0x03|0x0014) plen 0 [hci0] 0.798394 >>> HCI Event: Command Complete (0x0e) plen 252 [hci0] 0.836309 >> Read Local Name (0x03|0x0014) ncmd 1 >> Status: Success (0x00) >> Name: >> < HCI Command: Read Voice Setting (0x03|0x0025) plen 0 [hci0] 0.836479 >>> HCI Event: Command Complete (0x0e) plen 6 [hci0] 0.839240 >> Read Voice Setting (0x03|0x0025) ncmd 1 >> Status: Success (0x00) >> Setting: 0x0060 >> < HCI Command: Set Event Filter (0x03|0x0005) plen 1 [hci0] 0.839409 >> Type: 0x00 >>> HCI Event: Command Complete (0x0e) plen 4 [hci0] 0.842197 >> Set Event Filter (0x03|0x0005) ncmd 1 >> Status: Success (0x00) >> < HCI Command: Write Connection Accept... (0x03|0x0016) plen 2 >> [hci0] 0.842365 >> Timeout: 20000.000 msec (0x7d00) >>> HCI Event: Command Complete (0x0e) plen 4 [hci0] 0.845015 >> Write Connection Accept Timeout (0x03|0x0016) ncmd 1 >> Status: Success (0x00) >> < HCI Command: Read Page Scan Activity (0x03|0x001b) plen 0 [hci0] 0.845182 >>> HCI Event: Command Complete (0x0e) plen 8 [hci0] 0.849023 >> Read Page Scan Activity (0x03|0x001b) ncmd 1 >> Status: Success (0x00) >> Interval: 1280.000 msec (0x0800) >> Window: 11.250 msec (0x0012) >> < HCI Command: Read Page Scan Type (0x03|0x0046) plen 0 [hci0] 0.849185 >>> HCI Event: Command Complete (0x0e) plen 5 [hci0] 0.853008 >> Read Page Scan Type (0x03|0x0046) ncmd 1 >> Status: Success (0x00) >> Type: Standard Scan (0x00) >> < HCI Command: Set Event Mask (0x03|0x0001) plen 8 [hci0] 0.853166 >> Mask: 0x00001807fffbffff >> Inquiry Complete >> Inquiry Result >> Connection Complete >> Connection Request >> Disconnection Complete >> Authentication Complete >> Remote Name Request Complete >> Encryption Change >> Change Connection Link Key Complete >> Master Link Key Complete >> Read Remote Supported Features Complete >> Read Remote Version Information Complete >> QoS Setup Complete >> Command Complete >> Command Status >> Hardware Error >> Flush Occurred >> Role Change >> Mode Change >> Return Link Keys >> PIN Code Request >> Link Key Request >> Link Key Notification >> Loopback Command >> Data Buffer Overflow >> Max Slots Change >> Read Clock Offset Complete >> Connection Packet Type Changed >> QoS Violation >> Page Scan Mode Change >> Page Scan Repetition Mode Change >> Flow Specification Complete >> Inquiry Result with RSSI >> Read Remote Extended Features Complete >> Synchronous Connection Complete >> Synchronous Connection Changed >>> HCI Event: Command Complete (0x0e) plen 4 [hci0] 0.857379 >> Set Event Mask (0x03|0x0001) ncmd 1 >> Status: Success (0x00) >> < HCI Command: Write Page Timeout (0x03|0x0018) plen 2 [hci0] 0.858038 >> Timeout: 5120.000 msec (0x2000) >>> HCI Event: Command Complete (0x0e) plen 4 [hci0] 0.859862 >> Write Page Timeout (0x03|0x0018) ncmd 1 >> Status: Success (0x00) >> < HCI Command: Read Stored Link Key (0x03|0x000d) plen 7 [hci0] 0.859932 >> Address: 00:00:00:00:00:00 (OUI 00-00-00) >> Read all: 0x01 >>> HCI Event: Command Complete (0x0e) plen 8 [hci0] 0.863627 >> Read Stored Link Key (0x03|0x000d) ncmd 1 >> Status: Success (0x00) >> Max num keys: 8 >> Num keys: 0 >> < HCI Command: Write Local Name (0x03|0x0013) plen 248 [hci0] 0.882030 >> Name: debian-capi-0 >>> HCI Event: Command Complete (0x0e) plen 4 [hci0] 0.885847 >> Write Local Name (0x03|0x0013) ncmd 1 >> Status: Success (0x00) >> < HCI Command: Set Event Mask (0x03|0x0001) plen 8 [hci0] 0.917369 >> Mask: 0x00001807fffbffff >> Inquiry Complete >> Inquiry Result >> Connection Complete >> Connection Request >> Disconnection Complete >> Authentication Complete >> Remote Name Request Complete >> Encryption Change >> Change Connection Link Key Complete >> Master Link Key Complete >> Read Remote Supported Features Complete >> Read Remote Version Information Complete >> QoS Setup Complete >> Command Complete >> Command Status >> Hardware Error >> Flush Occurred >> Role Change >> Mode Change >> Return Link Keys >> PIN Code Request >> Link Key Request >> Link Key Notification >> Loopback Command >> Data Buffer Overflow >> Max Slots Change >> Read Clock Offset Complete >> Connection Packet Type Changed >> QoS Violation >> Page Scan Mode Change >> Page Scan Repetition Mode Change >> Flow Specification Complete >> Inquiry Result with RSSI >> Read Remote Extended Features Complete >> Synchronous Connection Complete >> Synchronous Connection Changed >>> HCI Event: Command Complete (0x0e) plen 4 [hci0] 0.924343 >> Set Event Mask (0x03|0x0001) ncmd 1 >> Status: Success (0x00) >> < HCI Command: Write Default Link Polic.. (0x02|0x000f) plen 2 >> [hci0] 0.924523 >> Link policy: 0x000f >>> HCI Event: Command Status (0x0f) plen 4 [hci0] 0.928050 >> Write Default Link Policy Settings (0x02|0x000f) ncmd 1 >> Status: Unknown HCI Command (0x01) >> < HCI Command: Write Class of Device (0x03|0x0024) plen 3 [hci0] 0.928289 >> Class: 0x6e0100 >> Major class: Computer (desktop, notebook, PDA, organizers) >> Minor class: Uncategorized, code for device not assigned >> Networking (LAN, Ad hoc) >> Rendering (Printing, Speaker) >> Capturing (Scanner, Microphone) >> Audio (Speaker, Microphone, Headset) >> Telephony (Cordless telephony, Modem, Headset) >>> HCI Event: Command Complete (0x0e) plen 4 [hci0] 0.931044 >> Write Class of Device (0x03|0x0024) ncmd 1 >> Status: Success (0x00) >> < HCI Command: Write Scan Enable (0x03|0x001a) plen 1 [hci0] 0.931274 >> Scan enable: Page Scan (0x02) >>> HCI Event: Command Complete (0x0e) plen 4 [hci0] 0.934042 >> Write Scan Enable (0x03|0x001a) ncmd 1 >> Status: Success (0x00) >> < HCI Command: Read Local Name (0x03|0x0014) plen 0 [hci0] 0.934286 >> @ New Settings: 0x0093 >> powered connectable pairable br/edr >>> HCI Event: Command Complete (0x0e) plen 252 [hci0] 0.974894 >> Read Local Name (0x03|0x0014) ncmd 1 >> Status: Success (0x00) >> Name: debian-capi-0 >> < HCI Command: Read Scan Enable (0x03|0x0019) plen 0 [hci0] 0.975018 >>> HCI Event: Command Complete (0x0e) plen 5 [hci0] 0.978549 >> Read Scan Enable (0x03|0x0019) ncmd 1 >> Status: Success (0x00) >> Scan enable: Page Scan (0x02) >> < HCI Command: Inquiry (0x01|0x0001) plen 5 [hci0] 159.025599 >> Access code: 0x9e8b33 (General Inquiry) >> Length: 10.24s (0x08) >> Num responses: 0 >>> HCI Event: Command Status (0x0f) plen 4 [hci0] 159.033290 >> Inquiry (0x01|0x0001) ncmd 1 >> Status: Success (0x00) >> @ Discovering: 0x01 (0) >>> HCI Event: Inquiry Result (0x02) plen 15 [hci0] 165.868687 >> Num responses: 1 >> Address: A0:E9:DB:00:B5:BB (OUI A0-E9-DB) >> Page scan repetition mode: R1 (0x01) >> Page period mode: P2 (0x02) >> Page scan mode: Mandatory (0x00) >> Class: 0x240404 >> Major class: Audio/Video (headset, speaker, stereo, video, vcr) >> Minor class: 0x01 >> Rendering (Printing, Speaker) >> Audio (Speaker, Microphone, Headset) >> Clock offset: 0x14a9 >> @ Device Found: A0:E9:DB:00:B5:BB (0) rssi 0 flags 0x0003 >> 04 0d 04 04 24 ....$ >>> HCI Event: Inquiry Complete (0x01) plen 1 [hci0] 169.281636 >> Status: Success (0x00) >> < HCI Command: Remote Name Request (0x01|0x0019) plen 10 [hci0] 169.282228 >> Address: A0:E9:DB:00:B5:BB (OUI A0-E9-DB) >> Page scan repetition mode: R1 (0x01) >> Page scan mode: Mandatory (0x00) >> Clock offset: 0x94a9 >>> HCI Event: Command Status (0x0f) plen 4 [hci0] 169.288567 >> Remote Name Request (0x01|0x0019) ncmd 1 >> Status: Success (0x00) >>> HCI Event: Remote Name Req Complete (0x07) plen 255 [hci0] 169.877365 >> Status: Success (0x00) >> Address: A0:E9:DB:00:B5:BB (OUI A0-E9-DB) >> Name: RAIKKO BT Speaker >> >> >> Playing Audio with >> mplayer -ao alsa:device=btheadset 05N\ The\ Race\ -\ .mp3 >> >> Also works nicely. Let me know if I should test anything else. >> >> Thx for this good and fast support. > > Patch has been applied to bluetooth.git. Thanks everyone. can you please explain to me why the important part of the btmon trace is not part of the commit message. I mentioned this before that patches that go in after the merge window closes especially are suppose to have as much information as possible and we should record as much information about the bug as possible. If I ever want to figure out with what error code the BlueFritz! failed this command, I have to dig into the mailing list archive to hopefully find it. This is all silly. We can be plenty verbose in the commit messages. And you as maintainer need to enforce this. Since Johan send this as a test patch, this is a bit premature to just apply it. You could have at least waited until he send a dedicated patch and me complaining that the btmon trace was missing in the commit message. I am so not happy about just applying this patch and sending out a pull request minutes later. Regards Marcel ^ permalink raw reply [flat|nested] 30+ messages in thread
* Re: 057c:3800 BlueFRITZ! Bluetooth Stick broken since 2.6.something 2013-07-25 9:10 ` Jörg Esser 2013-07-25 10:55 ` Gustavo Padovan @ 2013-07-25 14:40 ` Marcel Holtmann 1 sibling, 0 replies; 30+ messages in thread From: Marcel Holtmann @ 2013-07-25 14:40 UTC (permalink / raw) To: Jörg Esser; +Cc: linux-bluetooth Hi Johan, >>>>>>>> HCI Event: Command Complete (0x0e) plen 12 [hci0] 0.043811 >>>>>>> Read Local Version Information (0x04|0x0001) ncmd 1 >>>>>>> Status: Success (0x00) >>>>>>> HCI version: 2 - 0x2006 >>>>>>> LMP version: 2 - 0x1806 >>>>>>> Manufacturer: AVM Berlin (31) >>>>>> it declares itself here as Bluetooth 1.2 device. Which means it is the >>>>>> second generation of BlueFritz! USB device. >>>>>> >>>>>> <snip> >>>>>> >>>>>>> < HCI Command: Read Local Supported Comm.. (0x04|0x0002) plen 0 [hci0] 0.210014 >>>>>>>> HCI Event: Command Status (0x0f) plen 4 [hci0] 0.217361 >>>>>>> Read Local Supported Commands (0x04|0x0002) ncmd 1 >>>>>>> Status: Unknown HCI Command (0x01) >>>>>> And here is your failing command. Newer kernels have been strict with >>>>>> failing commands and will just abort the setup if anything goes wrong. >>>>>> >>>>>> Johan, we need to figure out on how to work around this one. Might >>>>>> just match for the manufacturer before sending the command. >>>>> Either that or a quirk based on the USB id. Wouldn't matching just the >>>>> manufacturer be a bit problematic for any newer chips from this company, >>>>> or they stopped doing Bluetooth dongles after this one? >>>> They stopped doing Bluetooth dongles after this one. I found no more >>>> Product with bluetooth on their website. >>>> The support from AVM endet on 01.12.2009. >>>> As I read herehttp://www.wehavemorefun.de/fritzbox/BlueFRITZ!_USB >>> yes, they ever only made two products. And their baseband was based on >>> Silicon Wave which actually got bought by Qualcomm if I remember this >>> correctly. So going by the manufacturer id and adding a good comment >>> into the code might make this work nicely again. >>> >>> Johan, if you prefer a quirk, then go for that one. >> Since we know that these are the only pieces of hardware that exist with >> this manufacturer id I think it's simplest to just use that instead of >> creating more code for this. >> >> Attached is a patch that still needs to be tested. It might e.g. reveal >> other commands that also fail with this hardware. >> >> Johan > After appling your patch I can use the adapter. > syslog says: > Jul 24 16:21:31 debian-capi kernel: [ 153.864308] usb 1-3: new full-speed USB device number 4 using ohci_hcd > Jul 24 16:21:31 debian-capi kernel: [ 154.120244] usb 1-3: New USB device found, idVendor=057c, idProduct=3800 > Jul 24 16:21:31 debian-capi kernel: [ 154.120251] usb 1-3: New USB device strings: Mfr=1, Product=2, SerialNumber=3 > Jul 24 16:21:31 debian-capi kernel: [ 154.120254] usb 1-3: Product: Bluetooth Device > Jul 24 16:21:31 debian-capi kernel: [ 154.120257] usb 1-3: Manufacturer: Bluetooth Device > Jul 24 16:21:31 debian-capi kernel: [ 154.120260] usb 1-3: SerialNumber: CC1C8D0E0400 > Jul 24 16:21:31 debian-capi bluetoothd[2203]: HCI dev 0 registered > Jul 24 16:21:31 debian-capi bluetoothd[2203]: Listening for HCI events on hci0 > Jul 24 16:21:31 debian-capi kernel: [ 154.149949] usbcore: registered new interface driver btusb > Jul 24 16:21:31 debian-capi bluetoothd[2203]: HCI dev 0 up > Jul 24 16:21:31 debian-capi bluetoothd[2203]: Proximity GATT Reporter Driver: Operation not permitted (1) > Jul 24 16:21:31 debian-capi bluetoothd[2203]: Unable to load keys to adapter_ops: Function not implemented (38) > Jul 24 16:21:31 debian-capi bluetoothd[2203]: Adapter /org/bluez/2203/hci0 has been enabled > > after scanning with hcitool scan, it finds my BT Speaker > btmon says: > > btmon > Bluetooth monitor ver 5.7 > = New Index: 00:00:00:00:00:00 (BR/EDR,USB,hci0) [hci0] 0.767719 > < HCI Command: Reset (0x03|0x0003) plen 0 [hci0] 0.773725 > > HCI Event: Command Complete (0x0e) plen 4 [hci0] 0.781039 > Reset (0x03|0x0003) ncmd 1 > Status: Success (0x00) > < HCI Command: Read Local Supported Fea.. (0x04|0x0003) plen 0 [hci0] 0.781774 > > HCI Event: Command Complete (0x0e) plen 12 [hci0] 0.785505 > Read Local Supported Features (0x04|0x0003) ncmd 1 > Status: Success (0x00) > Features: 0xff 0xff 0x05 0x00 0x18 0x18 0x00 0x00 > 3 slot packets > 5 slot packets > Encryption > Slot offset > Timing accuracy > Role switch > Hold mode > Sniff mode > Park state > Power control requests > Channel quality driven data rate (CQDDR) > SCO link > HV2 packets > HV3 packets > u-law log synchronous data > A-law log synchronous data > CVSD synchronous data > Power control > AFH capable slave > AFH classification slave > AFH capable master > AFH classification master > < HCI Command: Read Local Version Infor.. (0x04|0x0001) plen 0 [hci0] 0.785575 > > HCI Event: Command Complete (0x0e) plen 12 [hci0] 0.788286 > Read Local Version Information (0x04|0x0001) ncmd 1 > Status: Success (0x00) > HCI version: 2 - 0x2006 > LMP version: 2 - 0x1806 > Manufacturer: AVM Berlin (31) > < HCI Command: Read BD ADDR (0x04|0x0009) plen 0 [hci0] 0.788360 > > HCI Event: Command Complete (0x0e) plen 10 [hci0] 0.791218 > Read BD ADDR (0x04|0x0009) ncmd 1 > Status: Success (0x00) > Address: 00:04:0E:8D:1C:CC (OUI 00-04-0E) > < HCI Command: Read Buffer Size (0x04|0x0005) plen 0 [hci0] 0.791858 > > HCI Event: Command Complete (0x0e) plen 11 [hci0] 0.794638 > Read Buffer Size (0x04|0x0005) ncmd 1 > Status: Success (0x00) > ACL MTU: 120 ACL max packet: 20 > SCO MTU: 24 SCO max packet: 5 > < HCI Command: Read Class of Device (0x03|0x0023) plen 0 [hci0] 0.794704 > > HCI Event: Command Complete (0x0e) plen 7 [hci0] 0.798330 > Read Class of Device (0x03|0x0023) ncmd 1 > Status: Success (0x00) > Class: 0x000000 > Major class: Miscellaneous > Minor class: 0x00 > < HCI Command: Read Local Name (0x03|0x0014) plen 0 [hci0] 0.798394 > > HCI Event: Command Complete (0x0e) plen 252 [hci0] 0.836309 > Read Local Name (0x03|0x0014) ncmd 1 > Status: Success (0x00) > Name: > < HCI Command: Read Voice Setting (0x03|0x0025) plen 0 [hci0] 0.836479 > > HCI Event: Command Complete (0x0e) plen 6 [hci0] 0.839240 > Read Voice Setting (0x03|0x0025) ncmd 1 > Status: Success (0x00) > Setting: 0x0060 > < HCI Command: Set Event Filter (0x03|0x0005) plen 1 [hci0] 0.839409 > Type: 0x00 > > HCI Event: Command Complete (0x0e) plen 4 [hci0] 0.842197 > Set Event Filter (0x03|0x0005) ncmd 1 > Status: Success (0x00) > < HCI Command: Write Connection Accept... (0x03|0x0016) plen 2 [hci0] 0.842365 > Timeout: 20000.000 msec (0x7d00) > > HCI Event: Command Complete (0x0e) plen 4 [hci0] 0.845015 > Write Connection Accept Timeout (0x03|0x0016) ncmd 1 > Status: Success (0x00) > < HCI Command: Read Page Scan Activity (0x03|0x001b) plen 0 [hci0] 0.845182 > > HCI Event: Command Complete (0x0e) plen 8 [hci0] 0.849023 > Read Page Scan Activity (0x03|0x001b) ncmd 1 > Status: Success (0x00) > Interval: 1280.000 msec (0x0800) > Window: 11.250 msec (0x0012) > < HCI Command: Read Page Scan Type (0x03|0x0046) plen 0 [hci0] 0.849185 > > HCI Event: Command Complete (0x0e) plen 5 [hci0] 0.853008 > Read Page Scan Type (0x03|0x0046) ncmd 1 > Status: Success (0x00) > Type: Standard Scan (0x00) > < HCI Command: Set Event Mask (0x03|0x0001) plen 8 [hci0] 0.853166 > Mask: 0x00001807fffbffff > Inquiry Complete > Inquiry Result > Connection Complete > Connection Request > Disconnection Complete > Authentication Complete > Remote Name Request Complete > Encryption Change > Change Connection Link Key Complete > Master Link Key Complete > Read Remote Supported Features Complete > Read Remote Version Information Complete > QoS Setup Complete > Command Complete > Command Status > Hardware Error > Flush Occurred > Role Change > Mode Change > Return Link Keys > PIN Code Request > Link Key Request > Link Key Notification > Loopback Command > Data Buffer Overflow > Max Slots Change > Read Clock Offset Complete > Connection Packet Type Changed > QoS Violation > Page Scan Mode Change > Page Scan Repetition Mode Change > Flow Specification Complete > Inquiry Result with RSSI > Read Remote Extended Features Complete > Synchronous Connection Complete > Synchronous Connection Changed > > HCI Event: Command Complete (0x0e) plen 4 [hci0] 0.857379 > Set Event Mask (0x03|0x0001) ncmd 1 > Status: Success (0x00) > < HCI Command: Write Page Timeout (0x03|0x0018) plen 2 [hci0] 0.858038 > Timeout: 5120.000 msec (0x2000) > > HCI Event: Command Complete (0x0e) plen 4 [hci0] 0.859862 > Write Page Timeout (0x03|0x0018) ncmd 1 > Status: Success (0x00) > < HCI Command: Read Stored Link Key (0x03|0x000d) plen 7 [hci0] 0.859932 > Address: 00:00:00:00:00:00 (OUI 00-00-00) > Read all: 0x01 > > HCI Event: Command Complete (0x0e) plen 8 [hci0] 0.863627 > Read Stored Link Key (0x03|0x000d) ncmd 1 > Status: Success (0x00) > Max num keys: 8 > Num keys: 0 > < HCI Command: Write Local Name (0x03|0x0013) plen 248 [hci0] 0.882030 > Name: debian-capi-0 > > HCI Event: Command Complete (0x0e) plen 4 [hci0] 0.885847 > Write Local Name (0x03|0x0013) ncmd 1 > Status: Success (0x00) > < HCI Command: Set Event Mask (0x03|0x0001) plen 8 [hci0] 0.917369 > Mask: 0x00001807fffbffff > Inquiry Complete > Inquiry Result > Connection Complete > Connection Request > Disconnection Complete > Authentication Complete > Remote Name Request Complete > Encryption Change > Change Connection Link Key Complete > Master Link Key Complete > Read Remote Supported Features Complete > Read Remote Version Information Complete > QoS Setup Complete > Command Complete > Command Status > Hardware Error > Flush Occurred > Role Change > Mode Change > Return Link Keys > PIN Code Request > Link Key Request > Link Key Notification > Loopback Command > Data Buffer Overflow > Max Slots Change > Read Clock Offset Complete > Connection Packet Type Changed > QoS Violation > Page Scan Mode Change > Page Scan Repetition Mode Change > Flow Specification Complete > Inquiry Result with RSSI > Read Remote Extended Features Complete > Synchronous Connection Complete > Synchronous Connection Changed any idea why we are sending Set Event Mask twice. Regards Marcel ^ permalink raw reply [flat|nested] 30+ messages in thread
end of thread, other threads:[~2013-07-25 14:51 UTC | newest] Thread overview: 30+ messages (download: mbox.gz / follow: Atom feed) -- links below jump to the message on this page -- 2011-11-18 15:28 057c:3800 BlueFRITZ! Bluetooth Stick broken since 2.6.something Michael Schmitt 2011-11-18 15:36 ` Johan Hedberg 2011-11-18 15:49 ` Michael Schmitt 2011-11-18 16:21 ` Johan Hedberg 2011-11-18 16:34 ` Michael Schmitt 2011-11-18 20:30 ` Johan Hedberg 2011-11-20 15:27 ` Michael Schmitt 2011-11-27 10:04 ` Michael Schmitt 2011-11-28 8:42 ` Andrei Emeltchenko 2011-11-21 8:57 ` Andrei Emeltchenko 2011-11-21 9:12 ` Andrei Emeltchenko 2011-11-21 9:13 ` Marcel Holtmann 2011-11-21 10:22 ` Andrei Emeltchenko 2011-11-21 13:03 ` Marcel Holtmann 2011-11-21 10:35 ` Johan Hedberg 2011-11-21 13:04 ` Marcel Holtmann 2011-11-21 15:21 ` Johan Hedberg 2011-11-18 16:17 ` Michael Schmitt 2013-07-18 13:26 Jörg Esser 2013-07-18 14:13 ` Marcel Holtmann 2013-07-19 6:26 ` Jörg Esser 2013-07-19 13:49 ` Marcel Holtmann 2013-07-19 16:20 ` Johan Hedberg 2013-07-22 7:10 ` Jörg Esser 2013-07-22 14:22 ` Marcel Holtmann 2013-07-23 23:39 ` Johan Hedberg 2013-07-25 9:10 ` Jörg Esser 2013-07-25 10:55 ` Gustavo Padovan 2013-07-25 14:51 ` Marcel Holtmann 2013-07-25 14:40 ` Marcel Holtmann
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.