找回密码
 立即注册

微信扫码登录

查看: 209|回复: 3

[BLE SDK] 连接问题

[复制链接]

1

主题

1

回帖

17

积分

英勇黄铜

积分
17
发表于 2025-7-29 15:04:25 | 显示全部楼层 |阅读模式 来自 广东东莞
Information
说明:   建议参照本版块置顶帖内容输入必要信息
芯片型号: TLST8250
SDK及版本: tc_ble_sdk-V4.0.2.1 acl_c1p1_demo
image.png 这个请求连接中的参数里扫描间隔和扫描窗口的时间对应关系如何为最佳,扫描窗口时间是否可以大于扫描间隔?

image.png 在这里打印到有连接完成状态的时候,从机并没有收到主机的连接请求,此时主机会主动断开连接并报错错误码是HCI_ERR_CONN_FAILED_TO_ESTABLISH   0x3E,遇到这种情况如何避免
具体的打印数据如下,左边是主机的打印信息,右边是从机的打印信息 fd59b363055341daae2c672cfd60a2c.png

0

主题

2

回帖

34

积分

英勇黄铜

积分
34
发表于 2025-7-30 19:49:54 | 显示全部楼层 来自 上海
本帖最后由 TL_JiaKai 于 2025-7-30 19:57 编辑

感谢您的反馈,



1. API blc_ll_createConnection() 中的 scanInter 和 scanWindow 参数,在协议栈的接口实现中并没有使用到,具体可以参考 Handbook(B91m BLE多连接SDK - Telink Documents)(抱歉,最新的tc_ble_sdk的handbook正在制作中,可以先参考tl_ble_dk的Handbook):
image.png
如参数说明所说,如果需要配置 scanInter 和 scanWindow 参数,可以使用接口 blc_ll_setScanParameter()。

2. 关于 scanInter 和 scanWindow 参数的关系,可以参考Handbook:
image.png
当只有扫描任务时,SDK是按照 scanInter 和 scanWindow 安排时序的。但当有其他任务时,其他任务的时序优先,中间空出的部分按照 scanInter 和 scanWindow 求出的占空比进行分配,具体可以参考Handbook中的下图示例:
image.png

3. 关于0x3E 断连,从蓝牙协议上分析,是允许存在的。比如 Central 发出 CONNECT_IND,由于环境干扰等原因,Peripheral 并没有收到,按照协议,此时 Central 已经发生 Create Connection Complete 事件了,但 Peripheral 没有同步上,6 个 Connection Inteval 后,Central 发生 0x3E 断连。具体可以参考蓝牙Spec Vol 6, Part B, 4.5.2 Supervision timeout章节的如下内容:
image.png
建议用户应用层做实现,当判断0x3E断连时,主动触发重连,来解决该问题。这是一个我们已知的解决方案,也是一个业界通用的解决方案。



1

主题

1

回帖

17

积分

英勇黄铜

积分
17
 楼主| 发表于 2025-8-5 15:53:40 | 显示全部楼层 来自 广东东莞

您好,因为这个0x3E的问题导致连接速度不稳定的问题,有什么好的解决方法呢,如果说我把链接超时的这个延时改到1S会有什么问题吗?

0

主题

2

回帖

22

积分

英勇黄铜

积分
22
发表于 2025-8-8 14:20:32 | 显示全部楼层 来自 上海
we_2603441380 发表于 2025-8-5 15:53
您好,因为这个0x3E的问题导致连接速度不稳定的问题,有什么好的解决方法呢,如果说我把链接超时的这个延 ...

你好,0x3E的问题和超时时间没有关系,建议 Central 端应用层发现出现0x3E的时候重新打开扫描,重新发起连接,另外请问您这边出现0x3E的概率很高吗?有条件的话可以抓包看一下
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Telink forum ( 沪ICP备17008231号-1 )

GMT+8, 2025-8-18 03:11 , Processed in 0.094412 second(s), 23 queries .

Powered by Telink 隐私政策

泰凌微电子版权所有 © 。保留所有权利。 2024

快速回复 返回顶部 返回列表