首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >基于蓝牙低能的Android突发通知

基于蓝牙低能的Android突发通知
EN

Stack Overflow用户
提问于 2015-06-10 05:47:03
回答 2查看 1.8K关注 0票数 0

我正在开发一个蓝牙低能量应用程序来连接一个设备,该设备将以通知模式以每隔6毫秒或更长的时间发送20字节长的传输。

到目前为止,应用程序运行良好。它可以扫描、发现并订阅特征以接收数据通知。问题是,在前2-4秒内,数据将按顺序很好地读取,但在此之后,通知数据开始以突发形式或以块数据的形式出现,但在每一次传输之间的间隔并不一致。

当我用德州仪器BLE评估工具包检查数据传输时,这不会发生,在那里,我的读者展示了一个完美的传输,没有突然出现。只有在android上,它才会变得可见。这是否是一个可以配置为在android端修复的问题呢?这会是高传输速率(~毫秒间隔)的问题吗?

谢谢。。

因此,通过对连接连接参数的适当配置,可以得到最优的吞吐量。这通常是在外围设备端完成的,对于连接到的平台(例如,Android可能有不同的连接要求),可能需要不同的连接。

P.S.:由于我正在看安卓,我在这里发现了这个方法,这里记录了https://developer.android.com/reference/android/bluetooth/BluetoothGatt.html#requestConnectionPriority(int),它调用连接优先级( CONNECTION_PRIORITY_BALANCED、CONNECTION_PRIORITY_HIGH或),但我没有测试它。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2015-06-10 11:03:22

您可以尝试启用蓝牙选项,然后在WireShark中查看日志文件。查找连接更新命令,这些命令可以由通信双方发出。此命令更改传输设置并减慢传输速度。还可以在您的TI BLE应用程序中查找GAPROLE_PARAM_UPDATE_ENABLE

票数 1
EN

Stack Overflow用户

发布于 2015-06-24 05:02:54

是的,Michael,我们使用CC2650,对于我们的需求,BLE是足够的,但是我不确定它是否真的支持蓝牙经典(http://www.ti.com/product/CC2650/description)。

您可以尝试使用BLE连接参数来优化设置,这是我们所做的,而不是试图构建这个应用程序,让BLE operations.Take获得更多有关连接参数的信息。https://devzone.nordicsemi.com/question/60/what-is-connection-parameters/

您不能在电话上配置连接参数,但是外围设备(即SensorTag)即使这样也不能保证给定的参数实际上将被中央设备接受,以防中心设备接受一组参数。(Android和IOS在这方面有不同的政策。)

在我们的例子中,我们的传输间隔为15毫秒,并且看起来相当稳定。但是,所有这些高频率的传输都是以BLE的低功耗能力为代价的,而这正是它的初衷。我们甚至可以达到接近7.5ms的水平,这是Android支持的最小连接间隔。我们最初的测试是稳定的,但是这种低延迟的可靠性是值得怀疑的。

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

https://stackoverflow.com/questions/30748030

复制
相关文章

相似问题

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