ラズパイで起動時にBluetooth接続したデバイスを自動でConnectedにする(ServicesResolved: no Connected: noとなり都度途切れてしまう場合の解決法)

bluetoothが毎回途切れる問題

私の愛用する↓こちらのキーボード(デザイン・機能性・価格の3拍子◎)にてラズパイ接続を行う際、


再起動すると接続が毎回途切れてしまうことに気が付きました。Σ( ゚Д゚)

画像に alt 属性が指定されていません。ファイル名: image-6.png
起動する度、PairedはYesだがConnectedがnoになってしまう

Logicool社製だったりBLE(低消費電力でBluetoothする仕組み)だったり、相性だったりと
原因はいくつか考えられますが、
これでは起動時にペアリングは出来ていても、既にBluetoothキーボードからは操作不可能な状態から
始まってしまいます。。

なのでPCからTera termを起動して、bluetoothctlを叩いて都度connectをしなおさなければなりません。
ワイヤレスでウハウハする予定だったのに..!

Cronで接続を自動試行させる

どげんかせんといかん!

ということでggっていたら、@noraworldさんのこちらの記事を見つけました。

cronに都度再接続を志向してくれるshファイルを書いてくださっているようで、
これを登録しておくことで手動で行っていたconnectを、起動時に自動で行ってくれるみたいです。神!

具体的な処理については以下のgitのリポジトリにある該当ソースコードにありますが、
よくわからないという方は↓の3行コピペで叩けばOKです。


$ git clone https://github.com/noraworld/bluetoothctl-autoconnector.git

$ cd bluetoothctl-autoconnector

$ ./setup.sh

bluetoothctl で自動接続 (常時接続) をする方法

これでrebootしてみると..!

接続ランプがついた!

じゃじゃーん!
無事自動接続されました。

念のためTera termのほうからも覗いてみると。。

はい!ちゃんと既にConnected deviceとして表示されていますね!

(オマケ)このshファイルを手動で実行する場合

bluetoothctl-autoconnectorディレクトリに異動し、
./autoconnector.shコマンドで実行することができます。

(オマケ2)自動実行されなくなった場合

また、ログインユーザーを削除、無効化などをした場合にこの設定が外れることがあります。
その時は、新しく普段使いのユーザーでログインした後、再度
sudo ./setup.sh を実行してください。

sudoを忘れるといつも怒られるので気を付けましょう(自戒)

これで、cronタブで再度定期実行が登録されます。めでたしめでたし。
(OSのインストールから半日かかってしまった..😳)

お次はいよいよ、コンテンツ作りだ!

Raspberry Piの人気記事一覧

【2023年最新】RaspberryPiのシリーズ比較【おすすめモデル紹介】
【Raspberry pi】USBメモリをマウント(認識)させる方法
Raspberry Piで自動ログイン(auto-login)を設定する
ラズパイで起動時にBluetooth接続したデバイスを自動でConnectedにする(ServicesResolved: no Connected: noとなり都度途切れてしまう場合の解決法)
RaspberryPi(ラズベリーパイ)で.shファイルを実行する方法

まる。

━━━━━━━━━━━━━━━━━
■未経験OK!大学生インターン募集中!
プログラミングやITなど
興味ある方ご連絡ください‎。
(๑ > ﻌ <`)و✧
━━━━━━━━━━━━━━━━━
Python歴5年のフルスタックエンジニア&ヨギー。
大学は心理学専攻、趣味はヘルスケア全般。
最近は自作脳波デバイスの設計とそれを使ったインタラクティブアート生成に勤しみ中。

↓アートとか日常。
Instagram:@malmal0v0

お仕事のご依頼はDM又はメールにて。

まる。をフォローする




タイトルとURLをコピーしました