6

私は最近、ラズベリーパイのBLEドングル(ケンブリッジシリコンラジオ)でibeaconを設定しようとしていました。参照: http://developer.radiusnetworks.com/2013/10/09/how-to-make-an-ibeacon-out-of-a-raspberry-pi.html

次のメッセージが表示されます。

HCI Command: ogf 0x08, ocf 0x0008, plen 44
  1E 02 01 1A 1A FF 4C 00 02 15 E2 C5 6D B5 DF FB 48 D2 B0 60
  D0 F5 A7 10 96 E0 00 00 00 00 C9 00 00 00 00 00 00 00 00 00
  00 00 00 00
> HCI Event: 0x0e plen 4
  01 08 20 12

また、アプリはビーコンの位置さえ特定しません。このコマンドでドングルが点滅しているのを見ることができますが:

sudo hciconfig hci0 leadv 0

しかし、何も検出されません。

appstore から LIGHTBLUE という名前の APP にアクセスすると、別の UUID で Bluetooth が検出されます。

私はこれを何度も試しました。チュートリアルのすべての手順を完了している。しかし、この Bluetooth デバイスは表示されません。

また、0x08 と 0x0008 が何であるかを知りたいのですが、別の UUID をキャストしたい場合はどうすればよいですか? でもそれは後編…

現在、Radius Networks のチュートリアルで述べられているように、THE BLUETOOTH は Estimote UUID をキャストしません。

すぐに返事が来ることを願っています。

私が書いたコマンド(これが機能しなかった後、電源をC9に変更しました):

$ sudo hcitool -i hci0 cmd 0x08 0x0008 1e 02 01 1a 1a ff 4c 00 02 15 e2 c5 6d b5 df fb 48 d2 b0 60 d0 f5 a7 10 96 e0 00 00 00 00 c5 00 00 00 00 00 00 00 00 00 00 00 00 00

驚くべきことに、エラーは次のとおりです。エラー: HCI コマンド パラメータが無効です。なぜ無効なのですか?CSR が 16 進数の 64 ビットではなく 128 ビットをサポートしているためでしょうか。

ありがとう!

4

6 に答える 6

11

余分なゼロを削除する必要があるメモリホールと同じ問題が発生しました。また、ドングルで適切に動作するように広告データを構成する前に、広告を有効にする必要がありました。

これが私のために働いた正確なシーケンス/コマンドです:

sudo hciconfig hci0 up
sudo hciconfig hci0 leadv 3
sudo hcitool -i hci0 cmd 0x08 0x0008 1e 02 01 1a 1a ff 4c 00 02 15 e2 c5 6d b5 df fb 48 d2 b0 60 d0 f5 a7 10 96 e0 00 00 00 00 c5 00

これは、Radius スクリプトの私のバージョンが最終的に次のようになったものです。

#!/bin/sh
. ./ibeacon.conf
echo "Launching virtual iBeacon..."
sudo hciconfig $BLUETOOTH_DEVICE up
sudo hciconfig $BLUETOOTH_DEVICE leadv 3
sudo hcitool -i $BLUETOOTH_DEVICE cmd 0x08 0x0008 1e 02 01 1a 1a ff 4c 00 02 15 $UUID $MAJOR $MINOR $POWER 00
echo "Complete"

これは、ORICO BTA-402-BK ブランドの BLE ドングル (CSR8510 A10) を備えた Rasberry Pi にありました。

(これをコメントとして残しておきましたが、十分な担当者がいませんでした)

于 2013-12-31T08:11:56.210 に答える
3

また、香港で CSR ベースの USB ドングルを購入しました。最後に余分なパディングを削除することで、LE Set Advertising Dataコマンドが機能するようになりました。Bluetooth 4.0 仕様によると、データ フィールドの長さは 31 オクテットである必要があります。Radius Networks チュートリアルで余分なゼロが追加される理由がわかりません。これを試して:

$ sudo hcitool -i hci0 cmd 0x08 0x0008 1e 02 01 1a 1a ff 4c 00 02 15 e2 c5 6d b5 df fb 48 d2 b0 60 d0 f5 a7 10 96 e0 00 00 00 00 c5 00

注: これは Raspberry Pi では実行しませんでしたが、bluez-4.98 を搭載した Ubuntu 12.04 ラップトップで実行しました。

于 2013-12-08T02:20:52.863 に答える
0
HCI Event: 0x0e plen 4 01 08 20 12

変換: 広告データの設定コマンドの実行が終了し、エラー 0x12 "Invalid HCI Command Parameters" が発生しました

ogf 0x08, ocf 0x0008はアドバタイジング パケットのデータを設定するコマンドなので、そのコマンドの引数を変更して UUID を変更します。UUID に対応する 16 進数の文字列の一部を変更します。これに注意してください:

sudo hcitool -i hci0 cmd 0x08 0x0008 1e 02 01 1a 1a ff 4c 00 02 15 e2 c5 6d b5 df fb 48 d2 b0 60 d0 f5 a7 10 96 e0 00 00 00 00 c5 00 000 00 00 00 00 00 00

iBeacon ブロードキャスト プロファイル UUID E2C56DB5-DFFB-48D2-B060-D0F5A71096E0、メジャー 0、マイナー 0

Bluetooth 4.0 ドングルを持っていますか? 入力した正確なコマンドは何ですか? (あなたの質問にカット&コピーしてください)

于 2013-12-01T23:20:30.893 に答える