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.

[参考译文] CC2541:CC2541

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

https://e2e.ti.com/support/wireless-connectivity/bluetooth-group/bluetooth/f/bluetooth-forum/772314/cc2541-cc2541

器件型号:CC2541
Thread 中讨论的其他器件: BLE-STACK

大家好!

有时、CC2541与 Android 上智能手机之间的 BLE 连接可能会因错误而断开、但 CC2541会保持连接模式(GAPROLE_CONNECTED)或错误模式(GAPROLE_ERROR)。 在这种情况下,我尝试强制断开连接(GAPRole_TerminateConnection())或可重用广播模式( GAPRole_SetParameter( GAPROLE_advertise_enabled,sizeof ( uint8 ),&enable_Adv );其中 ENABLE_Adv 为 true ),但这并不总是有效。

有时、模式仍然是 GAPROLE_Connected 或 GAPROLE_advertising/、但无线传输中没有信号。

我有三个问题:

1) 1)如果我获得 GAPROLE_ERROR 或 GAPROLE_WAITING_WAITING_FACT_TIMEOUT 状态、该怎么办?

2) 2)如何确定广播(或堆栈中的其他内容)不能正常工作?

3) 3)是否可以在不重新启动整个控制器的情况下完全重新初始化整个堆栈?

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好 Vasyl、
    很抱歉耽误你的回答。
    您使用哪种双堆栈版本?
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    Erik 您好!

    没关系。  我的问题在本质上较为笼统、 BLE 问题 很少出现。  在过去 2年中、我们制造了超过50、000台设备、  仅有3个投诉。

    我只想了解如何识别 BLE 的故障以及如何恢复正确的工作。

    我使用 BLE-CC254x-1.4.2.2。

    谢谢。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好 Vasyl、
    1) 1)在 simple_peripheral 中、如果任一端发起断开连接、您将获得 GAPROLE_WAITING_WAITING_TIME_TIMEOUT 状态更改事件、或者由于未接收到来自主器件的任何数据包而达到监控超时后、您将获得 GAPROLE_WAITY_FACT_TIMEOUT。 因此、例如、您可以尝试在这些状态下重新启动广播。 我不熟悉 GAPROLE_ERROR 的任何常见疑犯。 您可以在 profile 角色源 peripheral.c 中观察到多种原因 可能需要进行硬器件复位。
    2) 2)不是我所知道的。 无法 ping 通栈。
    3)否、
    HCI_ResetCmd 将重置链路层、但不会重置也需要的主机。 最好使用 HAL_SYSTEM_RESET 进行硬器件复位。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    Erik 您好!

    使用 Observe 时应注意什么? 我已经从 SimpleBLEPeripheral 中的 SimpleBLEObserver 示例迁移了一部分代码。 我使用连续扫描、为此、当我获取 GAP_DEVICE_DISCOVERY 状态更改事件时、我再次调用函数 GAPObserverRole_StartDiscovery。 扫描持续时间1秒。

    最棒的地方,Vasyl

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好 Vasyl、
    我不知道你的意思是什么。
    扫描结束(达到扫描持续时间)并接收到 GAP_DEVICE_DISCOVERY 事件之前找到的每个新器件都会收到 GAP_DEVICE_INFO_EVENT。

    虽然 Simplelink Academy 培训针对的是新一代器件(C26xx)、但"低功耗蓝牙扫描和广播"中的许多关键概念也与 CC2541器件相关:
    dev.ti.com/.../
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    由于不活动、我将关闭此帖子。 要重新打开此主题、只需发布后续问题。 否则、在从此帖子中无活动30天后、此主题将被锁定。