?這周接手了另一個(gè)同事用合宙Air780EP模塊沒(méi)做完的項(xiàng)目,剛上手之后就發(fā)現(xiàn)了一個(gè)問(wèn)題:
在通過(guò)AT+CSCLK=2進(jìn)入休眠之后,連接MQTT服務(wù)器,從服務(wù)器端下行消息到模塊喚醒,并且觸發(fā)RI腳的下降沿,以此喚醒MCU——但實(shí)際卻喚醒不了。
問(wèn)題排查及解決方式記錄如下,希望對(duì)遇到類似情況的朋友有所幫助。
一、通過(guò)自測(cè)縮小問(wèn)題范圍
在做過(guò)以下測(cè)試后,問(wèn)題基本上鎖定了。
1. 進(jìn)入休眠后,MQTT鏈接是否有斷開:
使用AT+MQTTSTATU指令查看MQTT鏈接狀態(tài),
返回結(jié)果是:+MQTTSTATU :1
說(shuō)明鏈接是存在的,沒(méi)有斷開。
2. 服務(wù)端下行的數(shù)據(jù)模塊是否有收到:
檢測(cè)main_uart串口的URC上報(bào),發(fā)現(xiàn)在下發(fā)消息的時(shí)候,模塊有上報(bào):
+MSUB: "/topic",10 byte,1234567890
說(shuō)明數(shù)據(jù)可以正常收到。
3. 用邏輯分析儀或者示波器檢測(cè)下RI腳波形:
發(fā)現(xiàn)在進(jìn)入休眠后,和服務(wù)器下發(fā)消息,模塊收到URC整個(gè)流程中——RI腳都沒(méi)有出現(xiàn)下拉的波形,說(shuō)明RI腳的功能有問(wèn)題?
從Air780EP官網(wǎng)資料的硬件設(shè)計(jì)手冊(cè),找下RI腳的位置有沒(méi)有量錯(cuò),嗯~ 是20腳沒(méi)有錯(cuò)。
合宙Air780EP最新資料:
https://www.air780ep.cn/
?
二、找到了解決方法
通過(guò)合宙資料摸索了一小下,看到AT手冊(cè)第58頁(yè)有一條指令:
設(shè)置RI指示功能:AT+CFGRI
這條指令的功能,就是打開在Air780EP模塊接收到TCP/UDP/FTP/HTTP/MQTT的URC時(shí),就會(huì)產(chǎn)生RI腳120ms的低脈沖,也就是給予MCU的下降沿。
AT指令手冊(cè):
https://doc.openluat.com/article/4985
?
休眠流程中,進(jìn)入休眠之前加一條這個(gè)AT+CFGRI=1的指令后,重新嘗試了下,果然可以了。
在收到MQTT下行數(shù)據(jù)時(shí),RI腳正確產(chǎn)生一個(gè)下降沿,喚醒了主控,大致業(yè)務(wù)邏輯沒(méi)問(wèn)題了!
**三、總結(jié)及建議 **
要想Air780EP模塊可以通過(guò)網(wǎng)絡(luò)服務(wù)端下行數(shù)據(jù),以此來(lái)喚醒模塊以及喚醒主控,節(jié)省功耗的話:
需要接入模塊的RI腳,并且在流程中 (最好是開機(jī)后就配置,作為初始化的流程)加入一條 AT+CFGRI=1 指令才可以。
并且通過(guò)實(shí)測(cè),不管進(jìn)入任何休眠模式:
例如:
AT+CSCLK=1
AT+POWERMODE="PSM+"
都需要配置AT+CFGRI=1這個(gè)指令后,才可以觸發(fā)RI中斷。看樣子是和休眠模式?jīng)]有關(guān)系的。
審核編輯 黃宇
?
-
4G
+關(guān)注
關(guān)注
15文章
5572瀏覽量
120740 -
模組
+關(guān)注
關(guān)注
6文章
1614瀏覽量
31181 -
MQTT
+關(guān)注
關(guān)注
5文章
672瀏覽量
23514
發(fā)布評(píng)論請(qǐng)先 登錄
4G 模組 HTTP 網(wǎng)絡(luò)協(xié)議應(yīng)用 白嫖版!

干貨分享 | TSMaster—LIN 喚醒與休眠機(jī)制

4G模組無(wú)法正常聯(lián)網(wǎng)?一定要記得考慮SIM卡的問(wèn)題!

評(píng)論