This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] CC2650:L2CAP 示例?

Guru**** 2555630 points
Other Parts Discussed in Thread: CC2650, BLE-STACK

请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/wireless-connectivity/bluetooth-group/bluetooth/f/bluetooth-forum/572750/cc2650-l2cap-example

器件型号:CC2650
Thread 中讨论的其他器件: BLE-STACK

我目前正在研究通过 BLE 发送大量数据的最佳方法(主机是 Linux、具有基于 Bluez 的定制应用、外设基于 CC2650)、并想知道是否有直接在 CC2650上使用 L2CAP 层的示例?

我看到其他人之前也提出过类似的问题(例如 ,https://e2e.ti.com/support/wireless_connectivity/bluetooth_low_energy/f/538/t/343848 ),并被告知将来的版本将支持此功能,由于 BLE-Stack 开发人员指南列出了 L2CAP API,我认为现在支持它? 不过、有一个示例来了解它的实际使用方式总是很好的。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好、Simon、

    有多种方法影响 L2CAP 层、例如通过数据长度扩展。 您可以将有效载荷增加到251字节。

    通过增加 MTU 大小、您可以实现更大的吞吐量。

    但是、这只是为了快速传输数据、如果您只想发送大型消息、只需增加 MTU 大小即可。 完全无需触摸 L2CAP 层。 甚至设计一种数据服务、在该服务中进行多个事务以传输一条大消息。 实际上、您需要如何在应用程序大小上实现这一点。

    但是、从应用方面看、没有对 L2CAP 层的直接控制。 (除了通过现有 HCI cm、如前面提到的 DLE)

    此致、
    反叛分子
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    你好,Rebel,

    感谢您的回答。 不过、我还在寻找更大的吞吐量-不仅是发送大型数据包的能力。 我看到 BLE-STACK 2.2.1开发人员指南(swru393d.pdf)中的 L2CAP API 中描述了 L2CAP_SendSDU()函数,只是希望有一个在某个地方实际使用该函数的示例? -以及如何接收数据的说明?

    这主要是因为在主机端(Linux/Bluez)执行操作似乎非常简单、在主机端、您只需打开 L2CAP 套接字并使用读/写操作、而无需实施任何 GATT 功能。

    提前感谢!

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好、Simon、

    在这种情况下、我建议查看 GitHub 上的吞吐量示例、其中显示了如何发送具有高吞吐量的大负载。 (使用 DLE github.com/.../ble_examples )

    是的、如果启用了 L2CAP 面向连接的通道、则可以使用 L2CAP_SendSDU。 不过、没有可供参考的示例、您所拥有的只是其中的文档。 ( software-dl.ti.com/.../group___l2_c_a_p.html)

    我不能说它是如何在 Linux/bluez 方面完成的;从我们的角度来看、我们内置了一个主机、应用程序与主机和控制器进行通信。 (如果这是合理的)也许这就是为什么与它的连接不同的原因。 (例如、通过 GAPRole 而不是直接 HCI 命令进行连接)

    此致、
    反叛分子