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.

[参考译文] CC2640R2F:如何在基于4x4 Project Zero 的 BLE 中增加传输数据的有效载荷

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

https://e2e.ti.com/support/wireless-connectivity/bluetooth-group/bluetooth/f/bluetooth-forum/1328279/cc2640r2f-how-to-increase-the-payload-of-trasmitted-data-in-4x4-project-zero-based-ble

器件型号:CC2640R2F

您好!  

我正在尝试从我的定制4x4 CC2640R2F 板发送一些数据、目前能够使用我的服务中的多个特性、即长度不同的有效负载来广播、建立连接并发送几个字节的数据。

我使用 BLEScanner 查看传输的数据包,现在转移到 NRF Connect 应用程序。

不过、我有 3个问题:

《蓝牙低功耗软件开发人员指南》 第节中的第1部分  5.5.2.1配置更大的 MTU 值  "堆栈可配置为支持最大255字节的 MAX_PDU_SIZE " (最大 ATT_MTU 大小始终比 MAX_PDU_SIZE 的值小4个字节,因此251)。 那么、我是否理解错了:在 blestack (蓝牙4)中、每次传输最多可以传输251个1B 数据包?  

2 -我有4个 单独的维修特性、我将使用4个不同长度的传输缓冲器。 在应用9 BLEScanner 和 NRF Connect 中更新数据时,我看到传输的数据字节数与更新字节数不匹配。

注意 :第1个特征数据长度的大小为128B,第2个特征长度为64B

  1.  在下图中、我刷写了定制电路板、刚刚启用了通知、并读取

在第1个和第2个特征中、它们恰好是128和64 B。

     2.现在我开始从我的板载传感器发送数据,发生了以下变化:

您可以看到、在连续 Rx 模式下、我只能看到20 B 的数据

3.在我断开连接并重新连接 NRF 应用程序本身上的定制板后,我可以再次看到前面连接中的所有128和64 B ,如下所示:

那么、我的第二个问题是、我是不是只能在 NRF 应用程序中看到全部128和64B、还是数据真的没有被发送/接收。

3 -另外、如果我想将有效载荷增加到240B、这是可能的吗? 如果需要、需要进行哪些修改?

如果需要其他信息、请告诉我、谢谢!

此致、

力拓

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

    您好、Ritoo、  

    感谢您的联系! 您能否分享您安装的 SDK 版本以及您当前正在使用的项目?

    此致、

    卢克

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

    当然、

    我目前正在使用的 SDK 为"simplelink_cc2640r2_sdk_5_30_00_03"。

    此致、

    力拓

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

    您好、Ritoo、

    我怀疑您遇到了内存问题。 我建议不启用通知。 只需读取该值。 启用通知会增加内存消耗。

    此外、如果读取128个字节是有效的、但读取128个字节外加64个字节则会遇到存储器问题。

    如果要发送128 + 64个字节、则可以发送分段形式的数据。 这意味着发送128个字节。 然后再发送128个字节。 您也可以发送4 x 64字节。 但是、您需要以带有页眉和页脚的格式发送64字节的示例。 在智能手机端接收完所有数据后,需要解码。

    -克尔