如何检测小米手环 3(使用蓝牙)的存在?

物联网 蓝牙
2021-05-31 11:12:05

关于硬件建议的问题中可以看出,我正在尝试为一家化工厂设计一个疏散系统。

这需要知道每个员工在任何给定时间都在哪个房间。我可以使用该系统来跟踪员工,但长期以来一直在寻找一种耐用的可穿戴设备,为每位员工佩戴或携带的电池寿命长。

  • 我曾考虑过 Android 手机,但它们可能太贵/体积大/易碎/电池寿命短。

  • Raspberry Pi Zero W 很便宜,但也很大,需要一个外壳,我不确定电池寿命。

  • 无源 RFID 可能没有范围,有源需要电池。

  • Adafruit的植物BLE看起来很有趣,但我不能找到它的电池寿命数据。

当我看着我的手腕并看到我手腕上的廉价健身追踪器时,我顿悟了。这是小米手环 3,我用我的最后一部“手机”免费获得了它。

我大约每 3 周充电一次,虽然我目前不转 BT。我需要校准它,尽管评论认为它可以使用 7 天。

所以 - 最后 - 问题是:如何检测来自设备的传输?如果它们足够频繁(例如,每分钟超过一次),那么信号是什么并不重要,只要我能从中获取 MAC 地址并使用它来定位设备即可。

1个回答

该频段是 BLE(低功耗蓝牙)设备,因此它将定期广播信标数据包(BLE 规范可以配置此间隔)。

这些信标是设备(例如电话)知道它们在范围内并随后可以连接以获取更多数据的方式,但信标也可以包含少量数据(例如 BLE 温度传感器、物理 Web URL 信标或 iBeacon) . Beacon only 设备可以在一个纽扣电池上运行多年。

至于检测器,可以使用任何带有 BLE 适配器的东西。树莓派零 w 是原型的良好开端,一个简单的 BLE 信标可以写成 shell 脚本,使用hcitool命令行工具或任何数量的其他语言(例如 Node-RED 有一个 BLE 信标侦听器节点)。

每个设备都有一个 MAC 地址,但要注意便宜的设备可能不是唯一的(我曾经买了 20 个 USB BLE 加密狗,发现 5 个具有相同的 MAC 地址)