• 资料介绍
  • 在线预览
  • 相关推荐
申请入驻 产业图谱

LAT1324 关于连接参数更新进程后导致断连的问题分析

03/24 09:38
381
加入交流群
扫码加入
获取工程师必备礼包
参与热点资讯讨论

LAT1324 关于连接参数更新进程后导致断连的问题分析

725.41 KB

引言

通常客户在做低功耗蓝牙模块设计的时候,如果蓝牙模块在实际使用场景中和手持移动设备(如手机等)绑定使用的话,往往会非常注意蓝牙模块与不同品牌、不同型号的手机的兼容性测试。这些测试项目可能包括长时间连接状态的保持,频繁建立连接,或主动断连后再次建立连接等场景。 本文描述的问题是客户在其兼容性测试中发现的一个比较典型的问题,即当从设备在与手机端处于连接状态下,从设备启动连接参数更新进程后,会导致断连的问题。由于是兼容性测试,测试设备,特别是作为主设备的手机来自不同的供应商,在兼容低功耗蓝牙协议的基础上,某些细节部分的差异难以避免。所以,本文只论述了该客户问题的分析过程及得出的结果,并不期望涵盖所有类似场景下导致断连的原因。

连接参数更新进程简述

低功耗蓝牙的核心规范中有规定,当主从设备建立连接后,可以通过启动特定的进程改变当前连接的相关参数,如连接间隔(ConnInterval),从设备延迟(SlaveLatency)和监控超时(SupervisionTimeout)等。

低功耗蓝牙的核心规范中定义了几个不同的连接参数更新流程,有的流程主设备和从设备都可以启动,有的流程只能由从设备或主设备启动。为避免引入过多对本文关注话题的无用信息,我们在这里只介绍一种由从设备启动的连接参数更新的流程。即由从设备通过调用L2CAP 层的命令的方式启动的连接参数更新流程。

客户可能的测试逻辑和问题现象描述

客户使用智能手机和 ST 的 BlueNRG LP 作为测试的主从设备。客户的兼容性测试中需要使用预设连接间隔和监控超时时间。为了在测试过程中可以实时调整相关参数,需要手机端作为主设备通过私有逻辑将新的连接参数通过低功耗蓝牙连接发送给从设备( BlueNRGLP ), 并由从设备启动上述的更新流程,以完成连接参数的更新并继续执行后续的其他测试项。

问题分析:

根据问题复现时使用低功耗蓝牙抓包工具所抓取的 log 数据。

小结

上述问题的根本原因是作为主设备的智能手机虽然完成了连接参数更新流程中主从设备之间的交互,但由于其在后续规划的连接事件,规划的射频任务的时间点的偏差而导致了断连。

导致低功耗蓝牙断连的可能原因有很多,上述的情况只是其中一种。本文的意图是介绍上述问题的分析过程,读者可以参照本文展现的分析方法、将其运用到类似问题的解决过程中。

通过对抓包 LOG 中的时间戳的分析,有很大机会可以帮助找到解决问题的突破口。

在线预览

相关推荐