今回はRaspberryPiのお話です。
だいぶ久しぶりにRaspberryPiの記事ですが、
実は去年の11月あたりにRaspberryPi400を購入してそのままにしていたんですよね。
ですからちょっとやらなきゃな…
と思っていました。
今回この記事を書くことになったきっかけとしては、
SwitchBotという家中の家電をIot化しようという
アイテムを購入したことですね。
このSwitchBotというアイテムは、Wifiでつなぐモジュールと
Bluetoothでつなぐモジュールの2種類あるんですね。
このBluetoothでつなぐほうのモジュール。
こいつをRaspberryPiで制御・データ取得したいな。
なんて思ったんです。
その時に必要なのがRaspberryPiのBluetooth機能を
しっかり使いこなすことだったわけです。
というわけで本題に行きましょう!
Youtubeチャンネルにさまざまな動画を上げています。
↓↓↓こちらからYoutubeチャンネルにアクセス!! ↓↓↓
本ブログはアフィリエイトを用いた広告を掲載しています。
RaspberryPiでBluetoothを使う準備
これをやらないと、いくらこの先の手順を実行しても意味がありません。
エラーではじかれるので注意してください。
RaspberryPiのBluetooth機能をONにする
まずはRaspberryPi自体のBluetooth機能をONにしていきましょう。
そもそもBluetooth機能がOFFだと当然ですが通信できませんからね。
Bluetooth機能をONにする方法は、
このように初期の状態だと右上にこんなマークがあるはずです。
左から2番目のマークですね。
機能がOFFになっていると、
このようにグレーアウトされます。
そんな時は、このbluetoothのマークをクリックして、表示されるこのボタンを押しましょう。
もしも、そもそもBluetoothのマークが右上にない場合は?
そんな時は、パネルの近くで右クリックしてみましょう。
するとこんな感じで出てきますで、
黄色い資格で囲んだパネルのアイテムの追加・削除を選択しましょう。
さらにここで追加ボタン(黄色で囲んだボタン)を押していきましょう。
Windowsでもここら辺は似たような感じですよね。
最後に、Bluetoothの項目を選択して、Addボタンを押して追加されます。
ちなみに、この項目追加ですが、Bluetoothを2個でも3個でも追加可能です。
機能は一緒ですから、1個で十分ですがね…
↑実際にやっても特にメリットはなく、
ちょっと邪魔になるというデメリットくらいしかありません。
削除の方法は、追加のところで削除を選択するだけです。
一回やってしまえばなんてことはないですよね。
Bluetoothの機能を使って、周辺の機器を検索する方法
さて、今回の主目的のお話をしていきましょう。
使うのはLXterminalです。
ここで、bluetoothctlと打ち込みます。
一番左が[bluetooth]と変わっていれば成功です。
次に、この状態で、scan onと打ち込みます。
するとこんな感じで近くにあるBluetooth機器のアドレスが表示されます。
ちょっとアドレスを丸出しにするのはあまりよろしくないので、
意図的に半分隠した状態で掲載しています。
switchBotだと、スマホのアプリで
所有しているモジュールのアドレスは確認できます。
switchBot以外でもおそらく確認可能なはずです。
そこで確認したものがここに表示されていれば、
RaspberryPiで認識できているよ。
という話になります。
おまけbluetoothctlでできること
どんなBluetoothデバイスが周りにあることが調べられましたが、
当然bluetoothctlの機能はそれだけではありません。
[bluetooth]となった状態でhelpというコマンドを打ってみましょう。
すると、こんな感じでできることの一覧表が表示されます。
scanはほんの一部の機能なので、この中から必要なものがあったら
是非試してみてくださいね。
今回はLXterminalからの操作でしたが、
次回以降でbluepyというpythonのライブラリを使用して
bluetoothモジュールで取得した値をRaspberryPiで取得する方法についても
ご紹介する予定です。
今回のまとめ
bluetoothというか無線全般に言えることですが、
GPIOのON/OFFでいろんな制御しているときとは少し違った感覚になりますよね。
GPIOでいじるときは接続がどうとか気にしないですもんね。
有線なので接続は絶対できる…みたいな。
それから、他の記事でも上げていますが、
ArduinoチックにBluetoothの機能を搭載しているマイコンボードも存在します。
名前はESP32というやつですね。
このESP32を搭載したM5StackとかM5Stickとかも実は買ったけど
開けてない…なんて状況です。
bluetoothも低消費電力のBLEが登場してから爆発的に普及している気がします。
いまさらBLEかよ。なんていわないでここらで一緒に使えるようにしてみませんかね。
次回はRaspberryPiでSwitchBotの温湿度計の値をPythonで取得します!
コメント