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.

[参考译文] CC2652R:`Ω host_test`未响应解析列表 HCI 命令

Guru**** 2763595 points

Other Parts Discussed in Thread: SYSCONFIG, CC2652R7

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

https://e2e.ti.com/support/wireless-connectivity/bluetooth-group/bluetooth/f/bluetooth-forum/1609172/cc2652r-no-response-from-host_test-to-resolving-list-hci-commands

器件型号: CC2652R
主题中讨论的其他器件: SysConfig

#背景
为了测试 BLE 外设器件、我使用 LAUNCHXL‑CC26X2R1 将“host_test"作为“作为中央器件、通过 UART HCI 从 PC 进行控制。  
SDK:simplelink_cc13xx_cc26xx_sdk_8_31_00_11。  
“host_test"示“示例是在启用 DGAP_Bond_Mgrm 的情况下构建的。

#目标
为了验证在不执行配对的情况下启动通信的能力、使用外设单独提供的 irk 和地址信息、将它们添加到解析列表中、然后使用 RPA(可解析私有地址)连接到外设广播。

我知道执行配对时、IRK 会自动添加到解析列表、并且 RPA 可以解决。  
‑、在此用例中、必须使用预先`获得的 irk 和地址信息显式配置中央器件、并在使用` host_test 时识别相应的 HCI 命令和所需的配置步骤、来确认是否可以不配对启动通信。

#程序 (HCI)
我通过 UART 发送以下 BLE5‑Stack API 等效的 HCI 命令:
*  HCI_LE_AddDeviceToResolvingList
*  HCI_LE_ClearResolvingList
*  HCI_LE_SetAddressResolutionEnable
* (参考)HCI_LE_SetResolvablePrivateAddressTimeout→这一个确实响应

示例 SENT 命令:对于`HCI_LE_ClearResolvingList`、我发送:
 01 29 20 00
* 0x01:HCI 数据包类型(命令)
* 0x2029:操作码 (OGF=0x08 LE 控制器/OCF=0x0029 LE_OCF Clear_Resolving_List)
* 0x00:参数长度
其他命令遵循相同的 OGF/OCF 和参数规则。

#预期结果
`HOST_TEST`应返回每个命令的命令完成或命令状态。

#实际结果
对于上述解析列表相关命令、`host_test`不返回任何事件(无响应)、但`HCI_LE_SetResolvablePrivateAddressTimeout`除外。

#问题
1. 要通过 UART HCI 使用`HCI_LE_AddDeviceToResolvingList`/`HCI_LE_ClearResolvingList `/` HCI_LE_SetAddressResolutionEnable`且`host_test `、是否需要额外的启用步骤(sysconfig、` build_config.opt`,预处理器符号,菜单选项)?
2. 这些 HCI 命令是否在默认`host_test` build 中禁用、或者仅通过更高级别的路径(例如 GAPBondMgr)而不是通过原始 HCI 使用?
3. 隐私/解析列表的强制设置是什么(例如,启用隐私、地址解析、RPA 超时,中心地址解析支持)以及`host_test`上的预期 HCI 事件流?

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

    您好、

    感谢您联系我们。 我们将查看此内容、并尽快回复您。

    此致、

    1 月

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

    这里是一些附加信息。

    我发现以下 E2E 主题报告了相同的行为:
    “CC2652R7:一些 HCI 命令未回复“
    e2e.ti.com/.../cc2652r7-some-hci-command-did-not-reply

    在该讨论中、我们注意到 host_test 不会响应某些标准 LE HCI 命令、似乎其中包括解析列表相关命令。

    我确认、我使用的 SDK 也出现了相同的行为 (simplelink_cc13xx_cc26xx_SDK_8_31_00_11)。
    您能否确认此限制在当前 SDK 中是否仍然适用?

    此外、如果可用、我想知道是否有任何示例代码或示例、说明如何扩展 HOST_TEST 以支持这些命令、例如将其添加为供应商特定 HCI 命令、或以其他建议的方式修改工程。

    我们正在考虑在我们这边扩展 host_test、因此任何参考或示例都非常有用、因为我们想评估这种方法。

    此外、您是否可以在 host_test 中通过 UART 共享支持的 HCI 命令列表?

    感谢您的支持。

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

    您好:

    我对这里的延迟深表歉意。 我深入研究了这一点、似乎这些命令不受支持、HCI_LE_SetResolvablePrivateAddressTimeout 除外。 我不相信 btool 中的其他命令可以发送。

    遗憾的是、我不熟悉将此功能添加到 host_test 的任何方法、

    如果您计划使用另一个主机(如 btool)、我建议使用 ble_controller 示例。

    此致、

    Tarek D

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

    感谢您的答复。

    我还有一个问题。

    BLE5‑Stack SDK 提供如等 APIHCI_LE_AddDeviceToResolvingList、这些解析列表函数在开发常规嵌入式应用时可用。
    鉴于 SDK 和控制器固件支持这些功能、 使用 host_test 时、为什么这些标准 LE HCI 命令不可用?

    我假设 host_test 能够使用控制器支持的任何功能、因此希望对此限制背后的技术原因做出澄清。

    提前感谢您。

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

    您好:

    我对此进行了进一步的研究、您的假设是正确的。 主机测试能够支持所有这些 HCI 命令、因为它与 SDK 中的所有其他示例是同一个控制器。 我认为限制在 btool 侧、而不是 host_test 侧。

    我将进一步研究这一点,看看是否有任何计划更新 btool。

    此致、

    Tarek D

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

    感谢您的更新。

    我知道 host_test 确实支持这些 HCI 命令、问题可能出在 BTool 方面。

    感谢你继续对此事进行调查。

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

    您好:

    我将与团队讨论此问题、以评估这些要添加到工具中的命令。

    此致、

    Tarek D

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

    我期待收到您的评估结果。

    再次感谢您的持续帮助。