2021/12/15 よりサイトリニューアルしました

Raspberry PiとWindows PC間でBluetoothシリアル通信をやってみる

bluetooth シリアル通信

 

前回、BleでRaspberry Piとmicro:bit間の通信についてまとめました。↓

 

今回はようやくBluetoothのシリアル通信が出来ましたので、ここでまとめておこうかと思います。

Raspberry Pi ZERO W とWindows PC間でのBluetoothシリアル通信になります。けっこう巷に溢れている内容ではありますが、それでもうまく行かないのが電子工作の常でございますので、躓いた点についても記したいと思います。

本記事が少しでもお役に立てたなら幸いでございます。

なお、本内容につきましてはrobotakaoさんの記事を参考にさせていただきました。↓

Raspberry Pi Zero WでBluetooth経由でシリアル通信(シリアル接続)続報

 

 

初めに

ライブラリのインストール

raspberry PiでBleuzがインストールされていない場合、以下のライブラリをインストールします。

Bluetoothが有効になっているか確認します。

UP RUNNING PSCAN になっていればOK。DOWNになっていれば下記コマンドで有効にします。

 

ペアリング

Raspberry Pi側の操作

下記コマンドでbluetooth設定に入ります。

下記コマンドで周囲のbluetooothデバイスを検索します。

ぱらぱらと各デバイスのMACアドレスが表示されるので、PCのMACアドレスが確認できればOKです。下記コマンドでスキャンをOFF(PCのMACアドレスはcmdからipconfig /all で確認できます。※bluetoothのMACアドレスですので注意。)。

PCとペアリングします。xx:xx:…はPCのMACアドレスです。

PC側の操作

PCでbluetoothのアイコンをクリックすると、パスキーは○○ですか?聞いてきます。このタイミングで、Raspberry PI側にパスキー○○yes/no と表示されているので、yesを選択後にPC側で「はい」を選択。PCとRaspberry PIの両方でペアリングOKの表示がでます。

 

 

※躓きポイント1:再度ペアリングする際に、なかなかペアリング出来ない事があります。その時はPC側でペアリング済みのRaspberry Piのデバイスを解除して、Raspberry Pi側でも下記コマンドで解除します。※xx:xx:…はPCのMACアドレス

 

シリアル接続

シリアルポート設定

SDPサーバーの設定を以下のように変更します。設定ファイルを開き、変更前の行を変更後のように「–compat」を付け加えます。

ここで一度bluetoothを再起動。

SDPサーバー に通信のシリアルポートを追加します。

SDPサーバーにシリアルポートが追加されたか確認します。パーミッションでエラーとなるので、まずパーミッションを777へ変更。

確認。

サービス名やHandleがずらりと表示されますので、一番下の方に先ほど追加した「Service Name: Serial Port」がチャンネル22で表されていればOKです。

 

シリアル接続

Raspberry Pi側でシリアル接続待ち状態を作ります。

続いて、PCのコントロールパネルからデバイスとプリンター確認画面へ行き、RaspBerry Piを右クリック、プロパティからサービスを選択、シリアルポート(SPP)にチェックを入れ、適用を押します。となりにCOMポートが表示されるので、覚えておきます。※躓きポイント2:もしCOMポートが表示されなければCH341SERのUSBドライバーをインストールしてください。↓

http://www.wch-ic.com/downloads/CH341SER_EXE.html

comport

 

これで接続できる状態になりましたので、PC側からTera Termでシリアル接続します。 Tera Term を起動し、下側のシリアルにチェックを入れると接続先のCOMポートが右側に表示されますので、Raspberry PiのCOMポートを選択し、OKをクリックします。

Raspberry Piにコネクションと表示されれば接続完了です。

bluetooth Uart

 

データ転送

PCからRaspberry pi

Raspberry Piで新たにターミナルを開いて(接続中のターミナルをクリアすると接続が切れます)、 下記コマンドを入力します。

これでRaspBerry Piのターミナルに、PCで入力した文字が反映されます。

 

Raspberry PiからPC

新しく立ち上げたRaspberry Piのターミナルに下記コマンドを入力します。

echoの後の””内の文字列が、PCに反映されます。

 

 

 

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です