From: Peter Favrholdt <pfavr@mip.sdu.dk>
To: BlueZ Mailing List <bluez-devel@lists.sourceforge.net>
Cc: Marcel Holtmann <marcel@holtmann.org>
Subject: Re: [Bluez-devel] snd-bt-sco
Date: Thu, 01 Jul 2004 22:49:51 +0200 [thread overview]
Message-ID: <40E478EF.4040206@mip.sdu.dk> (raw)
In-Reply-To: <1088691001.4540.230.camel@pegasus>
Hi Marcel,
Thank you very much for the reply. I have included the information you
requested at the bottom. First a little more information that might help you
help me :-)
When I start the user space "btsco" program the headset goes "off the hook" -
I hear a beep, the led starts blinking three blinks at a time, and I can hear
some "static" noise (mostly silent but occasionally some lsb "clicks"). I take
this as a good sign since it was mentioned in the readme for the snd-bt-sco
package:
"There seems to be some unexplained noise that's noticeable when a program has
the device open but is not sending audio data. Instead of seeing all silence,
the driver is receiving the occasional non-zero byte. I've added a temporary
filter to eliminate this, but I'd really like to know what's causing it."
As I said earlier, the buttons on the headset works - I can disconnect and
change the volume (can be seen in alsamixer :-)
dmesg has lots of these messages. Sometimes the number following handle is not
zero but a "random" integer.
hci_scodata_packet: hci0 SCO packet for unknown connection handle 0
hci_scodata_packet: hci0 SCO packet for unknown connection handle 0
hci_scodata_packet: hci0 SCO packet for unknown connection handle 0
hci_scodata_packet: hci0 SCO packet for unknown connection handle 0
hci_scodata_packet: hci0 SCO packet for unknown connection handle 0
Besides adding the snd-bt-sco alsa driver to the kernel tree, I have patched
the hci_usb.c of the 2.6.6 kernel with this patch (which was meant for 2.6.4):
<patch>
--- linux-2.6.4-orig/drivers/bluetooth/hci_usb.c 2004-03-11 02:55:44
+++ linux-2.6.4/drivers/bluetooth/hci_usb.c 2004-03-13 23:52:27
@@ -851,7 +851,12 @@
#ifdef CONFIG_BT_HCIUSB_SCO
case USB_ENDPOINT_XFER_ISOC:
- if (ep->desc.wMaxPacketSize < size || a > 2)
+ /* Use only the 9 byte
+ "One voice channel with 8 bit encoding"
+ endpoint until there is support for changing
+ the endpoint dynamically. See
+ Bluetooth 1.1 Part H:2, section 2.1 */
+ if (ep->desc.wMaxPacketSize != 9)
break;
size = ep->desc.wMaxPacketSize;
</patch>
One further note: I had to increment the magic numbers in sndmagic.h because
the ones in the patch was already used in kernel 2.6.6. I assume this isn't a
problem as I have compiled both kernel and the btsco program with these
numbers... but something else might need to be changed also?
After having "used" the headset and turned it off I have trouble getting it
online again (without rebooting Linux). After putting the headset in "pairing
mode" I can do "hcitool scan"
Scanning ...
00:0D:44:00:76:07 Logitech HS01
But it fails with one of two error messages when I try to setup a connection:
hcitool cc 00:0D:44:00:76:07
Can't create connection: Input/output error
or:
Can't create connection: Connection timed out
But still "hcitool con" shows no connections.
Any ideas/suggestions welcome,
BR Peter
Marcel Holtmann wrote:
> and I am not sure that your USB dongle supports SCO over HCI. Show us
> the output of "hciconfig -a" and "cat /proc/bus/usb/devices".
At the moment the headset is not turned on (don't know if that makes a
difference). Also I noted that sometimes the headset will be master and
sometimes slave. Not sure what that means though:-)
how4:~# hciconfig -a
hci0: Type: USB
BD Address: 00:0B:0D:20:79:21 ACL MTU: 339:4 SCO MTU: 64:0
UP RUNNING PSCAN ISCAN
RX bytes:665056950 acl:108 sco:216472402 events:222 errors:0
TX bytes:2507 acl:87 sco:0 commands:66 errors:0
Features: 0xff 0xff 0x3d 0x00 0x00 0x00 0x00 0x00
Packet type: DM1 DM3 DM5 DH1 DH3 DH5 HV1 HV2 HV3
Link policy: RSWITCH HOLD SNIFF PARK
Link mode: SLAVE ACCEPT
Name: 'how4-0.'
Class: 0x000100
Service Classes: Unspecified
Device Class: Computer, Uncategorized
HCI Ver: 1.1 (0x1) HCI Rev: 0x93 LMP Ver: 1.1 (0x1) LMP Subver: 0x93
Manufacturer: Transilica, Inc. (24)
how4:~# cat /proc/bus/usb/devices
T: Bus=01 Lev=00 Prnt=00 Port=00 Cnt=00 Dev#= 1 Spd=12 MxCh= 2
B: Alloc=143/900 us (16%), #Int= 2, #Iso= 2
D: Ver= 1.10 Cls=09(hub ) Sub=00 Prot=00 MxPS= 8 #Cfgs= 1
P: Vendor=0000 ProdID=0000 Rev= 2.06
S: Manufacturer=Linux 2.6.6 uhci_hcd
S: Product=Intel Corp. 82801AA USB
S: SerialNumber=0000:00:1f.2
C:* #Ifs= 1 Cfg#= 1 Atr=40 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=e0(unk. ) Sub=01 Prot=01 MxPS=16 #Cfgs= 1
P: Vendor=0f4d ProdID=1000 Rev= 4.01
C:* #Ifs= 2 Cfg#= 1 Atr=a0 MxPwr= 26mA
I: If#= 0 Alt= 0 #EPs= 3 Cls=00(>ifc ) Sub=00 Prot=00 Driver=hci_usb
E: Ad=81(I) Atr=03(Int.) MxPS= 16 Ivl=1ms
E: Ad=82(I) Atr=02(Bulk) MxPS= 32 Ivl=0ms
E: Ad=03(O) Atr=02(Bulk) MxPS= 32 Ivl=0ms
I: If#= 1 Alt= 0 #EPs= 2 Cls=00(>ifc ) Sub=00 Prot=00 Driver=hci_usb
E: Ad=84(I) Atr=01(Isoc) MxPS= 0 Ivl=1ms
E: Ad=05(O) Atr=01(Isoc) MxPS= 0 Ivl=1ms
I: If#= 1 Alt= 1 #EPs= 2 Cls=00(>ifc ) Sub=00 Prot=00 Driver=hci_usb
E: Ad=84(I) Atr=01(Isoc) MxPS= 9 Ivl=1ms
E: Ad=05(O) Atr=01(Isoc) MxPS= 9 Ivl=1ms
I: If#= 1 Alt= 2 #EPs= 2 Cls=00(>ifc ) Sub=00 Prot=00 Driver=hci_usb
E: Ad=84(I) Atr=01(Isoc) MxPS= 17 Ivl=1ms
E: Ad=05(O) Atr=01(Isoc) MxPS= 17 Ivl=1ms
I: If#= 1 Alt= 3 #EPs= 2 Cls=00(>ifc ) Sub=00 Prot=00 Driver=hci_usb
E: Ad=84(I) Atr=01(Isoc) MxPS= 25 Ivl=1ms
E: Ad=05(O) Atr=01(Isoc) MxPS= 25 Ivl=1ms
I: If#= 1 Alt= 4 #EPs= 2 Cls=00(>ifc ) Sub=00 Prot=00 Driver=hci_usb
E: Ad=84(I) Atr=01(Isoc) MxPS= 33 Ivl=1ms
E: Ad=05(O) Atr=01(Isoc) MxPS= 33 Ivl=1ms
I: If#= 1 Alt= 5 #EPs= 2 Cls=00(>ifc ) Sub=00 Prot=00 Driver=hci_usb
E: Ad=84(I) Atr=01(Isoc) MxPS= 49 Ivl=1ms
E: Ad=05(O) Atr=01(Isoc) MxPS= 49 Ivl=1ms
T: Bus=01 Lev=01 Prnt=01 Port=01 Cnt=02 Dev#= 3 Spd=1.5 MxCh= 0
D: Ver= 1.10 Cls=00(>ifc ) Sub=00 Prot=00 MxPS= 8 #Cfgs= 1
P: Vendor=046d ProdID=c408 Rev=14.00
S: Manufacturer=Logitech
S: Product=USB Trackball
C:* #Ifs= 1 Cfg#= 1 Atr=a0 MxPwr= 50mA
I: If#= 0 Alt= 0 #EPs= 1 Cls=03(HID ) Sub=01 Prot=02 Driver=hid
E: Ad=81(I) Atr=03(Int.) MxPS= 8 Ivl=10ms
next prev parent reply other threads:[~2004-07-01 20:49 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
2004-06-30 22:17 [Bluez-devel] snd-bt-sco Peter Favrholdt
2004-06-30 23:03 ` Peter Favrholdt
2004-07-01 14:10 ` Marcel Holtmann
2004-07-01 20:49 ` Peter Favrholdt [this message]
-- strict thread matches above, loose matches on Subject: below --
2004-12-09 17:34 Michael Zanetti
2004-12-09 21:28 ` Marcel Holtmann
2004-12-09 22:35 ` Brad Midgley
2004-12-09 22:57 ` Chris Boyle
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=40E478EF.4040206@mip.sdu.dk \
--to=pfavr@mip.sdu.dk \
--cc=bluez-devel@lists.sourceforge.net \
--cc=marcel@holtmann.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
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.