经典蓝牙(BR/EDR)设备连接过程分析

news/2024/11/23 16:36:31/

经典蓝牙(BR/EDR)设备连接过程分析

蓝牙 专栏收录该内容
15 篇文章 0 订阅
订阅专栏

一、Inquiry过程

Host发送HCI Inquiry命令,等控制器收到远程设备的Inquiry Response之后,发送HCI Event给Host。Host对Event数据进行分析,待Host 收到Inquiry Complete响应后,整个Inquiry过程结束。
Host收到应答后可以发送HCI inquiry cancel取消Inquiry或等待Inquiry时间到达自动结束。
Inquiry过程,截图来自Core_V5.0.pdf
Inquiry
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

二、连接过程

在蓝牙核心文档中,连接过程如下:
在这里插入图片描述
上图表示Connection establishment 和 detachment 过程,总共需9个不同的过程。有些过程不是必须的比如授权和加密过程。有些过程是必须的,比如ConnectionRequest 和Setup Complet过程。
接下来将具体介绍每个流程:

1、create connection(必选)

Host发送HCI_Create_Connection命令给Controller,然后Controller通过指定的蓝牙地址去page设备。
在这里插入图片描述

2、FeaturesExchange(可选)

LM将会去进行exchange feature,获取对方的特性信息,Controller之间的交互。
在这里插入图片描述

3、ConnectionRequest(必选)

主Controller LM发送LMP_host_connection_req请求,远程设备LM确认请求,远程设备可能接受也可能拒绝请求。
在这里插入图片描述

4、根据设备情形分类

a.远程Host拒绝连接,连接将会被终止

在这里插入图片描述

b、远程设备接受连接

在这里插入图片描述

c、远程设备接收连接,并请求为Master

在这里插入图片描述

5、交换特性

和远程设备交换特性,当AFH(Adaptive FrequencyHopping 自适应跳频)被确认可用后。主设备将会发送LMP_set_AFH 和LMP_channel_classification_req请求。
在这里插入图片描述

6、授权

若需要授权,控制器将会为这个连接向host请求Link Key。在HCI中能看到Link key request的事件。
在这里插入图片描述

7、Link key

a、如果链接需要授权且没有公用的link key

接下来将会是pairing过程。LM会向host请求link key,如果host给的是Negative 回复,LM将会向host请求PIN。Host端请求结束后,随后远程端也会产生PIN请求。链接的授权都是基于请求到的PIN。最后两端都会将link Key通知到各自的host保存,为以后的链接使用。所以配对过程实际上是获取Link Key的过程!
在HCI中能看到Link key获取结束时,Link key Notification事件。紧跟着的就是授权完成的事件:Authentication Complete。
Note:在配对音箱时HCI中也是negative的回复,但是没有pincode的请求?在另一篇博客中将会单独介绍,加深印象。 如下HCI:
在这里插入图片描述
在这里插入图片描述

b、两端有共用的link key

如果两端有共用的link key存在,那么不需要配对过程!LM向host请求link key时,如果得到的是positive回复,将会直接使用回复的link key进行授权。
在这里插入图片描述

8、加密

一旦完成配对和授权,就会开始加密。下图显示的是设置一个加密的点对点连接。
在这里插入图片描述

9、连接建立完成

两端的LM都会向各自的host发送LMP_setup_complete事件。通过LMP_setup_complete事件将底层的连接handle发送给上层,到此为止建立的链接才可以用来发送上层的数据。

在我的测试平台中发现没有此项消息,handle是通过Authentication Complete Event上传上来的。
在这里插入图片描述
至此蓝牙设备已经在物理通道上建立了链接,但上层应用若需要在设备之间通信,那么还需要在L2CAP层次建立连接,L2CAP 的CID(通道ID)好比是计算机的端口号,在访问网络时每个应用程序会对应不同的端口号。在L2CAP层中也类似,对应过来的是每个协议/profile实列对应L2CAP层的一个CID。

三、L2CAP层的连接

下图为从其它博客上截图,具体找不到了,挺火的一篇:
在这里插入图片描述
HCI log如下,主要就这几条交互:
在这里插入图片描述

接下来就是SDP服务发现协议了。


http://www.ppmy.cn/news/339082.html

相关文章

Android-Q和中端手机-这是我们在谷歌I-O-2019上看到的所有东西

它配备了良好的中档配置,包括Snapdragon 670,并配有4GB内存和64GB板载存储。按照传统,没有MicroSD卡,但用户可以在谷歌照片上获得免费的高分辨率存储。正如预期的那样,它运行的是纯像素版本的Android 9.0 Pie&#xff…

【偶然的你】

乐园里。人声鼎沸。 晴朗湛蓝的天空,微风轻抚着人们的脸庞。小朋友们快乐地奔跑着,家长或是推着婴儿车,或是提着大包小包,但脸上没有疲惫,只有欣慰的笑容。情侣们腻歪着,就像是自带滤镜,发散着…

[书籍翻译]12周撰写期刊文章 学术出版成功指南——第 1 周:设计写作计划

第 1 周:设计写作计划 每天要做的任务第 1 周每日写作任务预计任务时间第 1 天(星期一?)通读第 10 页并填写那些页面上的方框60 分钟第 2 天(星期二?)选择以前编写的文本以进行发布&#xff08…

几个大学生7天涨粉百万,月入超过10万,5000字长文拆解

战绩 先说一下这几个大学生的战绩: 大二在读(目前应该已经毕业了) 一周时间,粉丝几乎从0 涨到100万 文章阅读量每篇都10万,即便是后期更换了账号主体,进行了粉丝迁移,依然达到了5万左右的阅…

转 留美博士生写给后来人的辛酸回忆:你适合读博士和搞科研吗?

原文发表于2012年12月31日 梦里江河的话: 作者WSY是上海人,上海交大2001级本科生,现在美国即将拿到生物学博士学位。他在微博自称“古典音乐铁杆粉丝,尤爱莫扎特和舒伯特。业余中提琴手,摄影爱好者,军迷,旅游爱好者,尤爱独行,以及骑车远行。科研菜鸟,坑爹博士生” 查…

深度干货!一文读懂人脸识别技术(建议收藏)

导读:国际权威市场洞察报告Gen Market Insights近日发布《全球人脸识别设备市场研究报告》称,中国2017年人脸识别产值占全世界29.29%市场份额,2023年将达到44.59%。报告还提到中国人工智能公司云从科技在2017年占有12.88%市场份额&#xff08…

python 不等于None 不等于空_iOS 14的隐藏功能盘点:不知道等于白更新!

原标题:iOS 14的隐藏功能盘点:不知道等于白更新! iOS 14的更新已经过去一阵子了,相信大家都被改变桌面布局、修改充电提示音等五花八门的功能吸引了。但小黑今天要和大家说一说,那些iOS 14中隐藏的功能,这…

【先收藏或浮窗】苹果WWDC20视频同步直播,一个小时后正式开始

“点击文末左下角“阅读原文”,可观看腾讯新闻&腾讯科技提供的WWDC20视频同步直播。 大数据产业创新服务媒体 ——聚焦数据 改变商业 此次WWDC上,苹果预计将会带来五大系统的更新,并且会在此次大会上宣布一项全新的芯片计划和全新的硬件…