Closed. This question needs to be more focused。它当前不接受答案。












想改善这个问题吗?更新问题,使其仅通过editing this post专注于一个问题。

3年前关闭。



Improve this question





除了GATT以外,还有其他方法或协议可以在BLE(单模芯片)下使用,更适合于高吞吐量的任务吗?

据我了解,我的问题的答案是否定的,但我希望得到一些确认和澄清。



我想实现的服务不仅仅涉及通过BLE操作(简短)特征。此类服务可能包括文件传输,音频流以及基本上是早期蓝牙版本中标准的服务。

一个方便的解决方案是使用文件传输配置文件(通过GOEP)或类似文件传输。对于音频,A2DP似乎很合适。但是,使用BLE似乎无法实现这些目的。

从bluetooth.org(特别是第3卷)阅读了核心规范v4之后,看来我可以为此目的(通过配置文件)使用和修改的唯一适用协议是GATT,它使用起来似乎很尴尬。

而且,根据Overview and Evaluation of Bluetooth Low Energy: An Emerging Low-Power Wireless Technology,有效吞吐量似乎很低:


物理层数据速率为1 Mbps,最大应用层吞吐量
等于236.7 kbps。


但是(当通过GATT使用TI CC254x测量实际性能时):


在上述条件下,我们测得的最大应用层吞吐量为58.48 kbps。这个
较低的结果可以由以下两个事实解释:(i)从理论上讲,多达11个这样的事实
通知可以在7.5毫秒的连接事件内发送,只有四个通知是
如上所述,每个连接事件都允许; (ii)我们观察到少于四个
通知实际上是在实验过程中的大多数连接事件中传输的(但是,
如果连接间隔大于7.5 ms,则发生相同现象的频率会降低。这些
观察结果表明,高吞吐量并不是BLE设计的主要目标
评估中使用的实现。


我意识到上面的文字特定于TI芯片上的实现,但是这样的限制也可能适用于GATT之上的其他实现。

最佳答案

如果您要编写自己的配置文件,则可以通过打开L2CAP通道并以任何格式发送数据而无需执行GATT来执行任何操作。 L2CAP将使您获得最大的吞吐量,并且适合于流式传输数据,而不是读取特性。

关于bluetooth - 除GATT之外的蓝牙低功耗(BLE)协议(protocol),我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/13360607/

10-12 13:36