客户在使用Air720系列4G模块开发调试过程中,有时会遇到blf运行异常导致的重启问题,例如下图表示的一个例子
1. EE LOG: PC: 0x6767cc4
2. EE LOG: SP: 0x72adb80
3. EE LOG: MSA Disable Sleep
4. EE LOG: Wait for DSP L1 Memory dump...
5. EE LOG: first entry!
6. EE LOG: Software version: NZ_NZ_CP_2.178.000X
7. EE LOG: Compilation time: Jun 13 2019 09:17:56
8. Ep0: TX 0, RX 0
9. AT: TX 0, RX 0, CTRL 0
10. DIAG: TX 0, RX 0, CTRL 0
11. RNDIS: TX 0, RX 1, CTRL 0
12. MassStorage: TX 0, RX 0
13. EE LOG: Cancel RNDIS transfer
14. EE LOG: Prepare for Sd dump
15. EE LOG: eeSDDumpPrepare Enter
16. EE LOG: eeSDDumpPrepare Exit
17. EE LOG: Prepare for diag transmit
18. EE LOG: finalAction:5, eeFatalActionExt:602453d, eeMode:3f
19. EE LOG: IPCIIR 0x0, APBC_IPC_CLK 0x4, AIRQ_IPC_ENABLE 0x3d10
如果客户根据日志信息无法解决异常时,可能需要dump异常现场数据给合宙技术支持人员分析,本文章介绍如何dump现场数据
二、代码准备工作
合宙官方对外正式发布的固件,无论是AT版本还是Lua版本, 默认配置为自动重启模式,意味着一旦出现异常,会自动重启
在自动重启模式下,用户无法dump现场数据,所以首先要做的是:把固件配置为死机模式,配置为死机模式后,一旦再出现异常,不再自动重启,用户就有充足的时间来dump现场信息。
那么如何配置为死机模式呢,有如下两种方法:
(1)、AT版本和Lua版本有稍许差别
AT版本:MCU通过4G模块的AT口发送AT*EXASSERT=1命令
Lua版本:在main.lua的sys.init(...)前增加一行代码ril.request("AT*EXASSERT=1")
(2)、PC上通过串口工具向4G模块USB口映射出的ASR
Modem Device AT口发送AT*EXASSERT=1命令
注意:
A、无论使用何种方法,每次开机(无论是正常开机还是异常开机)都要重新配置一次,鉴于此,推荐使用第(1)中方法,可以在程序中自动处理
B、为保证万无一失,配置后,PC上通过串口工具向4G模块USB口映射出的ASR
Modem Device AT口发送AT*EXASSERT?命令查询是否配置成功,如果返回*EXASSERT: 1表示配置成功
C、问题解决之后,所用测试模块,一定要再次配置为自动重启模式,配置方法是发送AT*EXASSERT=0命令,配置后重启,发送AT*EXASSERT?命令查询是否配置成功,如果返回*EXASSERT: 0表示配置成功;为了防止遗忘,用户在正式发布的程序中,可以在开机初始化时发送AT*EXASSERT=0命令
代码配置为死机模式之后,接下来就可以用USB口一直挂测抓日志,复现异常问题之后,会进入死机模式不再自动重启,此时电脑设备管理器中的端口如下图所示
复现死机问题后,就可以参考第三章来dump现场数据了
三、利用Tera Term工具dump现场数据
1、下载安装Tera Term工具
链接: https://pan.baidu.com/s/1ij16KQnucnjgNE3Vk9OuIw
提取码: g77v
默认安装即可
2、运行配置Tera Term工具
运行安装目录下的ttermpro.exe,会自动弹出new connection界面,如下图配置(COM58为模块死机时,映射出的ASR Modem Device端口,根据实际情况修改)
点击OK后,再点击菜单Setup--->Serial port...,如下图配置(COM58为模块死机时,映射出的ASR Modem Device端口,根据实际情况修改)
点击OK后,如下图打开receive传输窗口
接下来,会自动传输数据,如下图所示,正常情况下,传输需要6、7分钟,请耐心等待
传输结束后,会弹出如下窗口
此时,dump过程已经完成,所有dump出来的数据文件,存储在teraterm工具安装目录下,如下图所示,为所有dump出来的数据文件
将这些文件打包发给合宙技术支持人员即可
注意:打包发出去之后,将此目录下的这些文件删除,避免下次dump时,文件重名导致不必要的麻烦
如果觉得我的文章对您有用,请随意打赏。你的支持将鼓励我继续创作!