やりたいこと
前回の記事で、いくつかのUART-Bluetooth変換モジュールを紹介しました。
今回はlinux(ラズパイ)での通信手順について説明します。
どうすればいいか
モジュールが変わっても基本的な使い方は同じで
1. ペアリングをする
2. デバイスファイルを割り当て
3.デバイスファイルにアクセス
の三つです。ちなみに、Windowの場合ペアリングをした後に、仮想ComポートでBluetooth機器にアクセスできることが多いです。
1.ペアリングをする
必要なパッケージのインストール
sudo apt-get install bluetooth bluez-utils
Bluetooth機器の検索
hcitool scan
繋ぎたい機器のマックアドレスを探す
Bluetooth機器との接続のための対話モードに入る
bluetoothctl
(忘れてしまって申し訳ないのだが、Bluetoothをデーモン起動みたいなステップがあったかも)
対話モード
> pair MACアドレス
> trust MACアドレス
> connect MACアドレス
> exit
> trust MACアドレス
> connect MACアドレス
> exit
2.デバイスファイルの割り当て
sudo rfcomm bind /dev/rfcomm1 繋ぎたい機器のMACアドレス
上記のコマンドで/dev/rfcomm1がBluetoothの入出力をするためのデバイスファイルとなります。
3.デバイスファイルにアクセス
通信にはPythonのpyserial等を使うのがよいと思います。pyserialで先ほど割り当てたデバイスファイルにアクセスするとマイコンとのデータの送受信が可能です。
注) うまく通信ができなかったら/dev/rfcomm1の読み書きの権限に注意してください。
そのうちサンプルコードを追加します。