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:使用通道映射为 BLE ETSI RX 阻塞测试设置频率

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

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

https://e2e.ti.com/support/wireless-connectivity/bluetooth-group/bluetooth/f/bluetooth-forum/598251/cc2650-using-channel-maps-to-set-frequency-for-ble-etsi-rx-blocking-test

器件型号:CC2650

您好!

我正在研发的 CC2650 BLE 产品目前正在进行合规性测试。  我已经使用内置模式进行 FCC 测试、使用:

HCI_EXT_ModemTestTxCmd ();

将无线电置于特定模式的功能。  这是一个很好的功能!

为了执行接收器阻塞测试、本实验希望我们的两个板(通过 BLE)相互连接、以发送数据、并指示连接仍然正常。  我找到了 CC2650 Launchpad 的 SPP_ble_client 和 SPP_ble_master 示例项目、并认为这是一个很好的起点。  我修改了项目以与我们的硬件配合使用、并使服务器每250ms 发送一次数据。  客户端每次接收数据时都会切换 LED 指示灯。

我刚刚了解到、需要将无线电限制在频谱低端和高端的两个通道/频率中的一个。  我在这个论坛上发现了这两个主题、它们讨论了如何使用通道映射来限制跳频方案中使用的通道:

https://e2e.ti.com/support/wireless_connectivity/bluetooth_low_energy/f/538/p/404558/1433442

https://e2e.ti.com/support/wireless_connectivity/bluetooth_low_energy/f/538/p/507332/1844550

这些讨论了如何在 中央器件上使用函数 HCI_LE_SetHostChanClassificationCmd ()来限制用于传输的通道。  有人指出,这必须在建立联系后进行。  这些主题与我发现的有关-我没有找到有关通道映射或 HCI_LE_SetHostChanClassificationCmd 函数及其用途等的更详细信息的文档

我将以下代码放入 SPP_BLE_CLIENT.c、SPPBLEClient_processRoleEvent()函数和 GAP_LINK_established 事件部分的 SPP_BLE_CLIENT (中央)项目中:

uint8通道图[5];
hciStatus_t RV;

chanMap[0]= 1<<1;//2404MHz
//chanMap[4]=1<<6;/2478MHz
Rv =HCI_LE_SetHostChanClassificationCmd (chanMap);

我没有频谱分析仪、因此我将此代码发送给一位同事、他确认电路板看起来仍在使用整个频谱-它不仅限于一个通道。

我可以在这里使用一些帮助来使其正常工作、例如、在连接时仅使用一个通道:

1. 我对频道图的使用是否正确?  5个字节的数组?  LSB 为2402MHz、MSB 为2480MHz?

2. 我是否正确调用 HCI_LE_SetHostChanClassificationCmd (chanMap)?

3. 我是否在 正确的位置调用 HCI_LE_SetHostChanClassificationCmd (chanMap)?

4. 没有频谱分析仪、我是否有办法验证这是否正常工作?  是否有使用 TI PC 工具或类似工具的 CC2650 Launchpad 监听器项目?

5.有人能给我提供有关在 TI Simplelink 中使用通道映射和 HCI_LE_SetHostClassificationCmd (chanMap)的更好文档吗?

6.

感谢您的任何帮助/建议...

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

    尊敬的 Thomas:

    您的实验室不应使用其他 CC2650 Launchpad 或 BLE 连接来执行 RX 阻塞测试。 我建议他们查看应用手册 SWRA536 ETSI EN 300 328阻塞测试、了解 使用 BLE 测试仪和 SmartRF Studio 7进行的低功耗蓝牙测试设置。

    祝你一切顺利

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好、JXS、
    感谢您的回复。 我昨天晚上在搜索时找到了该文档。 我将在本次实验中介绍这一点...

    我仍想继续回答上述最初的问题,因为这是实验室最初要求的设置,是我自己提出的。 您能否在 SPP_BLE_server 和 SPP_BLE_CLIENT 示例的上下文中阐明通道映射和 HCI_LE_SetHostClassificationCmd (chanMap);函数?

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

    很高兴您找到了应用手册。

    HCI_LE_SetHostChanClassificationCmd 在蓝牙规范中进行了介绍。 请参阅蓝牙规范版本4.2中的"7.8.19 LE 设置主机通道分类命令"[第2卷、第 E 部分]

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

    您是否看到我尝试限制信道的方式有任何问题、如原始帖子中所述?

    我还有其他问题吗?

    谢谢、
    Tom
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    射频通道0 (2402MHz)和39 (2480MHz)是 ADV 通道、因此 HCI_LE_SetHostClassificationCmd 不适用于这些非数据通道。

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

    如果我在我描述的位置执行此操作、您是否会看到问题?

    uint8通道图[5];
    hciStatus_t RV;

    通道映射[0]= 1<<1;
    Rv =HCI_LE_SetHostChanClassificationCmd (chanMap);

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

    在使用 API 方面、我没有发现任何问题。 请注意、返回值将出现命令完成事件。

    在将 API 用作满足阻塞测试要求的测试方法方面、我已请求2级支持进一步评论、因为它与 SWRA536发布的测试设置不匹配。

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

    看起来我正在为 HCI_LE_Set_HOST_CHANGE_Classification 命令完成事件获取0x12返回值。 是否有任何想法、为什么我会根据我正在做的事情来获得这个结果?

    2.18 HCI 命令参数无效(0x12)

    谢谢、
    Tom
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好、JXS、
    供参考、我能够使用 HCI_LE_ReadChannelMapCmd (connHandle);命令读取通道映射。 当 HCI_LE_READ_CHANNEL 事件传入 SPPBLEClient_processCmdCompleteEvt()时,读取的通道映射如下:

    {0xFF、0xFF、0xFF、0xFF、0x1F}

    正如预期的那样、37位打开、三个 MSB 关闭...

    对我之前的问题有什么想法、为什么我要从 HCI_LE_SetHostChanClassificationCmd (chanMap)获取0x12错误代码?

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

    您好、Tom、

    我确实确认 HCI_LE_SetHostChanClassificationCmd 需要至少个通道在通道映射中列为"未知"或1。 可在 BTool 中进行原型设计、LaunchPad 根据以下设置运行 host_test 固件:

    请记住、您必须是中心角色、并且该命令只能在连接期间发送。 此外、如前所述、我认为使用此 HCI API 的测试设置不足以进行监管测试。

    祝你一切顺利

    编辑:更正了 HCI API cmd 名称。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好、JXS、
    我听说过您对该测试设置的看法。 我对实验室告诉我的内容感到困惑。 问题是、我没有固件可以在 DUT 上运行以支持此测试。 没有可连接 SmartRF Studio 的 USB 端口等 也许会出现这种情况。 如有必要、让我们在新主题上讨论这个话题...

    关于您之前的帖子,您提到了 HCI_LE_ReadChannelMapCmd ()-您是指 HCI_LE_SetHostChanClassificationCmd ()吗?

    因此、五字节位掩码必须至少有两个位作为1 -还是两个通道作为"未知"? 我不能只排斥在一个通道上?

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

    很抱歉、我本来打算说"HCI_LE_SetHostChanClassificationCmd"并更正了该帖子。
    正确;至少需要在通道映射中指定两个活动通道(1)。

    要运行 SmartRF Studio 7、只需使用调试器连接到电路板上的 JTAG 端口即可。 您可以使用 LaunchPad 上的外部 JTAG"XDS110 OUT"端口进行此连接。

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

    在应用手册中建议设置的原因完全是为了避免需要将任何特殊的 FW 加载到器件中以接收数据包并以某种方式报告 PER。 SmartRF Studio GUI 将为您处理该问题。 在 JXS 写入时、SmartRF Studio 所需的只是连接到 JTAG 接口的调试器。

    此致、
    Fredrik