首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >根据rssi值通过蓝牙发送文件

根据rssi值通过蓝牙发送文件
EN

Stack Overflow用户
提问于 2019-10-04 19:03:35
回答 1查看 111关注 0票数 0

我在扫描附近的蓝牙设备。我有一个具有MAC地址和rssi值的字典,如下所示:

dictionary = {"18:FF:E3:3B:5D:31": "-49","11:11:11:3B:5D:31": "-60", }

在这种情况下,我想发送到18:FF:E3:3B:5D:31只有当rssi大于-50。做这件事的最好方法是什么?同时循环取决于MAC地址?可信MAC地址的列表将被知道。它可以是更多的设备,以发送不同的rssi文件。

这只是一个想法:

代码语言:javascript
复制
scan for devices
while i < 100 // random number  
    for key, val  in dictionary.iteritems():
        if key == mac_address_of_one_device and rssi > 50:
            send_file()
        else:
            scan again 
        // some kind of recursion? 

但是,如果我有两个设备同时在范围内,我想发送文件到两个设备。怎么扫描?

或如何扫描,例如扫描1分钟,取决于rssi和MAC将文件发送到范围内的设备?

我被塞住了。

EN

回答 1

Stack Overflow用户

发布于 2019-10-05 07:42:33

这将是一个很好的做法,每次扫描设备,因为你试图发送基于rssi信号的文件。

扫描超时是特定于蓝牙堆栈的。大多数蓝牙堆栈的默认超时时间为15至30秒(以节省电力),

在扫描过程中,您将得到附近的蓝牙设备地址列表以及查询结果/完整事件中的RSSI信息(从BT HCI信令设备找到的事件)。您可以迭代结果并将文件发送到RSSI大于-50或任何其他值的设备。

但是这里的问题是远程设备是否有接收文件的能力?我看不出你是在这里检查它。仅仅通过拥有蓝牙地址和RSSI并不能保证远程设备会接受您的文件。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/58241922

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档