TI中文支持网
TI专业的中文技术问题搜集分享网站

CC2640R2F连接异常导致BLE无法正常工作

 开发环境:CCS  Version: 9.0.1.00004 。SDK:simplelink_cc2640r2_sdk_3_20_00_21。示例程序:ble5_simple_peripheral_cc2640r2lp_app

描述:基于官方例程ble5_simple_peripheral_cc2640r2lp_app未做任何改动。使用手机APP连接目标从机,整个过程不断电不重启,反复进行连接断开再连接再断开的操作,大概60次会出现死机现象,准确的说应该是蓝牙协议栈不工作,导致设备不能继续广播,从而无法再连接此设备,此时只能通过复位上电才能再次广播。

关于这点有如下猜想:是不是BLE协议栈在工作的过程中申请动态内存后未释放完全,导致累积到一定次数后剩余空间不足,导致BLE协议栈停止工作?因为我们进行过测试,在我们自己的程序上大概只能连接30次,通过修改程序后使剩余资源变大连接次数明显可以提升。现在想请你们对此现象做个测试评估,感谢支持。

Viki Shi:

1、建议在新版的SDK上进行测试
2、“反复进行连接断开再连接再断开的操作” 是主机断开从机还是从机主动断开?
3、死机具体的现象是什么?仅RF死机还是全部都不工作?

babober:

回复 Viki Shi:

我们的工程程序是在3.2版本进行的,后续尝试更新SDK试试
断开连接是手机APP端主动断开,芯片做得是从机,正常的断开在从机端都能收到相应的事件:GAP_LINK_TERMINATED_EVENT。
死机应该只是RF死机,我们的工程代码串口仍然可以工作,读写flash也没得异常,就仅仅是芯片不能广播、不能被连接了。
刚刚从别的渠道获得消息,可能是由于此版本的SDK存在问题,正在测试新版本的SDK

Viki Shi:

回复 babober:

好的,等待你的反馈

babober:

回复 Viki Shi:

目前测试出100+的连接断开次数,暂时未出现此现象,但是基于此问题,既然存在RAM未被释放完全的现象,我们觉得100+的次数也可能不稳定,目前纯手工测试费时费力,有没有类似的测试脚本可供使用呢?

Viki Shi:

回复 babober:

据我所知,没有此类脚本

赞(0)
未经允许不得转载:TI中文支持网 » CC2640R2F连接异常导致BLE无法正常工作
分享到: 更多 (0)