以下步驟主要說明,在 ubuntu 9.04 + BlueZ 4.3x 下,如何使作業系統自動輸入藍牙裝置的 PIN 碼並且自動配對。(~$ 是作業系統的提示符號,不用輸入。)
顯示本機藍牙 adapter 位址的指令,hci0與11:22:33:44:55:66就是本機端的藍牙天線的名稱與位址。
~$ hcitool dev
Devices:
hci0 11:22:33:44:55:66
掃描遠端藍牙裝置的名稱與位址,66:55:44:33:22:11與Remote_Device_Name就是遠端藍牙裝置的位址與名稱。
~$ hcitool scan
Scanning ...
66:55:44:33:22:11 Remote_Device_Name
編輯 /etc/bluetooth/rfcomm.conf ,將遠端藍牙裝置加入連線列表,新增內容如下。
rfcommN { # N請取代成任意整數,如 0, 1, 2 等
bind yes;
device 66:55:44:33:22:11; # 填入剛剛掃描到的遠端藍牙裝置位址
channel 1;
comment "Remote Device";
}
修改或新增 /var/lib/bluetooth/11:22:33:44:55:66/pincodes (要注意目錄名稱含有本機端藍牙天線的位址),若無此檔案則配對時會要求使用者輸入 PIN 碼,文字檔內第一個參數為遠端藍牙裝置的位址,第二個參數為藍牙裝置的 PIN 碼。範例如下。
66:55:44:33:22:11 4321
AA:BB:CC:DD:EE:FF 000000
與遠端藍牙裝置連線:
~$ sudo hcitool cc 66:55:44:33:22:11
若要建立本機端 serial port,N是在 rfcomm.conf 內所填入的編號,此 serial port 會建立在 /dev/rfcommN 目錄。
~$ sudo rfcomm connect N
Connected /dev/rfcommN to 66:55:44:33:22:11 on channel 1
Press CTRL-C for hangup