Notes: These instructions work for 32-bit Ubuntu. (64-bit needs more work by someone with a 64-bit system. See the 4th post below this.)
1) make sure linux-ubuntu-modules-(kernel version)-generic, bluetooth, bluez-audio, bluez-gnome and bluez-utils are installed
2) uninstall or do not install bluetooth-alsa or bluez-btsco
3) Make sure your bluetooth hub is plugged in and working
$ hciconfig -a
Code:
hci0: Type: USB
BD Address: 11:11:11:11:11:11 ACL MTU: 678:8 SCO MTU: 48:10
UP RUNNING PSCAN
RX bytes:3935493 acl:271 sco:76851 events:660 errors:0
TX bytes:3437929 acl:264 sco:67270 commands:223 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: 'dell-0'
Class: 0x08010c
Service Classes: Capturing
Device Class: Computer, Laptop
HCI Ver: 1.2 (0x2) HCI Rev: 0x1fe LMP Ver: 1.2 (0x2) LMP Subver: 0x1fe
Manufacturer: Integrated System Solution Corp. (57)
4) discover your headset address by putting the headset in discoverable mode then using the command:
$ sudo hcitool scan
Code:
Scanning ...
xx:xx:xx:xx:xx:xx BT Headset-F
5) Add .asoundrc file to your home directory
6) In it put:
Code:
pcm.bluetooth {
type bluetooth
device xx:xx:xx:xx:xx:xx
profile "auto"
}
where xx:xx:xx:xx:xx:xx is the address of your head set above.
7) enable bluetooth sound on bluetooth hub
$ sudo hciconfig hci0 voice 0x0060
8) Check bluetooth Audio service is running
right click the bluetooth icon in your Notification Area
click Preferences / Services Tab
make sure Audio service is running
close it
9) load bluetooth SCO drivers
$ sudo modprobe snd_bt_sco
$ sudo modprobe sco
You might want to put these in /etc/modules
10) turn on the headset and hit volume up on the headset which should cause your PC to ask for the passkey to pair with the headset
11) check bluetooth sees the head set and has realised it is for audio
right click the bluetooth icon in your Notification Area
click Preferences / Services Tab
select 'Audio service' and your headset should be listed below
12) Check bluetooth headset is seen by ALSA
$ sudo cat /proc/asound/cards
Code:
0 [I82801CAICH3 ]: ICH - Intel 82801CA-ICH3
Intel 82801CA-ICH3 with CS4205 at irq 5
1 [Headset ]: Bluetooth SCO - BT Headset
BT Headset 1
13) adjust volumes for headset
$ alsamixer -c1
where 1 means card 1 listed above. Yours may be different.
14) Testing
$ arecord -D bluetooth -f s16_LE test.wav
talk for 10 seconds into the headset then press ctrl-C (note it might take a few seconds to start recording)
$ aplay -D bluetooth -f S16_LE test.wav
Playing WAVE 'test.wav' : Signed 16 bit Little Endian, Rate 8000 Hz, Mono
15) in your software such as skype choose the device called 'bluetooth' which is the pcm.bluetooth name used in .asoundrc
I still have problems sometimes... bad recordings, error messages in the logs etc. But it works. Perhaps someone can add this in a more accessable place once it has been verified that it works. Some of my steps may be superfluous but I wanted to get the info out there.
It might be neccessary sometimes to remove the headset from the Bluetooth Manager and have it re-add itself by pressing Volume up.
Bookmarks