HFP for Linux 無法和智慧手機配對使用?
HFP for Linux 是一個在Linux上實作藍牙Hands-free profile的程式, 簡單講就是可以電腦變成藍牙耳機。這是一個開源碼的專案, 大約在2008-2009年間熱烈地進行, 之後由於主要程式貢獻者Samr7不見了,整個專案可以說是停了下來了。最後一次程式修改是在2010年四月。 專案活動情形可以由 http://www.ohloh.net/p/nohands 看到。 我在試這支程式時,發現一個現象:較舊的手機可以正常的運作,但是新的智慧手機就不行。其實也不是不行,而是程式一開始會先進行手機的找尋(Inquiry),在此就找不到,因此後續的功能也自然無法使用。其實手機找尋(Inquiry)的動作是很有討論性的,也是令人混淆的。因為作業系統本身就己經做過一次這個動作了, 不管是使用blueman或者是預設的藍牙管理程式,都是必須先和手機做配對。可是nohands這支程式還是要自己做一次: 而且它的找尋(Inquiry)動作相當的快,一般都要約20秒,它只要5秒。 因為由藍牙規格來說,HFP並不會和硬體有太大的相關,所以我想這支程式雖然是幾年前開發的,但HFP 1.5也還是很有相容性才對。其實我手上有一隻Nokia BH-100的藍牙耳機是2007年買的,它就運作的很正常。因此大膽猜測,應該只是nohands在做手機的找尋(Inquiry)時,也許做了什麼事情,因此把新手機排除在外了! 首先使用hcidump程式來觀察是否底層Inquiry時就出問題,還是nohands本身自己其實有Inquiry到,但是自己另外做了篩選動作: $ sudo hcidump HCI sniffer - Bluetooth packet analyzer ver 2.4 device: hci0 snap_len: 1028 filter: 0xffffffff < HCI Command: Inquiry (0x01|0x0001) plen 5 lap 0x9e8b33 len 4 num 0 > HCI Event: Command Status (0x0f) plen 4 Inquiry (0x01|0x0001...