泰凌微电子自研蓝牙Mesh解密分析工具操作说明

描述

在调试开发蓝牙Mesh产品时,除了打开设备端的Log外,有时还需要用到抓包工具分析空中的Mesh消息格式和交互流程是否正确。目前市面上的抓包仪器价格较贵,在缺少专业的抓包工具时,可通过泰凌自研的蓝牙Mesh包解密分析工具进行初步分析。

此工具只需用到1个TLSR8258 Dongle(以下简称Monitor)和1个串口模块,然后编译8258_mesh_monitor工程(SDK下载链接: http://wiki.telink-semi.cn/tools_and_sdk/BLE_Mesh/SIG_Mesh/sig_mesh_sdk.zip),烧录编译得到的8258_mesh_monitor.bin,入网后即可监听并解密当前Mesh网络内广播类型的Mesh消息,暂不支持GATT proxy pdu和解密用Device Key加密的Mesh消息。

操作步骤如下:

1配置Monitor串口

抓包工具使用8258_mesh_monitor编译选项,工程设置里已使能MESH_MONITOR_EN。与8258_mesh工程共用应用层代码,在头文件app_config_8258.h中通过宏UART_TX_PIN配置串口的IO。

Mesh

Clean编译后得到8258_mesh_monitor.bin文件,烧录到Monitor中。

2连接串口硬件

把Monitor的uart tx和uart rx分别接到串口模块的rx和tx,打开串口调试助手(通用串口工具即可),选择对应的COM口,设置波特率115200,hex显示。

Mesh

Mesh

3把Monitor加入Mesh网络

Monitor在加入需要监听的Mesh网络前,相当于一个未配网节点,不开启监听功能。用App/网关把它加入Mesh网络后,会自动开启监听功能。

4Log解析

Monitor加入Mesh网络后,会通过串口解密输出监听到的Mesh网络内广播类型Mesh消息,格式为:

0xF5 + length + 0x2A(Mesh type) + Network PDU.

Network PDU对应下图结构体mesh_cmd_bear_t中红框内的成员变量,与Mesh spec中定义的PDU格式是一致的,根据格式解析上报的raw data就知道具体的Mesh消息。

Mesh

如下图,网关把一个灯节点和Monitor加进来后,往Mesh网络分别发送了onoff set和自定义的vendor set消息,灯节点收到后回复了onoff status和vendor status。

Mesh

5扩展功能

1、如果要监听默认网络的Mesh包(未执行组网操作之前的网络),可通过串口往Monitor下发命令开启监听功能。

a8 ff + 00 + monitor_en。

monitor_en为1开启,0关闭。

2、Monitor默认开启sno过滤(即relay protect list),如果需要关闭,可通过串口往Monitor下发命令设置。

a8 ff + 01 + sno_filter。

sno_filter为1开启sno过滤,0关闭sno过滤。

以上就是蓝牙Mesh包解密分析工具的操作步骤,通过抓取空中包,能够快速地定位和分析问题。

TLSR8258 Dongle 购买链接:

https://shop321349797.taobao.com/search.htm?spm=a1z10.1-c.w5002-24452846213.1.76af4a1c6oNHJz&search=y

 

关 于 泰 凌

泰凌微电子致力于为客户提供一站式的低功耗高性能无线连接SoC芯片解决方案,包括经典蓝牙,蓝牙低功耗,蓝牙Mesh,Zigbee,Thread,Matter,Apple HomeKit,Apple“查找(Find My)”,和私有协议等低功耗2.4GHz多协议无线连接系统级芯片和丰富的固件协议栈。公司产品广泛应用于智能照明,智能家居/楼宇,智能遥控,无线外设,智能零售,穿戴设备,无线音频,智能玩具,物流追踪,智慧城市等各类消费和商业应用场景中。

  审核编辑:汤梓红

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分