Chinaunix首页 | 论坛 | 博客
  • 博客访问: 121811
  • 博文数量: 30
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 280
  • 用 户 组: 普通用户
  • 注册时间: 2015-12-14 10:05
个人简介

坚持学习,每天进步一点点……

文章分类

全部博文(30)

文章存档

2017年(13)

2016年(17)

分类: C/C++

2017-05-24 19:51:10

刚开始做BLE开发,用wireshark分析btsnoop_hci.log的数据包时,发现对端设备的mac address全部变为0

刚开始以为是bluedroid的bug,最后翻阅Core_v4.2才发现还是自己对spec的了解太少了。一下翻译至官方文档:(page:1253)
7.7.65.10 LE 增强连接完成事件
test.bmp
    LE增强连接完成事件向两个建立连接的主机通知连接已经被创建。一旦这个连接被创建,控制器应该分配一个connection_handle并且把这个时间传递给主机。如果连接建立失败,这个事件也应该通知发布LE_Create_Connection命令的主机。
    如果这个事件是unmasked(不知道这个单词在这个地方代表什么意思)并且LE_Connection_Complete事件是unmasked,在一个新的连接完成时,只有LE增强连接完成事件会被发送出去。
    这个事件主机通知发出一个LE_Create_Connection命令并接收命令状态,无论连接建立成功还是失败。
    这个Master_Clock_Accuracy参数只能在slave端有效,在Master端,这个参数应该被置0x00.

test1.bmp
test2.bmp
test3.bmp
test4.bmp
test5.bmp
test6.bmp
test7.bmp
    我的BLE的address type是1(random address),所以应该显示为0。
    另附几个关于BLE address介绍的文章:
    
    
阅读(1514) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~