搜索
bottom↓
回复: 0

CC2540与手机配对及连接参数更新时会连接超时问题

[复制链接]

出0入0汤圆

发表于 2017-6-5 00:30:06 | 显示全部楼层 |阅读模式
背景:CC2540芯片,1.3.2协议栈(作从机),需要与IOS及安卓手机(作主机)对接,且需要实现配对。

IOS蓝牙版本4.2 ,测试APP:LightBlue

安卓蓝牙版本4.0 ,测试APP:TruthBlue

IOS方面:

严格按照IOS连接参数使其更新参数如下:

#define DEFAULT_DESIRED_MIN_CONN_INTERVAL    160

#define DEFAULT_DESIRED_MAX_CONN_INTERVAL   240

#define DEFAULT_DESIRED_SLAVE_LATENCY    4

#define DEFAULT_DESIRED_CONN_TIMEOUT   600

从抓包可看出可实现参数更新也可实现配对过程,用 APP测试通信正常,算是成功的。

安卓方面:

查阅相关文档,上述IOS的连接参数也是适用于安卓的,每个参数都没超出其范围,也满足:

Supervision Timeout  > (1 +slaveLatency)* (connectionInterval)

所以此处直接使用上述IOS的参数设置。问题来了,使用此参数进行配对时是无法配对成功:手机输入配对密码后一直显示“读取通道信息”,而CC2540则是收到返回值:GAPROLE_WAITING--等候连接超时。抓包工具也并没有抓取到成功更新参数的包。

几种测试排查结果:

1、如果去除配对功能,保留上述的的更新参数连接,却又是可以正常连接,也可以从抓包中看到参数是更新了。可以使用APP实现通信。但本系统需要用到配对功能。

2、如果保留配对功能,改动连接参数如下:

#define DEFAULT_DESIRED_MIN_CONN_INTERVAL    6

#define DEFAULT_DESIRED_MAX_CONN_INTERVAL   6

#define DEFAULT_DESIRED_SLAVE_LATENCY    0

#define DEFAULT_DESIRED_CONN_TIMEOUT   300

则是可以实现配对功能,但连接间隔太过短,不适合产品应用。

所要解决问题:

安卓方面的应用配对功能时连接参数是有更严格的要求吗?需要设置什么值才适合或者是要设置一个怎样的范围内呢?理论上不超出其各参数的值及上述的关系公式不就行了吗?求指导谢谢

阿莫论坛20周年了!感谢大家的支持与爱护!!

月入3000的是反美的。收入3万是亲美的。收入30万是移民美国的。收入300万是取得绿卡后回国,教唆那些3000来反美的!
回帖提示: 反政府言论将被立即封锁ID 在按“提交”前,请自问一下:我这样表达会给举报吗,会给自己惹麻烦吗? 另外:尽量不要使用Mark、顶等没有意义的回复。不得大量使用大字体和彩色字。【本论坛不允许直接上传手机拍摄图片,浪费大家下载带宽和论坛服务器空间,请压缩后(图片小于1兆)才上传。压缩方法可以在微信里面发给自己(不要勾选“原图),然后下载,就能得到压缩后的图片】。另外,手机版只能上传图片,要上传附件需要切换到电脑版(不需要使用电脑,手机上切换到电脑版就行,页面底部)。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|Archiver|amobbs.com 阿莫电子技术论坛 ( 粤ICP备2022115958号, 版权所有:东莞阿莫电子贸易商行 创办于2004年 (公安交互式论坛备案:44190002001997 ) )

GMT+8, 2024-4-27 08:08

© Since 2004 www.amobbs.com, 原www.ourdev.cn, 原www.ouravr.com

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