我开发了一个基于ibeacon的ios APP,但它收到的RSSI信号在信标测距期间在0和正常值之间跳跃(有点像每4-6个零RSSI显示正常RSSI信号的模式)。
我试图让我的iphone根据收到的RSSI信号进行实时响应,但是我不能对这个非常不稳定的信号做任何事情。我不知道这是因为硬件或电池问题或其他原因。任何想法都表示赞赏。
答案 0 :(得分:0)
当测试iOS上的信标时,如果在最后一秒没有收到信标数据包(但是在最后五秒内已收到信标数据包),则信标将包含在回调中的CLBeacon对象列表中,但它的rssi值为0。
您可以通过关闭信标来确认这是真的。你会注意到你将继续在测距回调中持续约5秒,但rssi将始终为零。在这五秒钟之后,它将从列表中删除。
如果您看到它在0和正常值之间来回反弹,则表示信号数据包仅每隔几秒钟接收一次。最可能的原因是信标发送器很少发送数据包(比如说每3到5秒)。一些制造商出售这样做的信标以延长电池寿命。
为获得最佳测距性能,如果您的信标制造商允许,将广告费用调高至10 Hz ,并将发射机功率增加到最大值。这将使用更多的电池,但会减轻你看到的斑点。