Linux
グラフィカルなBluetoothマネージャがある場合、ノートPCとBluetoothモジュールのペアリングに使えます。その場合、これらのほとんどの手順は不要です。 もしかすると、この手順は必要かもしれません。
電源を入れる
まず、ノートPCのBluetoothトランシーバは、オフになっている可能性があります。hciconfig
で状態を確認し、必要があれば電源を入れて下さい。
$ hciconfig
hci0: Type: Primary Bus: USB
BD Address: 68:17:29:XX:XX:XX ACL MTU: 310:10 SCO MTU: 64:8
DOWN <--
RX bytes:580 acl:0 sco:0 events:31 errors:0
TX bytes:368 acl:0 sco:0 commands:30 errors:0
$ sudo hciconfig hci0 up
$ hciconfig
hci0: Type: Primary Bus: USB
BD Address: 68:17:29:XX:XX:XX ACL MTU: 310:10 SCO MTU: 64:8
UP RUNNING <--
RX bytes:1190 acl:0 sco:0 events:67 errors:0
TX bytes:1072 acl:0 sco:0 commands:66 errors:0
その後、BlueZ (Bluetooth) デーモンを起動しなければなりません。
- systemdベースのLinuxディストリビューションでは、下記コマンドを使います。
$ sudo systemctl start bluetooth
- Ubuntu(またはupstartベースのLinuxディストリビューション)では、下記コマンドを使います。
$ sudo /etc/init.d/bluetooth start
Bluetoothをアンブロックする必要があるかもしれません。rfkill list
の出力に依存します。
$ rfkill list
9: hci0: Bluetooth
Soft blocked: yes # <--
Hard blocked: no
$ sudo rfkill unblock bluetooth
$ rfkill list
9: hci0: Bluetooth
Soft blocked: no # <--
Hard blocked: no
スキャン
$ hcitool scan
Scanning ...
20:16:05:XX:XX:XX Ferris
$ # ^^^^^^
ペアリング
$ bluetoothctl
[bluetooth]# scan on
[bluetooth]# agent on
[bluetooth]# pair 20:16:05:XX:XX:XX
Attempting to pair with 20:16:05:XX:XX:XX
[CHG] Device 20:16:05:XX:XX:XX Connected: yes
Request PIN code
[agent] Enter PIN code: 1234
rfcommデバイス
/dev
にBluetoothデバイス用のデバイスファイルを作成します。すると、/dev/ttyUSB0
を使ったように、Bluetoothデバイスを使うことができます。
$ sudo rfcomm bind 0 20:16:05:XX:XX:XX
bind
の引数として0
を使用したため、/dev/rfcomm0
がBluetoothモジュールのデバイスファイルとして割り当てられます。
次のコマンドで、いつでもデバイスファイルを解放(削除)することができます。
$ # 今はこのコマンドを実行しないで下さい!
$ sudo rfcomm release 0