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.

[参考译文] CC2642R-Q1:直接广播的广播参数设置

Guru**** 2593970 points


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

https://e2e.ti.com/support/wireless-connectivity/bluetooth-group/bluetooth/f/bluetooth-forum/1340030/cc2642r-q1-setting-of-advertising-parameters-for-direct-advertisement

器件型号:CC2642R-Q1

我尝试在运行时通过以下方式进行直接广播

//禁用广播
GAP_DisableAdvertisement ();

Uint16 eventprops_u16 = GAP_ADV_PROP_connectable | GAP_ADV_PROP_legacy | GAP_ADV_PROP_DIRECTED;
UINT8 directedMacAddr_A[B_ADDR_LEN]={0x2e、0x20、0xcd、0x46、0x74、 0x74}; //mobile Mac 的反向格式
//创建通告集
GapAdv_create (&gap_BleClusterAdvCallback、&advParams1和&advHandleDirected_u8);

//设置定向广播的广播参数
GapAdv_setParam (advHandleDirected_u8、 GAP_ADV_PARAM_PROps ,&eventprops_u16);

GapAdv_setParam (advHandleDirected_u8、 GAP_ADV_PARAM_PEER_ADDRESS , directedMacAddr_a);


//加载由应用静态分配的1组的广播数据
GapAdv_loadByHandle (advHandleDirected_u8、 GAP_ADV_DATA_TYPE_ADV 、sizeof (advData1)、advData1);

GapAdv_setEventMask (advHandleDirected_u8、 GAP_ADV_EVT_MASK_START_AFTER_ENABLE  

                                        | GAP_ADV_EVT_MASK_END_AFTER_DISABLE

                                        | GAP_ADV_EVT_MASK_SET_TERMINED);

//使用新句柄启用广播
GapAdv_ENABLE (advHandleDirected_u8、 GAP_ADV_ENABLE_OPTIONS _USE_MAX ,0);

当我设置  uint16 eventprops_u16 = GAP_ADV_PROP_connectable | GAP_ADV_PROP_legacy | GAP_ADV_PROP_Directed 时;在移动设备上看不到外设

但当我将其设置为 uint16 eventprops_u16 = GAP_ADV_PROP_Directed 时;通过这种方式、我可以看到我的设备、但它在移动设备中未显示连接选项。

 uint16 eventprops_u16 = GAP_ADV_PROP_Directed 时更加清晰;则广播类型为 扩展模式而不是传统模式

如何使中央设备既可定向又可连接? 我正在使用  simplelink_cc13xx_cc26xx_sdk_6_20_00_29 SDK

提前感谢。

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

    您好!

    在我们的离线对话中、您可以

    "

    具有 TI 芯片(外设)的仪表组已配对并连接到智能手机(中央)、需要从之前连接的智能手机断开连接并连接到新器件。

    其中包括

    1. 以前连接的智能手机不会重新连接到仪表组(因为连接的 iPhone 在广播时会尝试重新连接)
    2. 应仅将智能手机连接到具有提供的 Mac 地址的指定设备。

    "

    外部工具提供电话 MAC 地址、但我假定提供的地址大多是 RPA 权限? 如果您要使用直接广告向设备使用 RPA、则需要通过公共地址的 RPA 执行直接广告。

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

    我也使用了 RPA、但仍然无法在移动扫描列表中找到 ti 外围设备名称

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

    e2e.ti.com/.../8688.simple_5F00_peripheral_5F00_CC26X2R1_5F00_LAUNCHXL_5F00_tirtos7_5F00_ticlang.zip

    在简单的外设示例中、我进行了以下更改以进行直接广播、但在移动扫描器中看不到目标作为 SP

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

    尊敬的 Pavan:

    我需要花一天时间来消化此主题中已提供的信息。 我明天会给出回应。

    为了澄清上述情况、移动扫描仪(iPhone)中未显示使用 RPA 的 TI 器件(外设)定向广告。

    您正在使用什么移动扫描器?

    此致!

    N·贝赫马内什

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

    尊敬的 Nima:

    我们正在使用 NRF 扫描仪应用程序、我正在 Android 手机中进行扫描。

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

    尊敬的 Pavan:

    在发送定向广告之前、外围设备和 Android 手机是否已配对并绑定/交换了 IRK?

    此致!

    N·贝赫马内什

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

    尊敬的 Nima:

    否、它们不能配对。

    我们的实际要求是根据 MAC 地址阻止除新器件(之前未配对)之外的所有连接、仅连接到该器件。

    要求:

     

    具有 TI 芯片(外设)的仪表组已配对并连接到智能手机(中央)、需要从之前连接的智能手机断开连接并连接到新器件。

     

    其中包括

    1. 以前连接的智能手机不会重新连接到仪表组(因为连接的 iPhone 在广播时会尝试重新连接)
    2. 应仅将智能手机连接到具有提供的 Mac 地址的指定设备。

     

    我们遵循的步骤(方法–1):

    1. 停止现有连接并禁用广播、以使以前连接的器件不能重新连接
    2. 使用 Adv 参数创建新广播集、如下所示
      1. 事件属性添加到 GAP_ADV_PROP_connectable | GAP_ADV_PROP_legacy | GAP_ADV_PROP_DIRECTED。
      2.  作为公共 ID 的伙伴类型
      3. 以相反的顺序设置新设备的 macAddress (如果 A:B:C 是 Mac、我们会将其设置为 C:B:A)。
    3. 加载带有器件名称和标志的广播数据的广播集 GAP_ADTYPE_FLAGS_BREDR_NOT_SUPPORTED | GAP_ADTYPE_FLAGS_GENERAL
    4. 使用 GAP_ADV_EVT_MASK_START_AFTER_ENABLE 设置事件屏蔽| GAP_ADV_MASK_END_AFTER_DISABLE | GAP_ADV_EVT_MASK_SET_TERMINED 设置事件屏蔽。
    5. 通过 GAP_ADV_ENABLE_OPTIONS _USE_MAX 的使能选项启用广播。

     

    我们面临的问题:

    新器件(使用智能手机作为新器件)无法检测到 TI 外设广播

     

    ­Steps (方法- 2):

    1. 停止现有连接并禁用广播。
    2. 通过使用 HCI_LE_AddWhiteListCmd API、我们再次添加新器件的 MAC 地址、peerType 是公共 ID
    3. 对于现有广播参数集、将滤波器策略设置为 GAP_ADV_WL_POLICY_WL_CONNECT_IND。
    4. 开始广播

     

    我们面临的问题:

    新器件可以在尝试连接时看到广播、连接未发生。

    仅当 TI 外设中已经存在绑定信息时、绑定信息才会正常工作、但对于未绑定的器件不会正常工作。

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

    尊敬的 Pavan:

    感谢您的澄清。 如果您使用 RPA 进行定向广告、则需要将 IRK 共享给器件。 我相信,这就是为什么它工作,当绑定信息存在广告工作.

    我将尝试复制到我的最后,看看我是否可以得到定向广告工作使用公共地址. 我将不迟于星期一向你们通报进展情况。

    此致!

    N·贝赫马内什

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

    尊敬的 Nima:

    我们通过将 peertype 设置为公共和私人,进行了测试,但它不起作用。

    我们需要阻止所有连接(不删除绑定信息)、需要一个新设备、其 MAC 地址已指定、但以前从未配对。

    您能否说明一下、这对我们来说是一个关键问题

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

    尊敬的 Pavan:

    那么、该设备之前从未连接过、它的地址已添加到白名单中、并且共用 IRK?

    此外、您现在可以看到广告、但连接失败了? 您能否共享所看到内容的 ellisys (或 OTA 日志)日志?

    这应该能帮助我进一步诊断问题?

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

    尊敬的 Pavan:

    看起来 Direct Adv 不适用于苹果设备、如这里所述: https://developer.apple.com/accessories/Accessory-Design-Guidelines.pdf 第49.3节广告 PDU。  

    此致、

    马尔文

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

    不会共享铁杆、因为我们以前从未配对过、因此没有机会分享铁杆和白名单方法不起作用

    如果我们将 evet props 设置为 uint16 eventprops、则新设备根本看不到广告= GAP_ADV_PROP_connectable | GAP_ADV_PROP_legacy | GAP_ADV_PROP_Directed;

    如果我们设置为 uint16 eventprops = GAP_ADV_PROP_Directed、则只能看到 Adv;但它显示为不可连接

    我们通过以下步骤跟踪了 OTA 监听器

    DirectAdv.zip

      UINT8 MAC[6]={0xCE、0x5A、0xBD、0xB9、0xCE、 0x80};这是 我为指定目标添加的反向格式的 MAC 地址

    遵循的步骤  

    1)通过正常广告连接的普通电话

    2)通过断开当前连接的设备、使用 MAC 地址触发直接广播

    3) 3)该新 MAC 地址之前没有配对

    4) 4)在指定了 Mac 地址的新器件的 nrf Connect 应用程序中搜索外设名称

    结果  

    1) 1) nrf Connect 应用程序中未观察到的外设名称

    注意  :我们不是用 iPhone 测试我们只是用 Android 测试

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

    尊敬的 Marvin:

    我们只测试 Android 而不是 iPhone

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

    您能不能快速看一下这个问题、它已经变成了我们的拦截者

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

    我能够看到 TI 器件通过监听器广播到正确的 MAC 地址、因此该 TI 器件可以正常工作。

    据我所知、您希望使用 Direct Adv 连接到手机、而无需之前与手机配对。 我是否理解正确? 这将无法从手机端实现、就像现在一样。 您需要添加软件来处理此情况。 手机不允许您仅使用 Mac 地址进行连接。  

    您能否提供有关您为什么要使用 Direct Adv 连接到新电话的更多详细信息?   

    此致、

    马尔文

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

    我们需要将新的蓝牙设备连接到外设、当我们连接该新设备时、我们希望阻止其他连接而不取消配对、我们如何实现此连接

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

    您好!

    您可以启用过滤器接受列表、以便在任何给定时间仅接受特定设备。

    这可以通过更新公布参数 filterPolicy 来实现、默认情况下(GAP_ADV_WL_POLICY_ANY_REQ)策略会处理所有请求。 但可以将其更改为"GAP_ADV_WL_POLICY_WL_CONNECT_IND"、此应用于  

    /**
      *处理来自所有设备的扫描请求,仅处理连接请求
      *来自白名单中的设备。
      */

    要将设备添加到筛选器认可列表(白名单)、您可以使用 https://dev.ti.com/tirex/content/simplelink_cc13xx_cc26xx_sdk_7_40_00_77/docs/ble5stack/ble_user_guide/doxygen/ble/html/group___h_c_i.html#ga5034b56f0d3c79d6382f7fea041e58af
    要从 FA 列表中删除器件、您可以使用 https://dev.ti.com/tirex/content/simplelink_cc13xx_cc26xx_sdk_7_40_00_77/docs/ble5stack/ble_user_guide/doxygen/ble/html/group___h_c_i.html#gad05927cc6b7ba91244c98fc6e5c97165