当前位置首页 > Linux知识

Linux下基于Bluez

阅读次数:172 次  来源:admin  发布时间:

硬件:Moto H670 蓝牙耳机 (CSR chip)/ Broadcom v2.0 adapter

软件:bluez-4.26 / bluez-gnome-1.8 / linux kernel 2.6.28

1)蓝牙耳机配对,打开你的蓝牙耳机,进入配对模式,我是用blue-wizard,就是blue-gnome这个东西来配对,实在是找不到其它方法。以前bluez-3.x 在/var/lib/bluetooth/xx/pincodes里直接写pincode就可以了,现在好像不行了,而且在配对前,最好把那个pincodes删掉,至少要把跟你蓝牙耳机地址相关的那条pincode去掉。

2)运行 bluetoothd

第一次使用,可以在后面 加 -n -d 看调试信息

3)在HOME目录下,建立 .asoundrc这个文件,如下:

cm.headset {

type bluetooth

device "00:1A:0E:1A:0E:90"

rofile "voice"

}

4)测试蓝牙耳机

aplay -D headset demo.wav 或者在Skype 里选择headset就可以了

NOTE:

在配置中,我的蓝牙耳机,就是播放的时候,死在那里,怎么都不出声音,你可以在bluetoothd的调试信息里看到 " State changed /org/bluez/19016/hci0/dev_00_1A_0E_1A_0E_90: HEADSET_STATE_CONNECT_IN_PROGRESS -> HEADSET_STATE_CONNECTED" 也能从HEADSET_STATE_CONNECTED 到 HEADSET_STATE_PLAYING" 就是不出声音。这时候,你要看看是不是你的蓝牙适配器有问题,我的Broadcom就是如此。

你可以用lsusb 看 到你的bluetooth adapter 的DeviceID , 然后在 driver/bluetooth/btusb.c 里加上就可以了。不过也可以在modprobe btusb force_scofix=1,也能解决问题。

lsusb:

Bus 002 Device 002: ID 0a5c:2121 Broadcom Corp. BCM2210 Bluetooth

tusb.c : 104 line

{ USB_DEVICE(0x0a5c, 0x2121), .driver_info = BTUSB_RESET | BTUSB_WRONG_SCO_MTU },
上一篇:nginx访问控制
下一篇:硬盘安装Fedora16