1. 程式人生 > >Linux下如何使用藍芽

Linux下如何使用藍芽

藍芽是多家移動裝置製造商選擇的無線協議,是一種短距離無線傳輸技術。它擁有多項吸引人的特性,最重要的是它在資料傳輸上的低能耗。目前市場上裝置中執行的藍芽協議有三個版本:分別是版本 1.1、1.2 AFH 和 2.0+EDR。新版本的協議與舊版本完全相容。

使用藍芽

在使用藍芽之前,先要確認你所使用的核心是否已經加入藍芽支援,各大Linux廠商的發行版的核心一般都帶有藍芽支援。

首先載入模組:

#modprobe hci_usb (我這裡使用的是usb介面的藍芽介面卡)

#modprobe rfcomm

開啟藍芽服務

#/etc/rc.d/init.d/bluetooth start

開啟裝置介面:

#hciconfig hci0 up

檢視裝置狀態:

#hciconfig -a

hci0: Type: USB

BD Address: 00:10:60:A3:68:9F ACL MTU: 192:8 SCO MTU: 64:8

UP RUNNING PSCAN ISCAN

……

這裡將會列出本地藍芽介面的一些資訊,其中最重要的就是BD Address 介面地址,遠端藍芽裝置就是通過這個地址訪問本地的。

使用藍芽耳機

還是載入模組

#modprobe snd_bt_sco

將藍芽耳機置為發現模式,然後進行搜尋

#hcitools scan

Scanning ……

00:0E:07:1C:AE:1D JBR250

當然,你得到的輸出不會和上面一樣,JBR250是耳機名,00:0E:07:1C:AE:1D是耳機的MAC地址,記下這個地址,後面還將用到。

#hciconfig hci0 voice 0x0060

#btsco 剛才記下的MAC地址

此時會出現裝置配對視窗讓你輸入PIN碼,藍芽耳機的PIN碼一般都是固定的,可以從說明書上找到。

當連線建立後,對應藍芽耳機的音訊裝置會被對映到/dev/dsp1,現在我們可以開始測試了。

在終端下輸入aplay——D plughw: Headset sound.wav播放一段聲音檔案,如果還沒有聽到聲音,請檢查你的耳機是不是還需要按下一個接聽鍵。

如果一切順利,您就可以使用XMMS或者其他

播放器向藍芽耳機播放音樂了。

傳送與接收檔案

下面我們簡單介紹一下如何利用OBEX協議給手機傳送檔案。

OBEX作為一種通用的資料交換協議,並不是藍芽特有的協議,因此Linux基本的藍芽棧中沒有提供對OBEX的支援,我們還需要第三方的工具軟體來實現檔案的傳送。這種工具軟體很多,以KDE環境下的KdeBluetooth為例介紹。

KdeBluetooth是開源社群中正在開發的一個藍芽通訊工具,提供了藍芽OBEX服務,檔案傳輸客戶端,和一套藍芽配置工具。

首先到你需要到KdeBluetooth的官方網站http://kde-bluetooth.sourceforge.net/下載並安裝最新的工具包。

這裡提供一些具體的安裝方法:

http://docs.kde.org/development/en/extragear-pim/kdebluetooth/download.packages.html 提供了SuSe的RPM包,你可以使用rpm命令直接安裝該RPM包;也可以去http://fred.hexbox.de/debian/下載最新的原始碼包自己編譯。當然,最簡單的辦法就是使用Red Flag Linux桌面5.0,該發行版已經預裝了KdeBluetooth,可以直接使用。

安裝後該工具後可以在控制檯中直接輸入kbluetoothd啟動,也可以依次點選開始選單-〉應用程式-〉網路-〉藍芽通訊。啟動後系統托盤中會出現一個藍芽圖。

圖示右鍵點選選取“傳送檔案”便會開啟檔案傳送視窗,此時開始自動搜尋遠端藍芽裝置,並將提供了OBEX服務的裝置列在視窗中。如果搜尋過程結束卻沒有任何裝置名列出,請確認你的手機是否已經開啟藍芽。

將需要傳送的檔案拖入“待發送的檔案”視窗中,在“遠端裝置選擇”視窗中選擇傳送物件(就是剛才提到的手機),然後單擊“傳送”按鈕。如果你是第一次與手機傳送檔案,這時就需要進行配對,手機會要求輸入PIN碼(即配對碼,由使用者輸入,不得超過16位元組),輸入確認後主機也會出現PIN視窗,將剛才手機上的PIN碼再次輸入,兩次PIN碼輸入一致則配對結束,檔案便開始傳送。

從手機接收檔案也很簡單,依次點選系統托盤中的藍芽圖示-〉本地藍芽配置-〉本地服務配置,確認是否已經打開了OBEX檔案傳送服務,通過“啟動”按鈕開啟列表中相應的服務。然後開啟手機的檔案管理器,選擇通過藍芽傳送,等待手機搜尋到主機,傳送。這是主機將會彈出視窗詢問是否同意接收,選擇“是”則開始接收。同樣,如果您是第一次從手機接收檔案,也需要進行配對,只不過這次KdeBluetooth會預先給出一個PIN碼並顯示在視窗中,你只需將顯示在視窗中的PIN碼正確無誤的輸入到手機上就可以了。

除了傳送檔案,KdeBluetooth還提供了一系列圖形化的配置管理工具替代命令列工具:

檢視遠端裝置:將會定期搜尋周邊的藍芽裝置,即時將結果顯示出來。

檢視連線資訊:檢視當前藍芽裝置的連線狀態,也可以手動關閉一個已經存在的連線。

串列埠通訊工具:KdeBluetooth提供的一個基於串列埠的文字通訊工具,利用該工具的客戶端可以相互發送和接收文字資訊。