代码: 全选
hci_scodata_packet: hci0 SCO packet for unknown connection handle 92
搜了一下解法,发现是内核的问题。我自己总结了个解法,希望能帮助大家:
解上蓝牙,运行lsusb,然后赶快拔下蓝牙。
你会看到这样的一项:
代码: 全选
Bus 002 Device 003: ID 0a12:0001 Cambridge Silicon Radio, Ltd Bluetooth Dongle (HCI mode)
记下这个 0a12:0001
到 http://www.kernel.org 上下载最新的内核。
我下载了linux-2.6.27.6.tar.bz2
解压。
运行
代码: 全选
sudo apt-get install libqt3-mt-dev -y
cd linux-2.6.27.6
gedit ./drivers/bluetooth/hci_usb.c
在这个数组里加上一项:
代码: 全选
{ USB_DEVICE(0x0a12, 0x0001), .driver_info = HCI_BROKEN_ISOC },
要是数组里本来就有USB_DEVICE(0x0a12, 0x0001)这一项,那么请把等号后面的项改成HCI_BROKEN_ISOC。
然后关了gedit,回到终端,运行
代码: 全选
make xconfig
再选“File”->"Save"。关了窗口。
然后
代码: 全选
make
make modules
sudo make modules_install
sudo make install
sudo mkinitramfs -o /boot/initrd.img-2.6.27.6 2.6.27.6 (根据内核具体版本而随机应变)
代码: 全选
title Ubuntu 8.04.1, kernel 2.6.27.6-generic
root (hd0,0)
kernel /boot/vmlinuz-2.6.27.6 root=UUID=7c503741-0611-4cd8-80ef-937aa6c202bb ro quiet splash locale=zh_CN
initrd /boot/initrd.img-2.6.27.6
quiet
重启,选择用新的内核启动。
再接上蓝牙,就没有 hci_scodata_packet 啦

弱弱的说:不过,要是系统没声音、或者声音咔啦咔啦的话,你还要自己编译安装一遍ALSA才行。
以下是装ALSA的方法:
下载这三个文件(要是有更加新的版本就下新版):
代码: 全选
驱动程序:ftp://ftp.alsa-project.org/pub/driver/alsa-driver-1.0.18a.tar.bz2
库文件:ftp://ftp.alsa-project.org/pub/lib/alsa-lib-1.0.18.tar.bz2
工具:ftp://ftp.alsa-project.org/pub/utils/alsa-utils-1.0.18.tar.bz2

打开终端,运行
代码: 全选
sudo apt-get install xmlto -y
sudo apt-get install libncurses5-dev -y (根据实际情况,可能还需要装别的包)
VER=1.0.18 (根据具体情况改)
tar jxf alsa-driver-${VER}a.tar.bz2 (根据具体情况改)
tar jxf alsa-lib-${VER}.tar.bz2
tar jxf alsa-utils-${VER}.tar.bz2
cd alsa-driver-${VER}a
./configure --with-cards=hda-intel && make && sudo make install (我电脑声卡是Intel的,所以这么写)
cd ..
cd alsa-lib-${VER}
./configure && make && sudo make install
cd ..
cd alsa-utils-${VER}
./configure && make && sudo make install
cd ..
代码: 全选
sudo gedit /etc/modprobe.d/alsa-base
代码: 全选
options snd-hda-intel model=acer