11

USB Bluetooth ドングルを使用して RPi を実行しています。hcitool を使用すると、SmartTag デバイスを検出できます。しかし、gatttool を使用すると接続できません。「ホストがダウンしています (112)」と表示されます。ここに私のコマンドがあります:

$ sudo hcitool lescan
LE Scan ...
BC:6A:29:AB:DE:2B (unknown)
BC:6A:29:AB:DE:2B SensorTag

RPi で Bluetooth アダプターを確認すると、次のようになります。

$ hcitool dev
Devices:
        hci0    5C:F3:70:60:E6:1B

次に、このように gatttool を使用すると、次のようになります。

$ sudo gatttool -i hci0 -b BC:6A:29:AB:DE:2B -I
[   ][BC:6A:29:AB:DE:2B][LE]>

connect と入力すると、次のようになります。

[   ][BC:6A:29:AB:DE:2B][LE]> connect
Connecting... connect error: Host is down (112)
[   ][BC:6A:29:AB:DE:2B][LE]>

「ホストがダウンしている」という情報は、Bluetooth センサーが検出可能モードになっていないことを意味するという Web 上の情報を見つけました。しかし、SmartTag に関する限り、これは正しくありません。センサーを検出可能にするために TI がプッシュするように言っているセンサーの 1 つのボタン (サイド ボタン) を押すからです。そして、hcitool lescan がデバイスを見つけるために同じものを使用します。また、電話から実行され、同じボタンが押されたときに SmartTag センサーをスキャン、接続、読み取りする Android アプリもあります。

問題が何であるかを知っている人はいますか?前もって感謝します

4

1 に答える 1

14

私は同じ問題を抱えていましたが、この方法は私にとってはうまくいきました:

USB モジュールを取り外して、RPi を再起動します。

sudo shutdown -r now

( 編集:以下にリストされているライブラリを正常にインストールするために、 /etc/apt/ sources.list を編集することをお勧めします。

nano /etc/apt/sources.list

deb http://archive.raspbian.org/raspbian wheezy main contrib non-free
deb-src http://archive.raspbian.org/raspbian wheezy main contrib non-free

そうしないと、次のエラーに遭遇する可能性があります

checking for GLIB... no
configure: error: GLib >= 2.28 is required

変更を有効にするために、忘れずに更新してください。

sudo apt-get update

)

Bluez のインストールを削除し、更新を実行します。

sudo apt-get --purge remove bluez
sudo apt-get update

を編集し/etc/apt/sources.listて、必要なライブラリをインストールできるようにすることができます。

必要なライブラリがあることを確認してください。

sudo apt-get install libusb-dev libdbus-1-dev libglib2.0-dev libudev-dev libical-dev libreadline-dev

最新の Bluez バージョン (5.21 の時点) をダウンロードして展開します。

sudo wget https://www.kernel.org/pub/linux/bluetooth/bluez-5.21.tar.xz
sudo tar xvf bluez-5.21.tar.xz

Bluez フォルダーに移動し、構成してインストールします (このsudo make行の処理には時間がかかります)。

cd bluez-5.21
sudo ./configure --disable-systemd
sudo make
sudo make install

RPi をオフにして、Bluetooth ドングルを接続できるようにします。再度オンにする必要はありません。

sudo shutdown -h now

USB ドングルの電源を入れる必要がある場合があります。

sudo hciconfig hci0 up

その後、もう一度 LESCAN を試すことができます。

sudo hcitool lescan

そして、それが適切に機能したと仮定すると、次のように接続できます。

sudo hcitool lecc BC:6A:29:AB:DE:2B
sudo gatttool -b BC:6A:29:AB:DE:2B --interactive

[   ][BC:6A:29:AB:DE:2B][LE]> connect
[CON][BC:6A:29:AB:DE:2B][LE]>

接続された「[CON]」ラインを表示するのに時間がかかる場合は、センサー タグのサイド ボタンを押して、再び表示されるようにしてください。


これは、次の 2 つのリンクからの情報を組み合わせたものです。

http://mike.saunby.net/2013/04/raspberry-pi-and-ti-cc2541-sensortag.html https://learn.adafruit.com/pibeacon-ibeacon-with-a-raspberry-pi/setting -up-the-pi

于 2014-07-25T12:35:14.440 に答える