安卓版本。> 4.3 标准 Android 信标库估计信标。Eddystone-UID 包遥测包。
我正在尝试从 Eddystone-UID 包传输的遥测包中读取温度传感器传输。根据 Android Beacon 库中的 Eddystone [Telemetry] 示例,我可以成功读取 beacon.getExtraDataFields().get(2) 数据以进行温度传输。此数据根据温度打印为 4 位或 5 位数字。
我被告知信标温度传感器传输一个 8:8 的定点数...读取 beacon.getExtraDataFields().get(2) 然后除以 256 我得到摄氏温度读数。然而,一旦温度超过 0 摄氏度进入负值,我就会得到很大的差异。论坛中的研究似乎表明它与带符号的 8:8 固定符号数学和转换为十进制有关。虽然我了解 8:8 定点符号概念,但我似乎无法找到有关如何使用 Android 信标库方法读取负定点并转换为负 degC 的参考。
[注意:Estimote 的 Android SDK 和他们的信标应用程序有同样的问题......他们通过更新他们的 SDK 解决了这个问题......我使用的是 Android 库而不是 Estimote SDK]
指导将不胜感激。