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.

[参考译文] LAUNCHXL-CC2650:限制绑定到单个器件

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

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

https://e2e.ti.com/support/wireless-connectivity/bluetooth-group/bluetooth/f/bluetooth-forum/1025556/launchxl-cc2650-limit-bonding-to-a-single-device

器件型号:LAUNCHXL-CC2650
Thread 中讨论的其他器件:CC2650

我正在努力将 CC2650限制为仅绑定到单个器件。 我正在使用 launchpad simple_peripheral (CC2650lp)示例、并已尝试在"gapbondmgr.h"中将"GAP_Bondings_MAX"设置为1。 我还尝试在设置债券管理器期间将"GAPBOND_LRU_Bond_replacement "设置为"false"。

 但是、我仍然能够将两部电话绑定到器件。 我还需要做其他事情吗?

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

    在'gapbondmgr.h'中将'gap_bondings_MAX'设置为1后、您是否重新构建并下载堆栈和应用程序来测试它?

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

    是的、执行了批量闪存擦除、然后重新构建了堆栈和应用并加载到目标上。 我将查看它是否会挑选与我编辑的文件不同的文件。

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

    所以、我觉得一切都正常。 但它仍然允许多个键合。

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

    嗨、Liam、

    我按照这些步骤操作、但使用最新的 SDK 无法重现此问题。 我可以连接到第二部手机。 我尝试写入特征5、尝试配对并成功。 然后、当我断开与第二部手机的连接并尝试重新连接时、我无法这样做。 这对我来说似乎是预期行为。

    您使用的是哪个 SDK 版本? 你看到什么?

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

    尊敬的 Ammar:

    我使用的是 BLE_SDK 2_02_06_07。 我想将设备与单个电话连接并配对、以便它拒绝所有其他配对请求。

    如果我 与第一部电话绑定(请参阅 CHAR5)、请断开连接、然后连接第二部电话。 配对请求显示在第二部手机上、第二部手机上的绑定成功(Char5成功读取)。 然后、我可以断开第二部手机的连接并重新连接第一部手机、读取 Char5已成功完成、无需进一步申请绑定。

    返回到第二部手机 需要另一个绑定、然后可以读取 Char5。

    因此、看起来它只能记住一个绑定(第一个手机)、但它允许两个手机绑定和访问 Char5。

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

    嗨、Liam、

    感谢您的观察。 您是否对默认 simple_peripheral 示例进行了任何修改?

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

    我刚刚检查了示例文件、它们与默认安装相同:

    我唯一编辑过的文件是:
    "C:\ti\simplelink\ble_sdk_2_02_06_07\src\profiles\Roles\gapbondmgr.h"、将 GAP_Bondings_MAX 更改为1。

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

    嗨、Liam、

    我认为我们在这里看到的行为是预期的。 关键是、在访问 Char5之前、仍然需要第二个器件配对、因为 LaunchPad (用于此目的)不会将该绑定存储在 NV 中。 这意味着每次与第二个器件连接时、都需要配对会话、绑定将失败。 这并不意味着无法访问 Char5 ... 这意味着每次加入时、它都必须完成配对。

    第一个器件应能够重新连接并访问 Char5、而无需配对请求。