2017/11/25

pybluezを利用すると"untimeError: Channel or attrib not ready"とエラーになる

pybluezをインストールしたので、サンプルなどを動作させようとしたのですが、、、
https://github.com/karulis/pybluez/tree/master/examples/ble
"read_name.py"を実行したのですが、下記のエラーで動作しません。
Connecting... Traceback (most recent call last):
  File "read_name.py", line 41, in 
    Reader("C7:7A:98:EA:17:17")
  File "read_name.py", line 16, in __init__
    self.connect()
  File "read_name.py", line 23, in connect
    self.requester.connect(True)
RuntimeError: Channel or attrib not ready
エラー名でぐぐってみると、gattlibが古いことが原因かもしれないと書いてあるので、
https://github.com/ev3dev/ev3dev/issues/775
pybluez, pygattlibともにソースからインストールしましたが、現状変わりません。
https://github.com/karulis/pybluez
https://bitbucket.org/OscarAcena/pygattlib
(というか、pygattlibは2年更新があまり無いですね。。。)

解決したら、また記事にする予定ですが、一応pybluez以外も試してみます。。。