?今天我們學(xué)習(xí)合宙模組日志總體介紹,以下進入正文。
一、本文討論的邊界
本文是對合宙 4G 模組, 以及 4G+GNSS 模組的日志功能的總體介紹。通過日志,可以對研發(fā)過程中,以及模組運行過程中的各種故障進行分析。
二、4G模組日志的幾種類型界
4G 模組的日志有兩種類型: 業(yè)務(wù)日志和底層日志。業(yè)務(wù)日志是指在用模組的客戶代碼輸出的日志,包括 AT指令交互的日志和二次開發(fā)的業(yè)務(wù)代碼輸出的日志。
2.1 AT 交互的業(yè)務(wù)日志
把模組作為 AT 指令的方式做開發(fā)的時候, 可以通過串口工具,抓取 AT 指令的日志。也可以由設(shè)備的主控 CPU,輸出和模組的 AT 指令的交互日志。AT 交互的日志,用普通的串口工具,比如 sscom,LLcom,都可以使用。
2.2 二次開發(fā)的業(yè)務(wù)日志
在用 LuatOS 二次開發(fā)的代碼里面, 用 print()函數(shù), 就可以輸出任何的信息到 Luatools。通過 Luatools 的日志查看界面, 就可以非常方便的查看, 保存,分析業(yè)務(wù)日志。使用 Luatools 查看日志的詳細資料,可以查看:
2.3 底層日志
當遇到疑難問題, 用業(yè)務(wù)日志無法定位問題原因的時候, 就需要抓取底層日志,交給合宙的技術(shù)同事分析問題。
無論是 AT 指令方式的開發(fā),還是在模組內(nèi)部做二次開發(fā),都可以抓取底層日志。
三、怎么抓底層日志
本章的內(nèi)容,適合合宙 780 系列模組,700系列模組,不適合 724和795系列模組。底層日志工具,叫做 EPAT 工具。
3.1 下載底層日志工具
點擊如下鏈接,直接下載底層日志工具EPAT:合宙模組底層日志抓取和分析工具 。
3.2 日志輸出端口
如徹底講清楚USB驅(qū)動問題這篇教程所說,USB的虛擬端口中,有一個底層日志的輸出端口??梢詮脑O(shè)備管理器的端口屬性中根據(jù)“設(shè)備實例路徑”中的值是否是0004,來判斷底層日志的輸出端口。
正常情況下,要用USB物理接口抓取日志,因為USB虛擬出來的端口的輸出速率很高,基本不會出現(xiàn)丟日志的現(xiàn)象。
而串口抓底層日志,很容易丟失日志,導(dǎo)致抓不全日志,給問題分析帶來很大的障礙。
3.3 EPAT工具中圖標功能
- 1)重啟模塊
- 2)勾選選擇的端口從其他串口調(diào)試工具嘗試打開是否可以正常輸出數(shù)據(jù)(亂碼)
- 3)如果使用AT固件,默認DBG_UART端口輸出是3M波特率,可以通過AT+ECPCFG=logBaudrate,6000000 指令修改,波特率設(shè)置請不要低于3M,不然很容易出現(xiàn)丟日志、抓的不全。
- ?
打開日志文件,需要在打開EPAT工具時跳出的"Select Data Source"選擇框中選擇"Select From Local Files",才能點擊使用功能,可以打開ZIP壓縮包和Bin格式的日志文件。 - ?
保存日志,會將已抓取到的日志導(dǎo)出,以ZIP壓縮包的方式保存,方便提供給技術(shù)同事或研發(fā)同事分析。 - ?
更新解析日志的數(shù)據(jù)庫文件,在抓日志的時候,可以不匹配,等在使用EPAT打開日志文件的時候再做匹配解析。 - ?
篩選查看日志,如果不了解,用不到這個功能 - ?
啟動開始抓日志,如果沒有日志出來,請檢查日志端口有沒有選擇正確,有沒有勾選打開;確認端口正確,也以勾選,還是沒有日志出來,請嘗試: - ?
暫停日志 - ?
停止抓日志,點擊完停止后,就可以選擇保存日志 發(fā)給技術(shù)/研發(fā)同事分析了。 - ?
清除日志,建議每次正式準備抓日志前清理一下日志,這樣保存出來的日志給技術(shù)同事分析會方便很多。 - ?
搜索日志內(nèi)容 - ?
設(shè)備端口配置界面
3.4 EPAT底層日志抓取方法
① 打開EPAT工具,抓日志選擇第一項“Serial Device”
?
② 選擇日志端口,準備抓取log
?
- (1)打開設(shè)備端口配置界面
- (2)關(guān)閉或打開端口,如果端口被占用,工具也不會提示"端口已被占用",所以如果發(fā)現(xiàn)端口選擇正確,并且日志還是沒有出來的話,可以確認下日志端口是否有被占用,而導(dǎo)致EPAT沒有打開日志端口。
- (3)日志端口可以同時打開兩個,一個用模塊的DBG_UART端口打開,另一個使用USB的日志輸出端口,AT固件需要設(shè)置AT+ECPCFG=logPortSel,2(重啟生效)才能設(shè)置日志端口可以從USB和DBG_UART兩個端口輸出。好處是在進入休眠的時候,待USB斷開,就會用DBG串口輸出日志,等模塊喚醒時就會重新虛擬出來USB端口,就會從USB的日志口抓取日志。這樣抓取休眠中的程序日志 也基本上不會出現(xiàn)日志丟失的情況。
- (4)打開日志輸出端口和修改波特率的界面
- (5)選擇日志輸出端口
- (6)USB的虛擬日志端口不用特意修改波特率;
DBG_UART端口默認為3M波特率輸出,請不要隨意更改,如果技術(shù)/研發(fā)同事發(fā)現(xiàn)日志丟失嚴重,可手動寫入修改為6000000(6M)波特率;
③ 抓取底層日志
?
如果輸出的日志有亂碼,先確認波特率是否有改動,是不是默認3M波特率抓取的,或確認串口線是否支持3M波特率輸出。然后再點擊上圖紅框中的圖標匹配數(shù)據(jù)庫comdb解析文件。
④ 獲取數(shù)據(jù)庫db文件
抓日志時,可以不做數(shù)據(jù)庫匹配,只需要把文件發(fā)給技術(shù)同事就可以了;但如果技術(shù)同事建議本地先匹配數(shù)據(jù)庫文件后再抓取,那優(yōu)先保證日志可以正常輸出出來,然后再匹配數(shù)據(jù)庫文件。
- LuatOS開發(fā)的db文件獲取
在底層core .soc后綴的固件中,通過解壓縮工具打開該文件,可以看到里面會有一個comdb.txt文件,在EPAT選擇更新數(shù)據(jù)庫文件的時候 選擇該文件,隨后點擊"UPDATE",如果變?yōu)榫G燈 代表匹配成功;如果是還是紅燈表示 選擇的db文件和現(xiàn)在模塊中燒錄的固件不匹配;
?
- AT開發(fā)的db文件獲取
AT開發(fā)方式只能從技術(shù)同事中獲取,一般AT的底層問題,不需要客戶去看,所以一般不需要匹配數(shù)據(jù)庫文件,抓取成功日志將zip日志壓縮包和模塊使用的AT固件完整版本號(發(fā)ATI 指令查看版本號)發(fā)給技術(shù)同事,分析時自行匹配。
數(shù)據(jù)庫文件更新成功后, 燈會變成綠色
⑤ 保存日志
?
- 導(dǎo)出日志前,先停止打印 - 點擊保存日志的圖標
保存的日志文件不要以相同名稱文件覆蓋的形式保存,否則日志會保存失敗,實際內(nèi)容不會覆蓋。
⑥ 將保存出來的ZIP日志壓縮包發(fā)給技術(shù)分析。
?審核編輯 黃宇
-
模組
+關(guān)注
關(guān)注
6文章
1492瀏覽量
30383 -
日志
+關(guān)注
關(guān)注
0文章
138瀏覽量
10642
發(fā)布評論請先 登錄
相關(guān)推薦
評論