一、固件烧录
1.1 烧录环境
1.1.1 硬件环境
序号 | 名称 | 说明 |
---|---|---|
1 | 如下图1.1.1.1所示: | |
2 | 如下图1.1.1.2所示: | |
3 | 如下图1.1.1.3所示: | |
4 | 如下图1.1.1.4所示: | |
5 | 路由器就不配图啦! | |
6 | 如下图1.1.1.5所示: |
1.1.2 软件环境
序号 | 名称 | 说明 |
---|---|---|
1 | Ember_Desktop_Installer_3.3b1937 | 烧录及抓包软件 |
2 | 32bit-jdk,版本高于1.5 | Ember_Desktop_Installer_3.3b1937运行环境 |
3 | ISA3_Utilities_1.2b18 | 修改ISA3烧写器地址 |
4 | J-link驱动 | 当计算机连接ISA3的时候,貌似会自动安装 |
1.2 烧录步骤
1.2.1 接线方式
首先用USB线连接计算机和ISA3;然后用网线连接路由器和ISA3,并确保计算机和ISA3处于同一个局域网内;最后将ISA3的 Target Power 切换到 INT 位置,如下图1.2.1.1所示:
采用非官方Kit套件进行烧录与抓包时,对于Package Trace Port端的接线一定要注意线序引脚,具体如下图1.2.1.2、图1.2.1.3、图1.2.1.4、图1.2.1.5所示:
1.2.2 软件安装
用USB线连接计算机和ISA3时,会自动安装J-link驱动,如下图1.2.2.1所示:
在安装Ember_Desktop_Installer_3.3b1937时,会提示需要安装1.5版本以上、32位的jdk;安装好Ember Desktop后,计算机桌面会出现这样一个图标,如下图1.2.2.2所示:
打开Ember Desktop,如果出现 “No adapters found” 提示,说明要修改ISA3的ip地址,使计算机、ISA3和路由器三者在同一局域网内;如下图1.2.2.3所示:
此时就需要确保ISA3和计算机的ip是在同一网段;按下快捷键 “Win + R” ,输入命令 “em3xx_isa --admin "ip static 192.168.100.111 255.255.255.0 192.168.100.1"” ,然后回车确认。如下图1.2.2.4所示:
随后输入命令 “em3xx_isa --admin "ip dhcp off"” ,然后回车确认。如下图1.2.2.5所示:
重新打开Ember Desktop软件,点击 “File->Preferences->Device Manager->InSight Adapters” 进入 “InSight Adapters” 界面,按如下图1.2.2.6所示进行配置:
点击确认后回到主界面,在左侧栏中已经显示出了已发现的ISA3设备(注意:此时并未发现并识别到EM3585芯片),如下图1.2.2.7所示:
在左侧对应的ISA3上单击右键,然后在出现的下拉菜单中点击 “Connect” ,如下图1.2.2.8所示:
此时已经成功识别到EM3585芯片啦,如下图1.2.2.9所示:
成功识别到芯片后,我们就可以进行接下来的固件烧录啦,在左侧对应的ISA3上单击右键,然后在出现的下拉菜单中点击 “Upload application...” ,如下图1.2.2.10所示:
来到 “Select binary image” 界面,此处可以选择固件来进行烧录,具体配置如下图1.2.2.11所示:
选择的第一个文件为设备相关固件,第二个文件为配套的启动固件。
弹出的信息如下所示,就表示烧录成功啦,如图1.2.2.12:
二、无线抓包
2.1 烧录抓包固件
取得EM3585的抓包固件如下图2.1.1所示,按照上述方法烧录固件,之后就可以开始抓包啦。
2.2 配置相关参数
右键点击ISA3,然后在出现的下拉菜单中点击 “Adapter properties...” ,如下图2.2.1所示:
弹窗如下图2.2.2所示,“Radio application” 处选择 “Sniffer”:
右键点击ISA3,然后在出现的下拉菜单中点击 “Start capture” 或 “Start capture with options...” 就可以开始抓包啦。“Start capture with options...” 可以在有多个协调器的环境中使用,设置PAN ID,监听指定PAN ID协调器的数据。如下图2.2.3、图2.2.4所示:
对于ZigBee无线抓包而言,是需要设置信道的;右键点击ISA3,然后在出现的下拉菜单中点击 “Sniffer channel...” ,如下图2.2.5所示:
在弹窗中,选择信道,如下图2.2.6所示:
执行设备入网操作,可在 “Transactions” 和 “Events” 窗口,看到所捕获的zigbee数据包,如下图2.2.7所示:
2.3 保存抓包文件
由于ZigBee的数据传输全都采用了AES加密,所以即使成功抓到了数据包,也不一定能成功解密出来;只有知道了秘钥才能解密出具体的数据包内容。简单来说就是 “抓包必须要从ZigBee设备入网开始抓起,这样才能获取秘钥,才能解密数据包”。如果要将数据包保存到本地文件中,也必须要保存秘钥,不然将抓包文件发给别人的时候,别人是无法解密的。
在Ember Desktop中,点击 “File->Preferences->Network Analyzer->Decoding->Security Keys” 进入“Security Keys” 界面勾选 “Save decryption keys in ISD files” 选项,为要保存的抓包文件添加解密秘钥,如下图2.3.1所示:
一旦添加了解密秘钥后,直接按照普通方式保存抓包文件即可;这样第三方便可随意查阅啦,如下图2.3.2所示:
三、常见问题
3.1 安装阶段
3.1.1 ‘em3xx_isa’不是内部或外部命令,也不是可运行的程序或批处理文件。
用命令行修改ISA3参数配置的时候,如果出现 “‘em3xx_isa’不是内部或外部命令,也不是可运行的程序或批处理文件。” 这样的错误,如下图3.1.1所示:
解决方法:
- 确认有没有安装 “ISA3_Utilities_1.2b18.exe” 软件。
3.1.2 Error: Failed to connect to InSight Adapter
用命令行修改ISA3参数配置的时候,如果出现 “Error: Failed to connect to InSight Adapter” 这样的错误,如下图3.1.2所示:
解决方法:
- 确认ISA3是否上电,有没有和电脑在同一路由器下。
- 确认J-link驱动有没有安装。
3.1.3 Error: expected “ip [static|dhcp|read]”
在用命令行修改参数配置的时候,如果出现 “Error: expected “ip [static|dhcp|read]”” 这样的错误,如下图3.1.3所示:
解决方法:
- 输入指令中有中文字符,主要注意标点符号。
3.2 抓包阶段
3.2.1 Node EUI: 0xFFFFFFFFFFFFFFFF
当连接好模组后,如果发现Node EUI为0xFFFFFFFFFFFFFFFF,如下图3.2.1所示:
解决方法:
- EM3585芯片和ISA3线路接触不良。
- 如果换了多个模组仍出现该问题,请检查ISA3的开关是否在INT位置。
- 抓不到包时,可以换个模组试试,有可能是管脚接触不良导致。
- 模块烧录正常,但不能保证抓包正常,使用的管脚不同。