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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox