0

我想发送 Eddystone UID 帧和 iBeacons 帧,如果我理解正确,我可以只用hcitool来做这两个。我可以使用我的 Debian 中的 iBeacon 发送帧,它可以正确显示,但我怎么能用 Eddystone 标准发送它。是否还有一些转换表可以将来自 iBeacon(距离 1m)或 Eddystone(距离 0m)的Tx功率转换为其他标准?

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 12 34 00 01 66 00

我是否也正确理解在 iOS 或 Android 中捕获框架对于每个标准都不同?

4

1 回答 1

1

尝试使用它来传输 Eddystone-UID:

 hcitool -i hci0 cmd 0x08 0x0008 1e 02 01 06 03 03 aa fe 15 16 aa fe 00 e7 00 01 02 03 04 05 06 07 08 09 01 02 03 04 05 06

CAVEAT EMPTOR:我没有测试过上述内容。让我知道它是否有效!

如果一切顺利,上面将发送:

  • 00010203040506070809 的 10 字节命名空间标识符
  • 一个 6 字节的实例标识符 010203040506
  • e7 (-25 dBm) 的零电平 Tx 功率电平。

要将 Eddystone 的零米 Tx 功率电平(例如 -25 dBm)转换为 iBeacon 和 AltBeacon 的一米 Tx Poser 电平,只需减去 41 dBm。因此,零米处的 -25 dBm 变为 -66 dBm。

在 iOS 上,您必须使用 CoreLocation API 来检测 iBeacon 和 CoreBluetooth 来检测 Eddystone(可能使用更高级别的 API,例如 Google 的 Proximity API 或 AltBeacon Beacon Tools)。在 Android 上,有几个工具可以让您检测这两种帧类型。我会为我自己的Android Beacon Library添加一个不要脸的插件。

于 2016-08-08T20:02:51.893 回答