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.

[参考译文] CCS/CC2650MODA:广播和扫描响应数据之间的区别是什么以及如何检测 TI-RTOS CC2650MODA 多角色项目中的最后一个数据。

Guru**** 2541440 points
Other Parts Discussed in Thread: CC2650MODA

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

https://e2e.ti.com/support/wireless-connectivity/bluetooth-group/bluetooth/f/bluetooth-forum/588543/ccs-cc2650moda-what-is-the-difference-between-advertixing-and-scan-response-data-and-how-to-detect-the-last-one-in-ti-rtos-cc2650moda-multirole-project

器件型号:CC2650MODA

工具/软件:Code Composer Studio

大家好

我需要使用 CC2650MODA 开发多角色项目。

为此、我参加了 multi_role 项目并对其进行了探讨。

第一步是检测从器件的广播数据。

我可以理解的是、广播数据可以在"GAP_DEVICE_INFO_EVENT"事件下的"static void multi_role_processRoleEvent (gapMultiRoleEvent_t *pEvent)"函数中检测到广播数据。 它存在于变量"pEvent->deviceInfo"中。 但如何检测扫描响应数据? 一些器件将其名称存储在扫描响应数据下、而不存储在广播数据中。

我看到、有些器件将其信息或部分信息存储在扫描响应数据下、而不  是(或除)将其存储在广播数据下。 这两个数据之间的区别可能是什么?

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

    正确的、您可以在 GAP_DEVICE_INFO_EVENT 中找到广播数据;您可以在这里提取该数据。

    您也可以在此处找到扫描响应数据、作为第二个 GAP_DEVICE_INFO_EVENT。

    通常、您可以在任意一组数据中拥有所需的任何内容。 我看到的一些用例是仅使用广播(不可扫描/可连接的非定向广播)来发送各种数据片段。 (信标)

    其他用例包括扫描时、可以进一步识别/验证器件是否确实是已知器件(如果使用的是隐私保护)

    在我们的示例项目中、您可以看到其他用途、例如建议扫描响应数据中首选的连接间隔。

    此致、
    反叛分子
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好、Rebel、
    感谢您的回答。
    根据我的理解、广播和扫描响应数据都可以在相同的"GAP_DEVICE_INFO_EVENT"事件中找到。 但是、如果是、我如何知道检测到的数据是"扫描响应"还是"广播"?

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

    您好、Boris、

    您可以在 GAP_DEVICE_INFO_EVENT 期间查看 deviceInfo.eventType 来找到该值。

    GAP_ADRPT_SCAN_RSP 表示扫描响应、有4种可能的广播数据类型、请检查

    此致、

    反叛分子

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

    您好、Rebel、
    我已经检查了你在脊医上写的内容。
    它工作正常。
    非常感谢!
    发现的器件具有2种类型的数据:GAP_ADRPT_ADV_IND=0型和 GAP_ADRPT_SCAN_RSP=4型模拟。

    终端输出:设备的写入顺序使其被发现。 其中大多数在两个不同的数据路径 GAP_ADRPT_ADV_IND=0和 GAP_ADRPT_SCAN_RSP=4时存在两次:
    地址:0xA0E6F8C41B86 AdvType:0 Project Zero
    地址:0xA0E6F8C41B86 AdvType:4.
    地址:0xA0E6F8C42C02 AdvType:0
    地址:0xA0E6F8C42C02 AdvType:4 SimpleBLEPeripheral
    地址:0x7E1FBA5E9312 AdvType:0
    地址:0x45EA7336412D AdvType:0
    地址:0xCDA41114EDE9 AdvType:0
    地址:0xCDA41114EDE9 AdvType:4 vívoactive HR


    如果是,设备是否可以同时具有两个数据,例如 GAP_ADRPT_ADV_SCAN_IND=2和 GAP_ADRPT_ADV_NONCONN_IND=3?
    器件是否可以将所有5种数据类型组合在一起、或者可以将前4种广播数据类型组合成一种而不是其他类型、并且除了其中的任何一种数据类型之外、只能显示第五种数据类型(GAP_ADRPT_SCAN_RSP=4)?

    此致
    Boris Fridman