2005-03-20 00:33:29

by David Wuertele

[permalink] [raw]
Subject: [Bluez-users] troubleshooting jabra headset btsco connection

I have a Jabra 250 headset and I would like to use this with my
Thinkpad X31 notebook, but btsco does not report a connection, and
sound does not play. The notebook has built-in bluetooth. Here are
my software versions:

# rpm -qa | grep -i bluez
bluez-libs-devel-2.10-2
bluez-hcidump-1.11-1
bluez-utils-2.10-2
bluez-libs-2.10-2
bluez-bluefw-1.0-6
bluez-pin-0.23-3

Today (3/19/2005) I cleanly checked out the btsco package, configured,
built, and installed in the main directory. Then I cd into the kernel
directory and typed 'make install' to get the snd_bt_sco.ko module.

# lsmod | grep sco
# modprobe snd_bt_sco
# lsmod | grep sco
snd_bt_sco 16416 0
snd_hwdep 8901 1 snd_bt_sco
snd_pcm 93001 5 snd_bt_sco,snd_intel8x0m,snd_intel8x0,snd_ac97_codec,snd_pcm_oss
snd 52645 11 snd_bt_sco,snd_hwdep,snd_intel8x0m,snd_intel8x0,snd_ac97_codec,snd_pcm_oss,snd_mixer_oss,snd_pcm,snd_timer
snd_page_alloc 9541 4 snd_bt_sco,snd_intel8x0m,snd_intel8x0,snd_pcm

# hciconfig -a
hci0: Type: USB
BD Address: 00:20:E0:75:D6:F6 ACL MTU: 192:8 SCO MTU: 64:8
UP RUNNING PSCAN ISCAN
RX bytes:5610037 acl:288 sco:109741 events:572 errors:0
TX bytes:5518964 acl:224 sco:108083 commands:189 errors:0
Features: 0xff 0xff 0x0f 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: 'localhost.localdomain-0'
Class: 0x120104
Service Classes: Networking, Object Transfer
Device Class: Computer, Desktop workstation
HCI Ver: 1.1 (0x1) HCI Rev: 0x222 LMP Ver: 1.1 (0x1) LMP Subver: 0x222
Manufacturer: Cambridge Silicon Radio (10)

I have paired my device and I can ping it with l2ping:

# l2ping 00:07:A4:06:40:99
Ping: 00:07:A4:06:40:99 from 00:20:E0:75:D6:F6 (data size 20) ...
44 bytes from 00:07:A4:06:40:99 id 200 time 70.83ms
44 bytes from 00:07:A4:06:40:99 id 201 time 35.24ms
44 bytes from 00:07:A4:06:40:99 id 202 time 36.22ms
44 bytes from 00:07:A4:06:40:99 id 203 time 46.33ms
4 sent, 4 received, 0% loss

Searching confirms that that address is my headset:

# sdptool search --bdaddr 00:07:A4:06:40:99 0x1108
Class 0x1108
Searching for 0x1108 on 00:07:A4:06:40:99 ...
Service Name: Headset
Service RecHandle: 0x10000
Service Class ID List:
"Headset" (0x1108)
"Generic Audio" (0x1203)
Protocol Descriptor List:
"L2CAP" (0x0100)
"RFCOMM" (0x0003)
Channel: 1
Profile Descriptor List:
"Headset" (0x1108)
Version: 0x0100


My headset is now on (the blue light flashes once every three
seconds). The first time I run btsco:

# btsco 00:07:A4:06:40:99 1
Can't connect RFCOMM channel: Device or resource busy

Here's the hcidump -X output during the above command:

< HCI Command: Read Voice Setting (0x03|0x0025) plen 0
> HCI Event: Command Complete (0x0e) plen 6
0000: 01 25 0c 00 60 00 .%..`.
< HCI Command: Create Connection (0x01|0x0005) plen 13
0000: 99 40 06 a4 07 00 18 cc 02 00 00 00 01 .@...........
> HCI Event: Command Status (0x0f) plen 4
0000: 0c 01 05 04 ....
> HCI Event: Connect Complete (0x03) plen 11
0000: 04 00 00 00 00 00 00 00 00 01 00 ...........

The *second* time I run btsco, it doesn't print an error --- in fact
it doesn't print anything:

# btsco 00:07:A4:06:40:99 1

Here is the hcidump -X output during the above command:

< HCI Command: Read Voice Setting (0x03|0x0025) plen 0
> HCI Event: Command Complete (0x0e) plen 6
0000: 01 25 0c 00 60 00 .%..`.
< HCI Command: Create Connection (0x01|0x0005) plen 13
0000: 99 40 06 a4 07 00 18 cc 02 00 00 00 01 .@...........
> HCI Event: Command Status (0x0f) plen 4
0000: 00 01 05 04 ....
> HCI Event: Link Key Request (0x17) plen 6
0000: 99 40 06 a4 07 00 .@....
< HCI Command: Link Key Request Reply (0x01|0x000b) plen 22
0000: 99 40 06 a4 07 00 e0 b5 ad 2a 5e 49 b2 0d 44 b3 .@.......*^I..D.
0010: 98 be 56 78 1c 3c ..Vx.<
> HCI Event: Command Complete (0x0e) plen 10
0000: 01 0b 04 00 99 40 06 a4 07 00 .....@....
> HCI Event: Connect Complete (0x03) plen 11
0000: 00 29 00 99 40 06 a4 07 00 01 01 .)..@......
< ACL data: handle 0x0029 flags 0x02 dlen 12
L2CAP(s): Connect req: psm 3 scid 0x0040
< HCI Command: Write Link Policy Settings (0x02|0x000d) plen 4
0000: 29 00 0f 00 )...
> HCI Event: Number of Completed Packets (0x13) plen 5
0000: 01 29 00 01 00 .)...
> HCI Event: Command Complete (0x0e) plen 6
0000: 01 0d 08 00 29 00 ....).
> HCI Event: Page Scan Repetition Mode Change (0x20) plen 7
0000: 99 40 06 a4 07 00 01 .@.....
> ACL data: handle 0x0029 flags 0x02 dlen 16
L2CAP(s): Connect rsp: dcid 0x0048 scid 0x0040 result 1 status 2
> ACL data: handle 0x0029 flags 0x02 dlen 16
L2CAP(s): Connect rsp: dcid 0x0048 scid 0x0040 result 0 status 0
< ACL data: handle 0x0029 flags 0x02 dlen 16
L2CAP(s): Config req: dcid 0x0048 flags 0x0000 clen 4
MTU 1024
> HCI Event: Number of Completed Packets (0x13) plen 5
0000: 01 29 00 01 00 .)...
> ACL data: handle 0x0029 flags 0x02 dlen 14
L2CAP(s): Config rsp: scid 0x0040 flags 0x0000 result 0 clen 0
> ACL data: handle 0x0029 flags 0x02 dlen 16
L2CAP(s): Config req: dcid 0x0040 flags 0x0000 clen 4
MTU 1024
< ACL data: handle 0x0029 flags 0x02 dlen 14
L2CAP(s): Config rsp: scid 0x0048 flags 0x0000 result 0 clen 0
< ACL data: handle 0x0029 flags 0x02 dlen 8
L2CAP(d): cid 0x0048 len 4 [psm 3]
RFCOMM(s): SABM: cr 1 dlci 0 pf 1 ilen 0 fcs 0x1c
> HCI Event: Number of Completed Packets (0x13) plen 5
0000: 01 29 00 01 00 .)...
> HCI Event: Number of Completed Packets (0x13) plen 5
0000: 01 29 00 01 00 .)...
> ACL data: handle 0x0029 flags 0x02 dlen 8
L2CAP(d): cid 0x0040 len 4 [psm 3]
RFCOMM(s): UA: cr 1 dlci 0 pf 1 ilen 0 fcs 0xd7
< ACL data: handle 0x0029 flags 0x02 dlen 18
L2CAP(d): cid 0x0048 len 14 [psm 3]
RFCOMM(s): PN CMD: cr 1 dlci 0 pf 0 ilen 10 fcs 0x70 mcc_len 8
dlci 2 frame_type 0 credit_flow 15 pri 7 ack_timer 0
frame_size 1019 max_retrans 0 credits 7
> HCI Event: Number of Completed Packets (0x13) plen 5
0000: 01 29 00 01 00 .)...
> ACL data: handle 0x0029 flags 0x02 dlen 18
L2CAP(d): cid 0x0040 len 14 [psm 3]
RFCOMM(s): PN RSP: cr 0 dlci 0 pf 0 ilen 10 fcs 0xaa mcc_len 8
dlci 2 frame_type 0 credit_flow 14 pri 7 ack_timer 0
frame_size 127 max_retrans 0 credits 0
< ACL data: handle 0x0029 flags 0x02 dlen 8
L2CAP(d): cid 0x0048 len 4 [psm 3]
RFCOMM(s): SABM: cr 1 dlci 2 pf 1 ilen 0 fcs 0x59
> HCI Event: Number of Completed Packets (0x13) plen 5
0000: 01 29 00 01 00 .)...
> ACL data: handle 0x0029 flags 0x02 dlen 8
L2CAP(d): cid 0x0040 len 4 [psm 3]
RFCOMM(s): UA: cr 1 dlci 2 pf 1 ilen 0 fcs 0x92
< ACL data: handle 0x0029 flags 0x02 dlen 12
L2CAP(d): cid 0x0048 len 8 [psm 3]
RFCOMM(s): MSC CMD: cr 1 dlci 0 pf 0 ilen 4 fcs 0x70 mcc_len 2
dlci 2 fc 0 rtc 1 rtr 1 ic 0 dv 1 b1 0 b2 0 b3 0 len 0
> ACL data: handle 0x0029 flags 0x02 dlen 12
L2CAP(d): cid 0x0040 len 8 [psm 3]
RFCOMM(s): MSC CMD: cr 0 dlci 0 pf 0 ilen 4 fcs 0xaa mcc_len 2
dlci 2 fc 0 rtc 1 rtr 1 ic 0 dv 0 b1 0 b2 0 b3 0 len 0
< ACL data: handle 0x0029 flags 0x02 dlen 12
L2CAP(d): cid 0x0048 len 8 [psm 3]
RFCOMM(s): MSC RSP: cr 1 dlci 0 pf 0 ilen 4 fcs 0x70 mcc_len 2
dlci 2 fc 0 rtc 1 rtr 1 ic 0 dv 0 b1 0 b2 0 b3 0 len 0
> HCI Event: Number of Completed Packets (0x13) plen 5
0000: 01 29 00 01 00 .)...
> HCI Event: Number of Completed Packets (0x13) plen 5
0000: 01 29 00 01 00 .)...
> ACL data: handle 0x0029 flags 0x02 dlen 12
L2CAP(d): cid 0x0040 len 8 [psm 3]
RFCOMM(s): MSC RSP: cr 0 dlci 0 pf 0 ilen 4 fcs 0xaa mcc_len 2
dlci 2 fc 0 rtc 1 rtr 1 ic 0 dv 1 b1 0 b2 0 b3 0 len 0
< ACL data: handle 0x0029 flags 0x02 dlen 9
L2CAP(d): cid 0x0048 len 5 [psm 3]
RFCOMM(d): UIH: cr 1 dlci 2 pf 1 ilen 0 fcs 0x86 credits 33
> ACL data: handle 0x0029 flags 0x02 dlen 9
L2CAP(d): cid 0x0040 len 5 [psm 3]
RFCOMM(d): UIH: cr 0 dlci 2 pf 1 ilen 0 fcs 0x5c credits 15
> HCI Event: Number of Completed Packets (0x13) plen 5
0000: 01 29 00 01 00 .)...
> HCI Event: Mode Change (0x14) plen 6
0000: 00 29 00 02 00 08 .)....

When I try to play music over the headset, it appears to work:

# aplay -D plughw:Headset "/home/music/music/Where It's At.wav"
Playing WAVE '/home/music/music/Where It's At.wav' : Signed 16 bit Little Endian, Rate 44100 Hz, Stereo

Here is the hcidump -X output of the above command, somewhat
truncated:

< HCI Command: Add SCO Connection (0x01|0x0007) plen 4
0000: 29 00 e0 00 )...
> HCI Event: Command Status (0x0f) plen 4
0000: 00 01 07 04 ....
> HCI Event: Connect Complete (0x03) plen 11
0000: 00 2c 00 99 40 06 a4 07 00 00 01 .,..@......
> SCO data: handle 0x002c dlen 48
0000: 10 00 13 00 13 00 29 00 0f 00 ac 20 00 00 15 00 ......).... ....
0010: 11 00 25 00 24 00 16 00 14 00 0d 00 11 00 23 00 ..%.$.........#.
0020: 1f 00 10 00 16 00 11 00 0f 00 1a 00 13 00 0c 00 ................
> SCO data: handle 0x002c dlen 48
0000: 0c 00 0b 00 14 00 12 00 0a 00 09 00 ff ff 05 00 ................
0010: 22 00 22 00 17 00 05 00 15 00 11 00 0a 00 18 00 ".".............
0020: 22 00 1b 00 12 00 1c 00 16 00 04 00 17 00 1a 00 "...............
> SCO data: handle 0x002c dlen 48
0000: 10 00 15 00 0a 00 13 00 1f 00 0f 00 14 00 16 00 ................
0010: 0f 00 17 00 14 00 08 00 06 00 fb ff 08 00 23 00 ..............#.
0020: 23 00 12 00 08 00 14 00 0e 00 0f 00 20 00 28 00 #........... .(.
> SCO data: handle 0x002c dlen 48
0000: 1d 00 0b 00 13 00 21 00 10 00 16 00 1f 00 12 00 ......!.........
0010: 17 00 14 00 10 00 16 00 10 00 13 00 16 00 19 00 ................
0020: 1a 00 11 00 17 00 14 00 f9 ff 03 00 24 00 18 00 ............$...
> SCO data: handle 0x002c dlen 48
0000: 0f 00 19 00 04 00 0a 00 23 00 27 00 1e 00 09 00 ........#.'.....
0010: 11 00 1f 00 10 00 17 00 12 00 0d 00 25 00 14 00 ............%...
0020: 0d 00 17 00 08 00 0f 00 11 00 0b 00 1d 00 1c 00 ................
> SCO data: handle 0x002c dlen 48
0000: 08 00 0d 00 0a 00 02 00 15 00 15 00 08 00 02 00 ................
0010: 10 00 10 00 10 00 1a 00 1d 00 1e 00 12 00 0f 00 ................
0020: 1d 00 0f 00 13 00 21 00 12 00 19 00 1a 00 0d 00 ......!.........
> SCO data: handle 0x002c dlen 48
0000: 13 00 1b 00 16 00 05 00 12 00 1a 00 09 00 0f 00 ................
0010: 06 00 ff ff 11 00 1c 00 1c 00 18 00 09 00 11 00 ................
0020: 0d 00 f6 ff 12 00 23 00 16 00 13 00 10 00 1a 00 ......#.........
> SCO data: handle 0x002c dlen 48
0000: 0f 00 11 00 1d 00 10 00 1a 00 16 00 08 00 19 00 ................
0010: 15 00 0c 00 0b 00 06 00 14 00 19 00 04 00 01 00 ................

This continues until I kill the aplay process.

One interesting thing I noticed: after invoking aplay, there is a new
module loaded into the kernel:

# lsmod | grep sco
sco 15685 0
snd_bt_sco 16416 1
snd_hwdep 8901 2 snd_bt_sco
bluetooth 48453 10 sco,hci_usb,rfcomm,l2cap
snd_pcm 93001 5 snd_bt_sco,snd_intel8x0m,snd_intel8x0,snd_ac97_codec,snd_pcm_oss
snd 52645 12 snd_bt_sco,snd_hwdep,snd_intel8x0m,snd_intel8x0,snd_ac97_codec,snd_pcm_oss,snd_mixer_oss,snd_pcm,snd_timer
snd_page_alloc 9541 4 snd_bt_sco,snd_intel8x0m,snd_intel8x0,snd_pcm

Note the "sco" module. That is a module that had been installed along
with my kernel in /lib/modules/2.6.10-1.770_FC3/kernel/net/bluetooth/sco.ko.

Can anyone tell me why btsco does not report a connection, and why I'm
unable to hear the audio that appears to be streaming over hci0 as a
result of the aplay command?

Thanks,
Dave



-------------------------------------------------------
SF email is sponsored by - The IT Product Guide
Read honest & candid reviews on hundreds of IT Products from real users.
Discover which products truly live up to the hype. Start reading now.
http://ads.osdn.com/?ad_id=6595&alloc_id=14396&op=click
_______________________________________________
Bluez-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/bluez-users


2005-03-20 03:24:52

by Brad Midgley

[permalink] [raw]
Subject: Re: [Bluez-users] troubleshooting jabra headset btsco connection

David,

What do you get when you run

hciconfig hci0 revision

as root?

Are you running esd?

What do you get when running btsco with -v (verbose)?

Do you have another bt adapter (eg usb) you can try?

Brad

David Wuertele wrote:
> I have a Jabra 250 headset and I would like to use this with my
> Thinkpad X31 notebook, but btsco does not report a connection, and
> sound does not play. The notebook has built-in bluetooth. Here are
> my software versions:
>
> # rpm -qa | grep -i bluez
> bluez-libs-devel-2.10-2
> bluez-hcidump-1.11-1
> bluez-utils-2.10-2
> bluez-libs-2.10-2
> bluez-bluefw-1.0-6
> bluez-pin-0.23-3
>
> Today (3/19/2005) I cleanly checked out the btsco package, configured,
> built, and installed in the main directory. Then I cd into the kernel
> directory and typed 'make install' to get the snd_bt_sco.ko module.
>
> # lsmod | grep sco
> # modprobe snd_bt_sco
> # lsmod | grep sco
> snd_bt_sco 16416 0
> snd_hwdep 8901 1 snd_bt_sco
> snd_pcm 93001 5 snd_bt_sco,snd_intel8x0m,snd_intel8x0,snd_ac97_codec,snd_pcm_oss
> snd 52645 11 snd_bt_sco,snd_hwdep,snd_intel8x0m,snd_intel8x0,snd_ac97_codec,snd_pcm_oss,snd_mixer_oss,snd_pcm,snd_timer
> snd_page_alloc 9541 4 snd_bt_sco,snd_intel8x0m,snd_intel8x0,snd_pcm
>
> # hciconfig -a
> hci0: Type: USB
> BD Address: 00:20:E0:75:D6:F6 ACL MTU: 192:8 SCO MTU: 64:8
> UP RUNNING PSCAN ISCAN
> RX bytes:5610037 acl:288 sco:109741 events:572 errors:0
> TX bytes:5518964 acl:224 sco:108083 commands:189 errors:0
> Features: 0xff 0xff 0x0f 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: 'localhost.localdomain-0'
> Class: 0x120104
> Service Classes: Networking, Object Transfer
> Device Class: Computer, Desktop workstation
> HCI Ver: 1.1 (0x1) HCI Rev: 0x222 LMP Ver: 1.1 (0x1) LMP Subver: 0x222
> Manufacturer: Cambridge Silicon Radio (10)
>
> I have paired my device and I can ping it with l2ping:
>
> # l2ping 00:07:A4:06:40:99
> Ping: 00:07:A4:06:40:99 from 00:20:E0:75:D6:F6 (data size 20) ...
> 44 bytes from 00:07:A4:06:40:99 id 200 time 70.83ms
> 44 bytes from 00:07:A4:06:40:99 id 201 time 35.24ms
> 44 bytes from 00:07:A4:06:40:99 id 202 time 36.22ms
> 44 bytes from 00:07:A4:06:40:99 id 203 time 46.33ms
> 4 sent, 4 received, 0% loss
>
> Searching confirms that that address is my headset:
>
> # sdptool search --bdaddr 00:07:A4:06:40:99 0x1108
> Class 0x1108
> Searching for 0x1108 on 00:07:A4:06:40:99 ...
> Service Name: Headset
> Service RecHandle: 0x10000
> Service Class ID List:
> "Headset" (0x1108)
> "Generic Audio" (0x1203)
> Protocol Descriptor List:
> "L2CAP" (0x0100)
> "RFCOMM" (0x0003)
> Channel: 1
> Profile Descriptor List:
> "Headset" (0x1108)
> Version: 0x0100
>
>
> My headset is now on (the blue light flashes once every three
> seconds). The first time I run btsco:
>
> # btsco 00:07:A4:06:40:99 1
> Can't connect RFCOMM channel: Device or resource busy
>
> Here's the hcidump -X output during the above command:
>
> < HCI Command: Read Voice Setting (0x03|0x0025) plen 0
> > HCI Event: Command Complete (0x0e) plen 6
> 0000: 01 25 0c 00 60 00 .%..`.
> < HCI Command: Create Connection (0x01|0x0005) plen 13
> 0000: 99 40 06 a4 07 00 18 cc 02 00 00 00 01 .@...........
> > HCI Event: Command Status (0x0f) plen 4
> 0000: 0c 01 05 04 ....
> > HCI Event: Connect Complete (0x03) plen 11
> 0000: 04 00 00 00 00 00 00 00 00 01 00 ...........
>
> The *second* time I run btsco, it doesn't print an error --- in fact
> it doesn't print anything:
>
> # btsco 00:07:A4:06:40:99 1
>
> Here is the hcidump -X output during the above command:
>
> < HCI Command: Read Voice Setting (0x03|0x0025) plen 0
> > HCI Event: Command Complete (0x0e) plen 6
> 0000: 01 25 0c 00 60 00 .%..`.
> < HCI Command: Create Connection (0x01|0x0005) plen 13
> 0000: 99 40 06 a4 07 00 18 cc 02 00 00 00 01 .@...........
> > HCI Event: Command Status (0x0f) plen 4
> 0000: 00 01 05 04 ....
> > HCI Event: Link Key Request (0x17) plen 6
> 0000: 99 40 06 a4 07 00 .@....
> < HCI Command: Link Key Request Reply (0x01|0x000b) plen 22
> 0000: 99 40 06 a4 07 00 e0 b5 ad 2a 5e 49 b2 0d 44 b3 .@.......*^I..D.
> 0010: 98 be 56 78 1c 3c ..Vx.<
> > HCI Event: Command Complete (0x0e) plen 10
> 0000: 01 0b 04 00 99 40 06 a4 07 00 .....@....
> > HCI Event: Connect Complete (0x03) plen 11
> 0000: 00 29 00 99 40 06 a4 07 00 01 01 .)..@......
> < ACL data: handle 0x0029 flags 0x02 dlen 12
> L2CAP(s): Connect req: psm 3 scid 0x0040
> < HCI Command: Write Link Policy Settings (0x02|0x000d) plen 4
> 0000: 29 00 0f 00 )...
> > HCI Event: Number of Completed Packets (0x13) plen 5
> 0000: 01 29 00 01 00 .)...
> > HCI Event: Command Complete (0x0e) plen 6
> 0000: 01 0d 08 00 29 00 ....).
> > HCI Event: Page Scan Repetition Mode Change (0x20) plen 7
> 0000: 99 40 06 a4 07 00 01 .@.....
> > ACL data: handle 0x0029 flags 0x02 dlen 16
> L2CAP(s): Connect rsp: dcid 0x0048 scid 0x0040 result 1 status 2
> > ACL data: handle 0x0029 flags 0x02 dlen 16
> L2CAP(s): Connect rsp: dcid 0x0048 scid 0x0040 result 0 status 0
> < ACL data: handle 0x0029 flags 0x02 dlen 16
> L2CAP(s): Config req: dcid 0x0048 flags 0x0000 clen 4
> MTU 1024
> > HCI Event: Number of Completed Packets (0x13) plen 5
> 0000: 01 29 00 01 00 .)...
> > ACL data: handle 0x0029 flags 0x02 dlen 14
> L2CAP(s): Config rsp: scid 0x0040 flags 0x0000 result 0 clen 0
> > ACL data: handle 0x0029 flags 0x02 dlen 16
> L2CAP(s): Config req: dcid 0x0040 flags 0x0000 clen 4
> MTU 1024
> < ACL data: handle 0x0029 flags 0x02 dlen 14
> L2CAP(s): Config rsp: scid 0x0048 flags 0x0000 result 0 clen 0
> < ACL data: handle 0x0029 flags 0x02 dlen 8
> L2CAP(d): cid 0x0048 len 4 [psm 3]
> RFCOMM(s): SABM: cr 1 dlci 0 pf 1 ilen 0 fcs 0x1c
> > HCI Event: Number of Completed Packets (0x13) plen 5
> 0000: 01 29 00 01 00 .)...
> > HCI Event: Number of Completed Packets (0x13) plen 5
> 0000: 01 29 00 01 00 .)...
> > ACL data: handle 0x0029 flags 0x02 dlen 8
> L2CAP(d): cid 0x0040 len 4 [psm 3]
> RFCOMM(s): UA: cr 1 dlci 0 pf 1 ilen 0 fcs 0xd7
> < ACL data: handle 0x0029 flags 0x02 dlen 18
> L2CAP(d): cid 0x0048 len 14 [psm 3]
> RFCOMM(s): PN CMD: cr 1 dlci 0 pf 0 ilen 10 fcs 0x70 mcc_len 8
> dlci 2 frame_type 0 credit_flow 15 pri 7 ack_timer 0
> frame_size 1019 max_retrans 0 credits 7
> > HCI Event: Number of Completed Packets (0x13) plen 5
> 0000: 01 29 00 01 00 .)...
> > ACL data: handle 0x0029 flags 0x02 dlen 18
> L2CAP(d): cid 0x0040 len 14 [psm 3]
> RFCOMM(s): PN RSP: cr 0 dlci 0 pf 0 ilen 10 fcs 0xaa mcc_len 8
> dlci 2 frame_type 0 credit_flow 14 pri 7 ack_timer 0
> frame_size 127 max_retrans 0 credits 0
> < ACL data: handle 0x0029 flags 0x02 dlen 8
> L2CAP(d): cid 0x0048 len 4 [psm 3]
> RFCOMM(s): SABM: cr 1 dlci 2 pf 1 ilen 0 fcs 0x59
> > HCI Event: Number of Completed Packets (0x13) plen 5
> 0000: 01 29 00 01 00 .)...
> > ACL data: handle 0x0029 flags 0x02 dlen 8
> L2CAP(d): cid 0x0040 len 4 [psm 3]
> RFCOMM(s): UA: cr 1 dlci 2 pf 1 ilen 0 fcs 0x92
> < ACL data: handle 0x0029 flags 0x02 dlen 12
> L2CAP(d): cid 0x0048 len 8 [psm 3]
> RFCOMM(s): MSC CMD: cr 1 dlci 0 pf 0 ilen 4 fcs 0x70 mcc_len 2
> dlci 2 fc 0 rtc 1 rtr 1 ic 0 dv 1 b1 0 b2 0 b3 0 len 0
> > ACL data: handle 0x0029 flags 0x02 dlen 12
> L2CAP(d): cid 0x0040 len 8 [psm 3]
> RFCOMM(s): MSC CMD: cr 0 dlci 0 pf 0 ilen 4 fcs 0xaa mcc_len 2
> dlci 2 fc 0 rtc 1 rtr 1 ic 0 dv 0 b1 0 b2 0 b3 0 len 0
> < ACL data: handle 0x0029 flags 0x02 dlen 12
> L2CAP(d): cid 0x0048 len 8 [psm 3]
> RFCOMM(s): MSC RSP: cr 1 dlci 0 pf 0 ilen 4 fcs 0x70 mcc_len 2
> dlci 2 fc 0 rtc 1 rtr 1 ic 0 dv 0 b1 0 b2 0 b3 0 len 0
> > HCI Event: Number of Completed Packets (0x13) plen 5
> 0000: 01 29 00 01 00 .)...
> > HCI Event: Number of Completed Packets (0x13) plen 5
> 0000: 01 29 00 01 00 .)...
> > ACL data: handle 0x0029 flags 0x02 dlen 12
> L2CAP(d): cid 0x0040 len 8 [psm 3]
> RFCOMM(s): MSC RSP: cr 0 dlci 0 pf 0 ilen 4 fcs 0xaa mcc_len 2
> dlci 2 fc 0 rtc 1 rtr 1 ic 0 dv 1 b1 0 b2 0 b3 0 len 0
> < ACL data: handle 0x0029 flags 0x02 dlen 9
> L2CAP(d): cid 0x0048 len 5 [psm 3]
> RFCOMM(d): UIH: cr 1 dlci 2 pf 1 ilen 0 fcs 0x86 credits 33
> > ACL data: handle 0x0029 flags 0x02 dlen 9
> L2CAP(d): cid 0x0040 len 5 [psm 3]
> RFCOMM(d): UIH: cr 0 dlci 2 pf 1 ilen 0 fcs 0x5c credits 15
> > HCI Event: Number of Completed Packets (0x13) plen 5
> 0000: 01 29 00 01 00 .)...
> > HCI Event: Mode Change (0x14) plen 6
> 0000: 00 29 00 02 00 08 .)....
>
> When I try to play music over the headset, it appears to work:
>
> # aplay -D plughw:Headset "/home/music/music/Where It's At.wav"
> Playing WAVE '/home/music/music/Where It's At.wav' : Signed 16 bit Little Endian, Rate 44100 Hz, Stereo
>
> Here is the hcidump -X output of the above command, somewhat
> truncated:
>
> < HCI Command: Add SCO Connection (0x01|0x0007) plen 4
> 0000: 29 00 e0 00 )...
> > HCI Event: Command Status (0x0f) plen 4
> 0000: 00 01 07 04 ....
> > HCI Event: Connect Complete (0x03) plen 11
> 0000: 00 2c 00 99 40 06 a4 07 00 00 01 .,..@......
> > SCO data: handle 0x002c dlen 48
> 0000: 10 00 13 00 13 00 29 00 0f 00 ac 20 00 00 15 00 ......).... ....
> 0010: 11 00 25 00 24 00 16 00 14 00 0d 00 11 00 23 00 ..%.$.........#.
> 0020: 1f 00 10 00 16 00 11 00 0f 00 1a 00 13 00 0c 00 ................
> > SCO data: handle 0x002c dlen 48
> 0000: 0c 00 0b 00 14 00 12 00 0a 00 09 00 ff ff 05 00 ................
> 0010: 22 00 22 00 17 00 05 00 15 00 11 00 0a 00 18 00 ".".............
> 0020: 22 00 1b 00 12 00 1c 00 16 00 04 00 17 00 1a 00 "...............
> > SCO data: handle 0x002c dlen 48
> 0000: 10 00 15 00 0a 00 13 00 1f 00 0f 00 14 00 16 00 ................
> 0010: 0f 00 17 00 14 00 08 00 06 00 fb ff 08 00 23 00 ..............#.
> 0020: 23 00 12 00 08 00 14 00 0e 00 0f 00 20 00 28 00 #........... .(.
> > SCO data: handle 0x002c dlen 48
> 0000: 1d 00 0b 00 13 00 21 00 10 00 16 00 1f 00 12 00 ......!.........
> 0010: 17 00 14 00 10 00 16 00 10 00 13 00 16 00 19 00 ................
> 0020: 1a 00 11 00 17 00 14 00 f9 ff 03 00 24 00 18 00 ............$...
> > SCO data: handle 0x002c dlen 48
> 0000: 0f 00 19 00 04 00 0a 00 23 00 27 00 1e 00 09 00 ........#.'.....
> 0010: 11 00 1f 00 10 00 17 00 12 00 0d 00 25 00 14 00 ............%...
> 0020: 0d 00 17 00 08 00 0f 00 11 00 0b 00 1d 00 1c 00 ................
> > SCO data: handle 0x002c dlen 48
> 0000: 08 00 0d 00 0a 00 02 00 15 00 15 00 08 00 02 00 ................
> 0010: 10 00 10 00 10 00 1a 00 1d 00 1e 00 12 00 0f 00 ................
> 0020: 1d 00 0f 00 13 00 21 00 12 00 19 00 1a 00 0d 00 ......!.........
> > SCO data: handle 0x002c dlen 48
> 0000: 13 00 1b 00 16 00 05 00 12 00 1a 00 09 00 0f 00 ................
> 0010: 06 00 ff ff 11 00 1c 00 1c 00 18 00 09 00 11 00 ................
> 0020: 0d 00 f6 ff 12 00 23 00 16 00 13 00 10 00 1a 00 ......#.........
> > SCO data: handle 0x002c dlen 48
> 0000: 0f 00 11 00 1d 00 10 00 1a 00 16 00 08 00 19 00 ................
> 0010: 15 00 0c 00 0b 00 06 00 14 00 19 00 04 00 01 00 ................
>
> This continues until I kill the aplay process.
>
> One interesting thing I noticed: after invoking aplay, there is a new
> module loaded into the kernel:
>
> # lsmod | grep sco
> sco 15685 0
> snd_bt_sco 16416 1
> snd_hwdep 8901 2 snd_bt_sco
> bluetooth 48453 10 sco,hci_usb,rfcomm,l2cap
> snd_pcm 93001 5 snd_bt_sco,snd_intel8x0m,snd_intel8x0,snd_ac97_codec,snd_pcm_oss
> snd 52645 12 snd_bt_sco,snd_hwdep,snd_intel8x0m,snd_intel8x0,snd_ac97_codec,snd_pcm_oss,snd_mixer_oss,snd_pcm,snd_timer
> snd_page_alloc 9541 4 snd_bt_sco,snd_intel8x0m,snd_intel8x0,snd_pcm
>
> Note the "sco" module. That is a module that had been installed along
> with my kernel in /lib/modules/2.6.10-1.770_FC3/kernel/net/bluetooth/sco.ko.
>
> Can anyone tell me why btsco does not report a connection, and why I'm
> unable to hear the audio that appears to be streaming over hci0 as a
> result of the aplay command?
>
> Thanks,
> Dave
>
>
>
> -------------------------------------------------------
> SF email is sponsored by - The IT Product Guide
> Read honest & candid reviews on hundreds of IT Products from real users.
> Discover which products truly live up to the hype. Start reading now.
> http://ads.osdn.com/?ad_id=6595&alloc_id=14396&op=click
> _______________________________________________
> Bluez-users mailing list
> [email protected]
> https://lists.sourceforge.net/lists/listinfo/bluez-users


-------------------------------------------------------
SF email is sponsored by - The IT Product Guide
Read honest & candid reviews on hundreds of IT Products from real users.
Discover which products truly live up to the hype. Start reading now.
http://ads.osdn.com/?ad_id=6595&alloc_id=14396&op=click
_______________________________________________
Bluez-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/bluez-users