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.

[参考译文] RTOS/LAUNCHXL-CC2650:SPP_ble_client 示例正在崩溃、当数据包/文件大小为64字节+时、将返回来自客户端的消息 FAIL

Guru**** 2587365 points
Other Parts Discussed in Thread: LAUNCHXL-CC2650, CC2650

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

https://e2e.ti.com/support/wireless-connectivity/bluetooth-group/bluetooth/f/bluetooth-forum/590071/rtos-launchxl-cc2650-spp_ble_client-example-is-being-crash-and-the-message-fail-from-client-is-return-while-packet-file-size-is-64-byte

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

工具/软件:TI-RTOS

您好!

当我测试 SPP_BLE 模式 文件传输功能时、我注意到 当我发送的文件大于64Byte 时、客户端崩溃并变得无响应

我尝试了几个波特率、从9600 bps 到默认速率 921600、在所有情况下、当文件大于64字节时、客户端没有响应、并显示以下消息:

"从客户端失败"。

恢复系统的唯一选项是重置系统、即重置服务器和客户端。

该问题在以下情况下发生:

数据流:server-> client or client->server (单向我无法设置双向通信)

数据速率9600-921600 波特

平台2X LAUNCHXL-CC2650 (服务器和客户端)

用于生成流量 Putty、TeraTerm、Hterm 的软件。

BLE 堆栈版本:2.2.1

TI-RTOS:2.20.08

BLE IC:CC2650

编译器版本:TI ARM 5.26

如何重现:通过 cc2650 launchpad 下载和安装 SPP_ble_client/SPP_ble_server 示例,并发送大于64字节的文件/数据包。

BR  

Yehonatan Spiegel

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

    您使用的 MTU 大小是多少、使用 MAX_PDU_SIZE 定义进行设置? 您可以尝试将其设置为最大值255吗?

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

    你(们)好

    我将 MTU 大小更改为255、但仍然没有帮助。

    客户端正在发送失败消息。

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

    [报价用户="Zahid Haq">您好、

    您使用的 MTU 大小是多少、使用 MAX_PDU_SIZE 定义进行设置? 您可以尝试将其设置为最大值255吗?

    祝你一切顺利

    [/报价]

    您好!

    我遇到相同的问题。

    我非常希望在此得到任何答复。 您提出的解决方案不能解决问题。 如果数据包大小超过64字节、它仍然会崩溃。

    我们确实需要这种方法来支持我们的项目。 现在我们陷入困境了!

    谢谢、

    Eyal

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

    你好

    我们还在等待 TI 的响应、因为他们自己的示例中似乎有一个错误...

    这将延迟我们的项目...

    此致

    David

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

    您使用的是哪个版本的 BLE 堆栈? 是否有任何打印的错误消息? 如果您向项目添加了大量代码、则可能会耗尽堆内存。

    尝试将两台设备上的 PDU 大小设置为135、并使用115200波特进行测试。

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

    您好、Zahid、

    我们将按照 以下主题中的建议使用 TI ARM 编译器版本5.2.6: http://e2e.ti.com/support/wireless_connectivity/bluetooth_low_energy/f/538/p/582271/2162194#2162194

    BLE 堆栈版本:2.2.1

    我们收到 来自客户端的消息"失败"。  

    我们没有向项目添加任何代码。

    我们已经尝试将速度降低到115200波特。 我们甚至使用9600波特来尝试它、结果相同。

    我们已将 MAX_PDU_SIZE 设置 为255、但仍会出现相同的结果。  

    一旦我们发送64字节或更高的数据包、就会发生错误。 您能否确认您的侧没有看到该错误吗? 我只是想知道这是我们唯一的问题还是确实是一个问题?

    谢谢、
    Eyal

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

    您好!

    是的、将 MAX_PDU_SIZE 更改为135后、我能够使用 PC 终端(Realterm)以115200波特发送数千个字节

    您在复位时是否看到相同的输出?
    客户端:
    SPP BLE 客户端您好! 具有数据长度扩展支持!
    自动连接...
    服务器接收 MTU:131
    正在查找服务...已找到串行端口服务...已找到数据字符...已找到 Da 的 CCCD
    找到了猫途鹰
    通知已启用...

    服务器:
    SPP BLE Server 您好! 具有数据长度扩展支持!
    广播...
    MTU 已更新:131

    祝你一切顺利

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

    您是否能够解决此问题?

    祝你一切顺利
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好,我无法将 MTU 更改为131,您可以向我发送一个代码或指示我应该在哪里更改它吗?
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    当然、

    只需在 CCS 中转到项目设置:
    Project -> Properties -> Build -> Predefined symbols
    然后在 Pre-define NAME (预定义名称)窗格中添加"MAX_PDU_SIZE=135"以及其他定义。

    请注意、必须在客户端和服务器设备上执行此操作。

    祝你一切顺利

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

    我们已更新示例以包含此修复:
    github.com/.../ble_examples-2.2

    但对于新设计、我们建议使用 CC2640R2 LaunchPad:
    www.ti.com/.../launchxl-cc2640r2

    祝你一切顺利