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)会在稍后与 Android 应用断开连接、但当连接到 Apple 应用程序时会保持连接、直到手动断开连接。

Guru**** 2582405 points
Other Parts Discussed in Thread: CC2541

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

https://e2e.ti.com/support/wireless-connectivity/bluetooth-group/bluetooth/f/bluetooth-forum/593567/cc2541-my-device-cc2541-gets-disconnected-from-android-applications-after-sometime-but-when-connected-to-an-apple-application-stays-connected-until-manually-disconnected

器件型号:CC2541

您好!

我使用 CC2541 BLE 芯片为我的应用开发了电池供电设备。 当我使用称为浅蓝色的应用在苹果 iPod 上测试该器件时、我的器件按预期工作正常。 但是、当使用 Android 手机尝试相同的操作时、它会在固定的时间段内连接并正常工作(这会随监控超时而直接变化)、并且会自行断开连接。 我已经在 Android 系统上的多个应用程序上尝试过此操作、并且设备在所有应用程序上的行为都相同。 我是否必须遵循 特定于 Android 系统的某些连接参数?

我想这是我使用的连接间隔的问题。 我在下面列出了它们是否有用。

//如果启用了自动参数更新请求
,则最小连接间隔(单位为1.25ms,80=100ms)#define DEFAULT_MILLED_CONN_INTERVAL 400

//如果启用了自动参数更新请求
#define DEFAULT_REGIND_MAX_CONN_INTERVAL,则最大连接间隔(单位为1.25ms,800=1000ms) 800

//启用自动参数更新请求时使用的从器件延迟
#define DEFAULT_REGIND_SLAVE_DERA延迟 0

//如果启用了自动参数更新请求
#define DEFAULT_REGIND_CONN_TIMEOUT,则监控超时值(10ms、1000=10s 的单位) 500

//建立连接时是否启用自动参数更新请求
#define DEFAULT_ENABLE_UPDATE_REQUEST True

//连接暂停外设时间值(以秒为单位)
#define DEFAULT_CONN_PAUSE_PERIFT 5. 

如果我需要提供一些有关我的项目的其他信息、请告诉我、我在 Android 6.0和7.0上遇到了此问题。

此致、

Vidula。

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

    数据包监听器跟踪有助于了解正在发生的情况。 我猜是因为32kHz 时钟关闭。 您是否验证了振荡器的频率? 最简单的方法是使用 PMUX 寄存器在 IO 引脚上输出时钟信号。

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

    您好、Fredrik、

    感谢您的回复、我已通过写入 PMUX 寄存器来检查振荡器频率、我得到的频率平均值接近32kHz。 我还使用了数据包监听器来记录连接、并在下面附加了它。

    此致、

    Vidula。

    e2e.ti.com/.../Sinffer-log-8_2D00_5_2D00_17.psd

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

    您好、Vidula、

    32kHz 频率的确切值是多少? 32.768kHz 的偏移量是多少、以 ppm 为单位?

    监听器跟踪告诉您什么?

    此致、
    Fredrik

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

    我已经为我的器件使用了 CC2541 Postage Stamp 参考设计、并且我已经使用了其中指定的组件。 我使用的32.768kHz 晶体的制造商器件型号为(FC‐12M 32.7680KA‐A3)。 您可以在产品数据表中查看所需的详细信息。 我还检查了监听器的连接日志、无法理解设备意外断开的原因。 我注意到从主器件到从器件的定期参数更新、但不知道其原因。
    与 Apple 设备连接时、我的设备不会断开连接、但当连接到 Android 时会在某个时间后断开连接。
    如果你能帮我解决这个问题、我将不胜感激。 我对 BLE 使用的协议不是很了解、但我能够感知堆栈并以我喜欢的方式对其进行修改、因此我无法通过引脚指出问题。
    我期待你在这方面提供帮助。

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

    我不是移动应用程序开发人员、但我想我一段时间前看到有人说、如果移动 Android 应用程序前台和背景、连接可能会丢失、或者您可能希望通过将 default_desired 从机延迟设置为1来为其提供更多空间。