n-LIFE

I love nature photo. Subaru Impreza WRX/Embedded SW/Snowboard/Otaku

Ubuntu (Lubuntu) のBluetooth LE自動接続ではまった話

Ubuntu 15.10(正確にはLubuntu)のBluetooth接続ではまった。GUIBluetoothマネージャではなくCUIのbluetoothctlを使ったらうまくいった。

 

とあるBLEデバイスをUbuntuBluetoothマネージャでペア設定したところ、勝手にUbuntuから自動接続するようになってしまい、BLEデバイスをスマホに接続できなくなってしまった。
ちょっとぐぐったらstackoverflowあたりで『Bluetoothマネージャから接続してるデバイスを選択して「セットアップ」から接続を切ればいいよ』というのがあったがなんとデバイス一覧に接続中のデバイスが出てこない orz (なんで)
でも、再起動してからBluetoothマネージャを開くと、逆に接続してるデバイスだけ表示される(なんで)。この状態でデバイスを選択して「削除」をするとリストから消えるんだけど裏では接続しに行く。はぁー…

しょうがないのでGUIは捨ててbluetoothctlを使ってCUIで対応した。
bluetoothctlはLubuntuなら特に何もしなくても最初から入っているっぽい。ターミナルで

$ bluetoothctl

すると接続されているデバイスのBDアドレスが表示されるのですかさず

> disconnect 12:34:56:77:88:99

これでデバイスが切断され、その後自動接続されることは無くなった。
これがバグなのか仕様なのかはわからないが、BluetoothLinuxで扱う際はCUIツールを使えるようになっていた方が困らないし勉強になる。