我希望做一些类似于question的事情,基于answer它表明设备只有在发出信息包时才能被发现。
我想了解的是,手机(iOS / Android)等设备默认发送这些可发现的数据包吗?或者他们是否需要配置(例如通过应用程序)明确宣传自己或一些数据?
答案 0 :(得分:3)
这在很大程度上取决于设备的性质。
首先,并非所有手机都可以做广告。较新的可以。例如,Android 5.0具有广告功能。早期版本可能只是中心版本或观察者 那些可以做广告的人不会默认做广告。必须通过应用启用广告。
另一方面,Beacons默认做广告。他们一直在做广告。广播广告就是他们所做的一切。
答案 1 :(得分:3)
不,默认情况下它们无法被发现。
Bluetooth 4.x spec的第3卷定义了两种可发现的模式:
有限的可发现模式通常在a时使用 用户执行特定操作以使设备可被发现限制 一段时间。
在 通常可发现模式通常在设备打算使用时使用 很长一段时间都可以发现。
良好的BLE设计将使设备无限期地休眠以节省电池电量,直到需要采取某些措施。完全取决于设计师决定何时做广告,持续多长时间以及以何种间隔进行广告宣传。您可以在启动时立即激活或激活它。
但是,如果您的设备没有用户界面且无法手动激活(例如广播传感器节点),那么您似乎别无选择,只能使用常规可发现模式,并不断做广告。您必须选择一个广告时间间隔,这是保存功率和可被发现之间的最佳折衷方案。
也可以使用限制可发现模式的重复窗口。
我使用的Laird模块在app note:
中有这个由于BLE旨在节省电力,因此设备通常处于休眠状态,直到需要采取措施。
我还找到了this quote:
大量的BLE产品大部分时间都处于睡眠状态,只需要在需要时进行广告和连接。这意味着广告对功耗有很大影响。
回答问题的第二部分If a device isn't advertising, it's impossible for any Central to connect to it.
现在,尽管如此。从安装电池的那一刻起,许多设备就会一直做广告。例如,与Apple iBeacon兼容的设备将以100毫秒的间隔连续通告,直到电池耗尽。关于广告时间间隔与电池寿命is given here的主题的有趣介绍。