EG25-G在国内使用没有问题,但在美国使用时才刚订阅主题就会断开

国内连接:

[14:57:59.901]收←◆RDY

[14:58:01.983]收←◆AT
OK

[14:58:03.416]收←◆AT+CFUN=1
OK

[14:58:04.841]收←◆AT+COPS=0,0
OK

[14:58:06.281]收←◆AT+CEREG?
+CEREG: 0,5

OK

[14:58:07.714]收←◆AT+COPS?
+COPS: 0,0,“CHN-UNICO
[14:58:07.882]收←◆M”,7

OK

[14:58:10.313]收←◆AT+CGATT?
+CGATT: 1

OK

[14:58:12.879]收←◆AT+CGDCONT=1,“IP”,“iot.1….t”
[14:58:12.928]收←◆OK

[14:58:14.328]收←◆AT+CGACT=1,1
OK

[14:58:15.777]收←◆AT+CSQ
+CSQ: 20,99

OK

[14:58:17.195]收←◆ATE0
OK

[14:58:18.626]收←◆
860………

OK

[14:58:20.608]收←◆
+QCCID: 8……….

[14:58:20.642]收←◆
OK

[14:58:29.636]收←◆
OK

+QMTOPEN: 0,0

[14:58:31.153]收←◆
OK

[14:58:32.570]收←◆
+QMTCONN: 0,0,0

[14:58:34.669]收←◆
OK

[14:58:36.100]收←◆
+QMTSUB: 0,1,0,0,0

[14:58:38.999]收←◆

[14:58:40.149]收←◆
OK

+QMTPUBEX: 0,1,0

在美国使用时:

[2025-11-07 21:22:24.697]# RECV ASCII/16 <<<
AT+CFUN=1

OK

[2025-11-07 21:22:25.812]# RECV ASCII/18 <<<
AT+COPS=0,0

OK

[2025-11-07 21:22:26.943]# RECV ASCII/31 <<<
AT+CEREG?

+CEREG: 0,5

OK

[2025-11-07 21:22:28.115]# RECV ASCII/47 <<<
AT+COPS?

+COPS: 0,0,“AT&T 1nce.net”,7

OK

[2025-11-07 21:22:30.348]# RECV ASCII/29 <<<
AT+CGATT?

+CGATT: 1

OK

[2025-11-07 21:22:32.551]# RECV ASCII/39 <<<
AT+CGDCONT=1,“IP”,“iot.1nce.net

OK

[2025-11-07 21:22:34.755]# RECV ASCII/19 <<<
AT+CGACT=1,1

OK

[2025-11-07 21:22:35.890]# RECV ASCII/28 <<<
AT+CSQ

+CSQ: 10,99

OK

[2025-11-07 21:22:37.025]# RECV ASCII/11 <<<
ATE0

OK

[2025-11-07 21:22:38.177]# RECV ASCII/38 <<<

+QCCID: 89……….

OK

[2025-11-07 21:22:46.509]# RECV ASCII/23 <<<

OK

+QMTOPEN: 0,0

[2025-11-07 21:22:47.732]# RECV ASCII/6 <<<

OK

[2025-11-07 21:22:48.547]# RECV ASCII/19 <<<

+QMTCONN: 0,0,0

[2025-11-07 21:22:49.556]# RECV ASCII/6 <<<

OK

[2025-11-07 21:22:50.363]# RECV ASCII/22 <<<

+QMTSUB: 0,1,0,0,0

[2025-11-07 21:26:50.212]# RECV ASCII/17 <<<

+QMTPING: 0,1

[2025-11-07 21:26:51.158]# RECV ASCII/17 <<<

+QMTSTAT: 0,2

[2025-11-07 22:22:59.527]# RECV ASCII/9 <<<

ERROR

请帮忙分析有哪些原因会导致此情况?

建议和运营商确认,据我所知,有些运营商对没有认证的设备有一些限制。对没有认证的设备有专用的测试卡才能用。

使用的是1nce的物联网卡,当前是能联网的的,只不过是MQTT在连接成功后约4分钟就会断开。

收到

[2025-11-07 21:26:50.212]# RECV ASCII/17 <<<

+QMTPING: 0,1

[2025-11-07 21:26:51.158]# RECV ASCII/17 <<<

+QMTSTAT: 0,2

模块MQTT心跳时间K 120S,从MQTT后台LOG看到,连接成功后的第一次心跳是成功的,但后面就没有了

mosquitto-1 | 1763000311: New client connected from 3.xxx.xxx.xxx as ……..24

mosquitto-1 | 1763000331: Sending PUBLISH to ……..24

mosquitto-1 | 1763000450: Received PINGREQ from ……..24
mosquitto-1 | 1763000450: Sending PINGRESP to ….….24

mosquitto-1 | 1763000570: Socket error on client ……..24, disconnecting.

从上报log看到第一次是成功的,但后面就断了。此情况是反复出现的,因为模块数据的上报间隔是1个小时,每到1个小时数据上报完成后就会被断开。

当MQTT断开时,可以查看以下状态。

AT+CSQ

AT+CEREG?

AT+QENG=“SERVINGCELL”

AT+CGDCONT?

AT+CGPADDR

AT+CGACT?

另外可以抓一下QXDM log看一下模组具体产生了什么动作。

因为设备在国外调试周期长,我形容一下网络情况看看你们有没有遇到过。设备开机可以正常联网的,联网后发送数据也是正常的,发送完数据后,2分钟,第一次PINGREQ也是正常的,但到了第二次心跳时就会出现问题。因为设备数据上报间隔是1小时,当设备反复重连上述情况会反复出现,情况一样。

我试过等在后台看到设备第一次心跳后,在后台手动每30秒发送数一次数据给设备,此时连接能维持住,但不在发送数据2分钟后,连接还是会断。

可能是保活机制导致的。一段时间没有活动后,连接会断开。 断开后能重连吗?能的话,可能就是这个问题。

断开后可以重连。

请问在不设置时模块MQTT的keep alive time默认的120秒,此时TCP的keep alive也是120秒吗?

请问上面提到的保活机制有指向性吗,模块的PDP、MQTT的TCP层、还是APN(iot.1nce.net)链路。

AT+CGACT=1,1这个命令有问题吗

我们在电话卡后台看到PDP Context deleted. 是模块的PDP上下文被卡商因判定空闲而回收了吗,从而导致断网?

我们在电话卡后台看到PDP Context deleted. 是模块的PDP上下文被卡商因判定空闲而回收了吗,从而导致断网?

从这里看是网络问题,不是应用问题了。 这个需要log才能确定具体原因。 可以换个不同运营商的卡看看有没有相同的问题。

描述有误,从时间上看,PDP Context deleted更像是重连前关断的。每个New location……后二三十秒数据就会上传到后台。

SIM_1365

如果是模组端主动释放的pdp,就不是网络的问题。最好先检查一下你们的应用是否有根据网络状态进行了一些相关的操作。 如果能抓log,能比较清楚的定位到问题。

上面描述不够准确,当keepalive为120s时,是4分钟断开;当keepalive为60秒时,是2分钟断开;当keepalive为30秒时,是1分钟断开。第二次ping时就会出问题。

基本定位到问题,出现问题的模块版本都是EG25GGBR07A08M2G_30.200.30.200;

而EG25GGBR07A08M2G_01.002.01.002与EG25GGBR07A08M2G_01.001.01.001版本的没有问题。

30版本的通讯数据收发完成后4分钟收到+QMTPING: 0,1;+QMTSTAT: 0,2。网络是没有断的,可以ping百度等网页。但AT+QMTPUBEX发送不了,要重新AT+QMTOPEN,AT+QMTCONN后才可以发送数据,但4分钟后还是会断又要重复AT+QMTOPEN与AT+QMTCONN。感觉是模块的MQTT应用有问题,30.200.30.200版本会有此现象吗。

image

这个是正常的,根据返回的是状态是服务端断开了连接,所以需要重新打开连接。 要确认keepalive是否设置正常。Keepalive是用于在无数据传输的情况下保持连接存在的机制。