.png)
我的筆記型電腦無法透過 Ubuntu 找到藍牙裝置。在 Windows 7 中它可以正常工作。我使用的是 Ubuntu 12.04 和 11.10
lsusb 的輸出:
匯流排 001 裝置 001:ID 1d6b:0002 Linux Foundation 2.0 根集線器 匯流排 002 裝置 001:ID 1d6b:0002 Linux Foundation 2.0 根集線器 匯流排 003 裝置 001:ID 1d6b:0002 Linux Foundation 2.0 根集線器 匯流排 004 裝置 001:ID 1d6b:0003 Linux Foundation 3.0 根集線器 總線 001 設備 002:ID 8087:0024 英特爾公司整合速率匹配集線器 總線 002 設備 002:ID 8087:0024 英特爾公司整合速率匹配集線器 總線001設備003:ID 1bcf:288a凌陽創新科技股份有限公司 總線 001 設備 004:ID 0489:e03c 富士康/鴻海 匯流排 002 設備 003:ID 046d:c52b Logitech, Inc. 統一接收器
hciconfig 的輸出:
hci0:類型:BR/EDR 總線:USB BD 位址:94:39:E5:4E:FA:3A ACL MTU:1022:8 SCO MTU:183:5 運行 PSCAN ISCAN RX 位元組:1559 acl:0 sco:0 事件:104 錯誤:0 TX 位元組:926 acl:0 sco:0 指令:81 錯誤:0
lsmod 的輸出:
模組大小 使用者 bbswitch 13355 0 射頻通訊 47604 12 法國國家石油公司 18281 2 parport_pc 32866 0 ppdev 17113 0 binfmt_misc 17540 1 snd_hda_codec_hdmi 32474 1 snd_hda_codec_conexant 62128 1 snd_hda_英特爾 33773 3 snd_hda_codec 127706 3 snd_hda_codec_hdmi、snd_hda_codec_conexant、snd_hda_intel 喬德夫 17693 0 snd_hwdep 13668 1 snd_hda_編解碼器 snd_pcm 97188 3 snd_hda_codec_hdmi,snd_hda_intel,snd_hda_codec snd_seq_midi 13324 0 uvc視頻 72627 0 videodev 98259 1 uvcvideo hid_logitech_dj 18593 0 snd_rawmidi 30748 1 snd_seq_midi usbhid 47199 1 hid_logitech_dj 隱藏 99559 2 hid_logitech_dj,usbhid 弧4 12529 2 v4l2_compat_ioctl32 17128 1 影片開發 snd_seq_midi_event 14899 1 snd_seq_midi ath9k 132390 0 mac80211 506816 1 ath9k ath9k_common 14053 1 ath9k snd_seq 61896 2 snd_seq_midi,snd_seq_midi_event ath9k_hw 411112 2 ath9k,ath9k_common snd_timer 29990 2 snd_pcm,snd_seq snd_seq_device 14540 3 snd_seq_midi,snd_rawmidi,snd_seq i915 468651 3 滑鼠 87603 0 snd 78855 16 snd_hda_codec_hdmi、snd_hda_codec_conexant、snd_hda_intel、snd_hda_codec、snd_hwdep、snd_pcm、snd_rawmidi、snd_codeseq、snd_hwdep、snd_pcm、snd_rawmidi、snd_seq、snd_hwdep、snd_pcm、snd_rawmidi、snd_seqseqseq. 24067 3 ath9k,ath9k_common,ath9k_hw cfg80211 205544 3 ath9k,mac80211,ath drm_kms_helper 46978 1 i915 drm 242038 4 i915,drm_kms_helper BTSB 18288 2 mac_hid 13253 0 藍牙 180104 23 rfcomm,bnep,btusb 音核 15091 1 snd 宏碁_wmi 28418 0 MXM_WMI 12979 0 snd_page_alloc 18529 2 snd_hda_intel,snd_pcm i2c_algo_bit 13423 1 i915 稀疏鍵映射 13890 1 acer_wmi serio_raw 13211 0 rts_pstor 445196 0 梅 41616 0 wmi 19256 2 acer_wmi,mxm_wmi 影片 19596 1 i915 LP 17799 0 parport 46562 3 parport_pc,ppdev,lp atl1c 41717 0
uname -a 的輸出:
Linux 筆記型電腦 3.2.0-23-generic #36-Ubuntu SMP 四月 10 日星期二 20:39:51 UTC 2012 x86_64 x86_64 x86_64 GNU/Linux
dmesg 的輸出 | grep 藍牙:
[7.642818]藍牙:核心版本2.16 [7.642839]藍牙:HCI裝置和連線管理器已初始化 [7.642841]藍牙:HCI套接字層初始化 [7.642842]藍牙:L2CAP套接字層初始化 [7.642847]藍牙:SCO套接字層初始化 [7.700557]藍牙:通用藍牙USB驅動程式版本0.6 [15.498797]藍牙:BNEP(乙太網路模擬)版本1.3 [15.498800]藍牙:BNEP過濾器:協定多播 [15.524883]藍牙:RFCOMM TTY層初始化 [15.524888]藍牙:RFCOMM套接字層初始化 [15.524890]藍牙:RFCOMM版本1.11
答案1
支援OK繃 AR5BBU22位於核心中,因為3.6.15
但此外,還必須在系統上安裝專有韌體才能使藍牙正常運作。它在軟體包中提供linux-firmware
(在 ubuntu 上;firmware-atheros
在 debian 上,非免費)。
答案2
這個需要一個補丁才能正確載入韌體:
--- a/drivers/bluetooth/ath3k.c 2012-04-27 19:17:35.000000000 +0200
+++ b/drivers/bluetooth/ath3k.c 2012-04-30 01:29:47.081838667 +0200
@@ -79,6 +79,9 @@ static struct usb_device_id ath3k_table[
/* Atheros AR5BBU12 with sflash firmware */
{ USB_DEVICE(0x0489, 0xE02C) },
+ /* Atheros AR5BBU22 with sflash firmware */
+ { USB_DEVICE(0x0489, 0xE03C) },
+
{ } /* Terminating entry */
};
@@ -95,6 +98,9 @@ static struct usb_device_id ath3k_blist_
{ USB_DEVICE(0x13d3, 0x3375), .driver_info = BTUSB_ATH3012 },
{ USB_DEVICE(0x04ca, 0x3005), .driver_info = BTUSB_ATH3012 },
+ /* Atheros AR5BBU22 with sflash firmware */
+ { USB_DEVICE(0x0489, 0xE03C), .driver_info = BTUSB_ATH3012 },
+
{ } /* Terminating entry */
};
--- a/drivers/bluetooth/btusb.c 2012-04-27 19:17:35.000000000 +0200
+++ b/drivers/bluetooth/btusb.c 2012-04-30 01:31:49.302182281 +0200
@@ -135,6 +135,9 @@ static struct usb_device_id blacklist_ta
/* Atheros AR5BBU12 with sflash firmware */
{ USB_DEVICE(0x0489, 0xe02c), .driver_info = BTUSB_IGNORE },
+ /* Atheros AR5BBU22 with sflash firmware */
+ { USB_DEVICE(0x0489, 0xe03c), .driver_info = BTUSB_ATH3012 },
+
/* Broadcom BCM2035 */
{ USB_DEVICE(0x0a5c, 0x2035), .driver_info = BTUSB_WRONG_SCO_MTU },
{ USB_DEVICE(0x0a5c, 0x200a), .driver_info = BTUSB_WRONG_SCO_MTU },