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.

[参考译文] Starterware/CC2650DK:BTool 中的 MTU 大小变化

Guru**** 2553260 points
Other Parts Discussed in Thread: CC2650

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

https://e2e.ti.com/support/wireless-connectivity/bluetooth-group/bluetooth/f/bluetooth-forum/580055/starterware-cc2650dk-mtu-size-change-in-btool

器件型号:CC2650DK

工具/软件:Starterware

大家好、

已用硬件:带评估模块的 SmartRF06板

用于评估模块的软件:由 TI 提供的 V2.2.1 HOST_TEST 应用将 ble_user_config.h 文件中的 MTU 大小从23字节修改为60字节。

预期:通过使用 BTool,我应该能够读取具有40字节的 long 特征。

结果:
[110]: -10:56:15.522
命令失败
状态=执行功能超时
事件= GAP_HCI_ExtentionCommandStatus

我是否错过了在 host_test 应用程序中更改任何内容、或者可能是什么问题。 是否有人遇到过这个问题。

另一个信息是、如果我尝试读取小于23字节的特征、那么我能够毫无问题地读取数据。

感谢您的提前响应。

谢谢、
Siva。

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

    MAX_PDU_SIZE 设置为什么? 应在两个器件上设置。 有关更多信息、请参阅第5.2.2.1节:在 SDG 中配置更大的 MTU 值。


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

    在 Host_TEST 应用程序中、我将此宏从27修改为60。

    我还从外设将 MAX_PDU_SIZE 从27修改为60。

    通过使用 iPhone 6、我能够从外设读取40字节特征数据。 但通过使用 BTool、我无法读取。

    谢谢、

    Siva。

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

    我能够从 BTool 读取40个字节。 您使用的是哪个版本的 BTool、我使用的是 v1.41?

    祝你一切顺利
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    我使用的是 BTool 1.41.16版本。 我是否需要在 BTool 中调用任何 ATT_ExchangeMTUR 或 ATT_ExchangeMTUREQ API?

    因为我仍然遇到同样的问题、与使用 BTool 时一样、我无法读取23个字节以上的数据。

    除了 ATT_MTU_SIZE 宏之外、我是否需要更改 host_test 应用程序中的任何内容?

    谢谢、
    Siva。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    在 host_test 项目上只需更改 ble_user_config.h 中的 MAX_PDU_SIZE 设置:

    // BLE HCI PDU 的最大大小(以字节为单位)。 有效范围:27至255
    //最大 ATT_MTU 为 MAX_PDU_SIZE - 4.
    #ifndef MAX_PDU_SIZE
    #IF 定义(BLE_V42_features)&&(BLE_V42_features & SECURE_CONS_CFG)
    #define MAX_PDU_SIZE 69
    其他
    #define MAX_PDU_SIZE 27.
    #endif //(BLE_V42_features & SECURE_CONS_CFG)
    #endif

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

    您好、Zahid、

    感谢您的回答。

    当我尝试读取具有40个字节的特征时、仍会执行超时功能。

    如何像从 host_test 应用程序+评估板那样确保它能够接收40个字节。

    我有这种怀疑、因为在 BTool 中、

    如果您看到它始终显示23个字节、

    因为通过将 iPhone 与同一外围设备配合使用、我能够读取40字节的数据、而不会出现任何问题。 但是、使用此 Smart RF 评估板+仅带 BTool 的 cc2650板、我将执行此超时。

    BTool 版本使用:V1.41.16

    谢谢、
    Siva。

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

    您好!

    这是默认值、它不显示器件实际使用的内容。 如果您想查看实际使用的 MTU、则必须获取无线监听器跟踪。  

    祝你一切顺利

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好!
    您是否可以符合我的要求,$path$\ble_sdk_2_02_01_18\examples\cc2650lp\host_test,这是您正在使用的项目路径还是不同的项目。 因为我在您的设置和设置之间没有发现任何差异。 但仍然无法使用 BTool 从外设读取40字节特征到评估板。

    感谢您的提前响应。

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

    是的、

    我使用的项目来自:
    C:\ti\simplelink\ble_sdk_2_02_01_18\examples\cc2650em\host_test

    还修改了堆栈项目以在 build_config.opt 中包含以下内容:

    -dlb_V42_feature=secure_conns_CFG

    这使得它使用的 MAX_PDU_SIZE 为69。

    祝你一切顺利

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

    但我仍然会得到相同的误差。 ATT 读取命令失败。 状态=执行功能超时。 是否可以获得由 TI 提供的 MTU 大小为241字节的十六进制文件? 以便我将其闪存并直接使用它。 因为除此之外、我不想更改主机测试应用程序中的任何内容。

    感谢您的提前响应。

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

    请将其添加到两个项目上的预定义符号:
    MAX_PDU_SIZE=255

    然后在 BTOOL 中、发送 GATT_ExchangeMTU、其中 clientRXMTU=251 (MAX_PDU_SIZE - 4)

    然后您应该会看到 ATT_MtuUpdateedEvt。 然后、您应该能够读取/写入长字符。

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

    您好、Zahid、

    感谢您的更新。 现在、如果我将 GATT_ExchangeMTU 的客户端 RXMTU 发送为251、则我可以接收服务器 MTU 大小为247的响应。 但是、正如您提到的、BTool 中不提供 ATT_MtuUpdateedEvt。 请告诉我您使用的是哪个版本的 BTool。 我已尝试使用 BTool 版本1.41.11、v1.41.16和 v1.41.17。 我没有看到任何命令 ATT_MtuUpdateedEvt。

    这是供您参考的屏幕截图。

    您将在即将发布的版本中提供该选项、还是已经提供了该版本。 请告诉我。

    非常感谢您的回答。

    谢谢、

    Siva。

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

    您好!

     ATT_MtuUpdateedEvt 是一个事件、不是 发送 GATT_ExchangeMTU 命令后接收到的命令。 最大 ATT_MTU 为 MAX_PDU_SIZE - 4、以考虑 L2CAP 长度和通道 ID 的4个字节。  

    祝你一切顺利