BG95-M2 LTE-M / eMTC no UDP reception

I am experiencing problems with BG95-M2 module when trying to use LTE-M(eMTC) network connection to receive UDP data:

It successfully connects to LTE-M and data is sent out to a test server. The server responds with data, but the module never receives it. Also ~16 seconds after successful connection the module reports +CEREG: 2, even if PSM and EDRX are disabled. After 4 minutes, the transmit fails completely.

When the module uses NBIoT instead of LTE-M, everything works fine!

Please see the logs below, the first number is the time since startup in milliseconds.

10153	command: AT+CGMM
10154	message: AT+CGMM
10155	message: BG95-M2
10156	message: OK
10156	command: ATE0
10157	message: ATE0
10158	message: OK
10159	command: AT+QSCLK=0
10162	message: OK
10164	command: AT+QURCCFG="urcport","uart1"
10166	message: OK
10167	command: AT+CPIN?
10169	message: +CPIN: READY
10169	message: OK
10170	command: AT+CIMI
10172	message: ----<cimi>----
10173	message: OK
10174	command: AT+CREG=0
10175	message: OK
10176	command: AT+CEREG=2
10177	message: OK
10178	command: AT+COPS=0
10186	message: OK
10187	command: AT+CPSMS=0
10189	message: OK
10191	command: AT+CEDRXS=0,5
10192	message: OK
10195	command: AT+QICFG="dataformat",1,1
10196	message: OK
10197	command: AT+CEREG?
10201	message: +CEREG: 2,5,"361A","1BE4E02",8
10201	message: OK
10202	command: AT+CREG?
10204	message: +CREG: 0,5
10204	message: OK
10205	command: AT+QNWINFO
10210	message: +QNWINFO: "eMTC","26201","LTE BAND 20",6400
10211	message: OK
10212	command: AT+QENG="servingcell"
10219	message: +QENG: "servingcell","NOCONN","eMTC","FDD",,,,,,,,,,,,,,
10219	message: OK
10223	command: AT+QICSGP=1,1,"iot.1nce.net","","",1
10224	message: OK
10225	command: AT+CEREG?
10229	message: +CEREG: 2,5,"361A","1BE4E02",8
10229	message: OK
10230	command: AT+CREG?
10232	message: +CREG: 0,5
10232	message: OK
10233	command: AT+QNWINFO
10238	message: +QNWINFO: "eMTC","26201","LTE BAND 20",6400
10239	message: OK
10241	command: AT+QENG="servingcell"
10245	message: +QENG: "servingcell","SEARCH"
10245	message: OK
10246	command: AT+QIACT=1
10248	message: OK
10249	command: AT+QIACT?
10253	message: +QIACT: 1,1,1,"10.39.238.2"
10253	message: OK
10257	command: AT+QIOPEN=1,1,"UDP","10.66.33.117",5683,0,1
10258	message: OK
10263	command: AT+QISENDEX=1,<12 bytes of data>
10263	message: +QIOPEN: 1,0
10265	message: SEND OK
15267	command: AT+QISENDEX=1,<12 bytes of data>
15269	message: SEND OK
20273	command: AT+QISENDEX=1,<12 bytes of data>
20275	message: SEND OK
25279	command: AT+QISENDEX=1,<12 bytes of data>
25281	message: SEND OK
26851	message: +CEREG: 2
30285	command: AT+QISENDEX=1,<12 bytes of data>
30287	message: SEND OK
35289	command: AT+QISENDEX=1,<12 bytes of data>
35291	message: SEND OK
40293	command: AT+QISENDEX=1,<12 bytes of data>
40295	message: SEND OK
45297	command: AT+QISENDEX=1,<12 bytes of data>
45299	message: SEND OK
50301	command: AT+QISENDEX=1,<12 bytes of data>
50303	message: SEND OK
55305	command: AT+QISENDEX=1,<12 bytes of data>
55307	message: SEND OK
60309	command: AT+QISENDEX=1,<12 bytes of data>
60311	message: SEND OK
~~~~~~~~~~~~~~~~~~~~~~~~~
235911	message: SEND OK
240913	command: AT+QISENDEX=1,<12 bytes of data>
240915	message: SEND OK
245917	command: AT+QISENDEX=1,<12 bytes of data>
245919	message: SEND OK
250921	command: AT+QISENDEX=1,<12 bytes of data>
250923	message: SEND OK
253211	message: +CEREG: 3
253218	message: +QIURC: "pdpdeact",1
255211	message: +CEREG: 5,"E2A7","1BE4E0E",9
255925	command: AT+QISENDEX=1,<12 bytes of data>
255927	message: ERROR
260929	command: AT+QISENDEX=1,<12 bytes of data>
260931	message: ERROR
265933	command: AT+QISENDEX=1,<12 bytes of data>
265935	message: ERROR
270937	command: AT+QISENDEX=1,<12 bytes of data>
270939	message: ERROR
275941	command: AT+QISENDEX=1,<12 bytes of data>
275943	message: ERROR
280945	command: AT+QISENDEX=1,<12 bytes of data>
280947	message: ERROR
285949	command: AT+QISENDEX=1,<12 bytes of data>
285951	message: ERROR
290953	command: AT+QISENDEX=1,<12 bytes of data>
290955	message: ERROR

This is a screenshot of wireshark on the test server, showing that all incoming messages are answered with a message.

Also, the module often does not connect to LTE-M at all, but instead only connects to NBIoT. The issue is visible in the logs below. It is also shown there, that with NBIoT connection, UDP messages are received correctly:

10704	command: AT+CGMM
10706	message: AT+CGMM
10706	message: BG95-M2
10707	message: OK
10707	command: ATE0
10709	message: ATE0
10709	message: OK
10710	command: AT+QSCLK=0
10714	message: OK
10717	command: AT+QURCCFG="urcport","uart1"
10718	message: OK
10719	command: AT+CPIN?
10721	message: +CPIN: READY
10721	message: OK
10722	command: AT+CIMI
10725	message: 901405102549909
10725	message: OK
10726	command: AT+CREG=0
10727	message: OK
10728	command: AT+CEREG=2
10729	message: OK
10730	command: AT+COPS=0
10742	message: OK
10743	command: AT+CPSMS=0
10745	message: OK
10748	command: AT+CEDRXS=0,5
10750	message: OK
10753	command: AT+QICFG="dataformat",1,1
10778	message: OK
10779	command: AT+CEREG?
10783	message: +CEREG: 2,2
10783	message: OK
10784	command: AT+CREG?
10787	message: +CREG: 0,2
10787	message: OK
10788	command: AT+QNWINFO
10792	message: +QNWINFO: No Service
10793	message: OK
10795	command: AT+QENG="servingcell"
10801	message: +QENG: "servingcell","SEARCH"
10802	message: OK
70805	command: AT+QICSGP=1,1,"iot.1nce.net","","",1
70808	message: OK
70809	command: AT+CEREG?
70811	message: +CEREG: 2,2
70812	message: OK
70812	command: AT+CREG?
70814	message: +CREG: 0,2
70815	message: OK
70816	command: AT+QNWINFO
70819	message: +QNWINFO: No Service
70819	message: OK
70821	command: AT+QENG="servingcell"
70825	message: +QENG: "servingcell","SEARCH"
70825	message: OK
70825   DEBUG:  No network connection after 60s. Cycling functionality and trying again.
70826	command: AT+CFUN=0
71076	message: OK
71077	message: +CEREG: 0
72077	command: AT+CFUN=1
72408	message: OK
72830	message: +CPIN: READY
72834	message: +QUSIM: 1
72859	message: +CEREG: 2
72966	message: +QIND: SMS DONE
73078	command: AT+CEREG?
73094	message: +CEREG: 2,2
73094	message: OK
73095	command: AT+QNWINFO
73100	message: +QNWINFO: No Service
73101	message: OK
73103	command: AT+QENG="servingcell"
73107	message: +QENG: "servingcell","SEARCH"
73107	message: OK
84085	message: +CEREG: 5,"E2A7","1BE4E0E",9
84086	command: AT+CEREG?
84090	message: +CEREG: 2,5,"E2A7","1BE4E0E",9
84091	message: OK
84091	command: AT+CREG?
84093	message: +CREG: 0,3
84094	message: OK
84095	command: AT+QNWINFO
84100	message: +QNWINFO: "NBIoT","26201","LTE BAND 8",3739
84100	message: OK
84102	command: AT+QENG="servingcell"
84112	message: +QENG: "servingcell","CONNECT","NBIoT","FDD",262,01,1BE4E0E,367,3739,8,0,0,E2A7,-75,-11,-63,17,
84113	message: OK
84114	command: AT+QIACT=1
84115	message: OK
84117	command: AT+QIACT?
84121	message: +QIACT: 1,1,1,"10.39.238.2"
84121	message: OK
84125	command: AT+QIOPEN=1,1,"UDP","10.66.33.117",5683,0,1
84127	message: OK
84130	command: AT+QISENDEX=1,<12 bytes of data>
84130	message: +QIOPEN: 1,0
84132	message: SEND OK
84343	message: +QIURC: "recv",1,4
84344	message: 70006C6C
89134	command: AT+QISENDEX=1,<12 bytes of data>
89136	message: SEND OK
89497	message: +QIURC: "recv",1,4
89498	message: 70006C6C
94140	command: AT+QISENDEX=1,<12 bytes of data>
94142	message: SEND OK
94617	message: +QIURC: "recv",1,4
94618	message: 70006C6C

I think this issue may be caused by the limitation of the SIM card or APN

Do you mean limitation on connection? This might be true.

However, this should not impact the fact that I cannot receive any messages when connected via LTE-M?

You can try QPING

AT+QPING=1,“8.8.8.8”

Ping works, but UDP still has errors

10572   command: AT+CGMM
10573   message: AT+CGMM
10574   message: BG95-M2
10574   message: OK
10575   command: ATE0
10576   message: ATE0
10576   message: OK
10577   command: AT+QSCLK=0
10581   message: OK
10583   command: AT+QICFG="dataformat",1,1
10585   message: OK
10586   command: AT+QICFG="viewmode",1
10588   message: OK
10590   command: AT+QICFG="recvind",1
10591   message: OK
10728   command: AT+QCFG="iotopmode",0,1
10730    message: OK
14731    command: AT+QURCCFG="urcport","uart1"
14732    message: OK
14734    command: AT+CPIN?
14736    message: +CPIN: READY
14737    message: OK
14737    command: AT+CIMI
14740    message: <cimi>
14740    message: OK
14741    command: AT+CREG=0
14742    message: OK
14743    command: AT+CEREG=2
14744    message: OK
14745    command: AT+COPS=0
14754    message: OK
14755    command: AT+CPSMS=0
14757    message: OK
14759    command: AT+CEDRXS=0,5
14760    message: OK
14764    command: AT+QICSGP=1,1,"iot.1nce.net","","",1
14765    message: OK
14766    command: AT+CEREG?
14769    message: +CEREG: 2,5,"361A","1BE4E02",8
14770    message: OK
14771    command: AT+CREG?
14773    message: +CREG: 0,5
14773    message: OK
14774    command: AT+QNWINFO
14779    message: +QNWINFO: "eMTC","26201","LTE BAND 20",6400
14779    message: OK
14781    command: AT+QENG="servingcell"
14785    message: +QENG: "servingcell","SEARCH"
14786    message: OK
14787    command: AT+CEREG?
14790    message: +CEREG: 2,5,"361A","1BE4E02",8
14791    message: OK
14791    command: AT+CREG?
14793    message: +CREG: 0,5
14794    message: OK
14795    command: AT+QNWINFO
14799    message: +QNWINFO: "eMTC","26201","LTE BAND 20",6400
14800    message: OK
14802    command: AT+QENG="servingcell"
14806    message: +QENG: "servingcell","SEARCH"
14806    message: OK
14807    command: AT+QIACT=1
14808    message: OK
14810    command: AT+QIACT?
14814    message: +QIACT: 1,1,1,"10.39.238.2"
14814    message: OK
14818    command: AT+QIOPEN=1,1,"UDP","10.66.33.117",5683,0,1
14819    message: OK
14821    message: +QIOPEN: 1,0
17322    command: AT+QISENDEX=1,<12 bytes of data>
17324    message: SEND OK
17326    command: AT+QPING=1,"8.8.8.8"
17327    message: OK
21348    message: +QPING: 569
25351    message: +QPING: 569
26877    message: +CEREG: 2
27331    command: AT+QISENDEX=1,<12 bytes of data>
27333    message: SEND OK
29354    message: +QPING: 569
33357    message: +QPING: 569
33358    message: +QPING: 569
37335    command: AT+QISENDEX=1,<12 bytes of data>
37337    message: SEND OK
37339    command: AT+QPING=1,"8.8.8.8"
37340    message: OK
41356    message: +QPING: 569
45359    message: +QPING: 569
47344    command: AT+QISENDEX=1,<12 bytes of data>
47346    message: SEND OK
47348    command: AT+QPING=1,"8.8.8.8"
47350    message: ERROR
47350    LTE-M modem reports error
49362    message: +QPING: 569
53365    message: +QPING: 569
53367    message: +QPING: 569
53829    message: +CEREG: 3
53840    message: +QIURC: "pdpdeact",1
55861    message: +CEREG: 5,"B0F8","C4B302",8
57354    command: AT+QISENDEX=1,<12 bytes of data>
57356    message: ERROR
67359    command: AT+QISENDEX=1,<12 bytes of data>
67360    message: ERROR
67363    command: AT+QPING=1,"8.8.8.8"
67364    message: OK
67534    message: +QPING: 0,"8.8.8.8",32,153,255
67619    message: +QPING: 0,"8.8.8.8",32,84,255
67694    message: +QPING: 0,"8.8.8.8",32,74,255
67774    message: +QPING: 0,"8.8.8.8",32,78,255
67777    message: +QPING: 0,4,4,0,74,153,97
77367    command: AT+QISENDEX=1,<12 bytes of data>
77368    message: ERROR
77371    command: AT+QPING=1,"8.8.8.8"
77372    message: OK
77788    message: +QPING: 0,"8.8.8.8",32,400,255
77857    message: +QPING: 0,"8.8.8.8",32,68,255
77936    message: +QPING: 0,"8.8.8.8",32,78,255
78014    message: +QPING: 0,"8.8.8.8",32,76,255
78016    message: +QPING: 0,4,4,0,68,400,155
87375    command: AT+QISENDEX=1,<12 bytes of data>
87376    message: ERROR
87379    command: AT+QPING=1,"8.8.8.8"
87380    message: OK
87534    message: +QPING: 0,"8.8.8.8",32,138,255
87615    message: +QPING: 0,"8.8.8.8",32,79,255
87695    message: +QPING: 0,"8.8.8.8",32,79,255
87775    message: +QPING: 0,"8.8.8.8",32,78,255
87777    message: +QPING: 0,4,4,0,78,138,93
97383    command: AT+QISENDEX=1,<12 bytes of data>
97384    message: ERROR
97387    command: AT+QPING=1,"8.8.8.8"
97388    message: OK
97534    message: +QPING: 0,"8.8.8.8",32,130,255
97615    message: +QPING: 0,"8.8.8.8",32,79,255
97808    message: +QPING: 0,"8.8.8.8",32,191,255
97934    message: +QPING: 0,"8.8.8.8",32,125,255
97937    message: +QPING: 0,4,4,0,79,191,131

I recommend that you use this open UDP server for cross-validation

I was able to monitor the following behavior:
After successful connection to PS network (timestamp 18170) the module disconnects from the network after ~8s (timestamp 26898). After another ~25s registration is denied (timestamp 50314), after another 2s it is registered successfully (timestamp 52347). Then sending and receiving data works without problems!

Any idea what causes this strange behaviour or how to solve it?

9816	command: AT+CGMM
9818	message: AT+CGMM
9818	message: BG95-M2
9819	message: OK
9819	LTE-M modem started successfully
9819	command: ATE0
9821	message: ATE0
9821	message: OK
9822	command: AT+QSCLK=0
9826	message: OK
9828	command: AT+QICFG="dataformat",1,1
9829	message: OK
9831	command: AT+QICFG="viewmode",1
9832	message: OK
9834	command: AT+QICFG="recvind",1
9835	message: OK
9972    command: AT+QCFG="iotopmode",0,1
9974    message: OK
14115   message: OK
18112   command: AT+QURCCFG="urcport","uart1"
18113   message: OK
18115   command: AT+CPIN?
18117   message: +CPIN: READY
18118   message: OK
18118   command: AT+CIMI
18121   message: <cimi>
18121   message: OK
18122   command: AT+CREG=0
18123   message: OK
18124   command: AT+CEREG=2
18126   message: OK
18126   command: AT+COPS=0
18134   message: OK
18135   command: AT+CPSMS=0
18137   message: OK
18139   command: AT+CEDRXS=0,5
18140   message: OK
18144   command: AT+QICSGP=1,1,"iot.1nce.net","","",1
18145   message: OK
18146   command: AT+CEREG?
18149   message: +CEREG: 2,5,"361A","1BE4E02",8
18150   message: OK
18151   command: AT+CREG?
18153   message: +CREG: 0,5
18153   message: OK
18154   command: AT+QNWINFO
18159   message: +QNWINFO: "eMTC","26201","LTE BAND 20",6400
18159   message: OK
18161   command: AT+QENG="servingcell"
18165   message: +QENG: "servingcell","SEARCH"
18166   message: OK
18167   command: AT+CEREG?
18170   message: +CEREG: 2,5,"361A","1BE4E02",8
18171   message: OK
18171   command: AT+CREG?
18173   message: +CREG: 0,5
18174   message: OK
18175   command: AT+QNWINFO
18180   message: +QNWINFO: "eMTC","26201","LTE BAND 20",6400
18180   message: OK
18182   command: AT+QENG="servingcell"
18186   message: +QENG: "servingcell","SEARCH"
18186   message: OK
26898   message: +CEREG: 2
50314   message: +CEREG: 3
52347   message: +CEREG: 5,"B0F8","C4B302",8
78186   command: AT+QIACT=1
78188   message: OK
78192   command: AT+QIOPEN=1,1,"UDP","10.66.33.117",5683,0,1
78193   message: OK
78197   command: AT+QISENDEX=1,<12 bytes of data>
78197   message: +QIOPEN: 1,0
78199   message: SEND OK
78842   message: +QIURC: "recv",1,4,70006C6C
88203   command: AT+QISENDEX=1,<12 bytes of data>
88205   message: SEND OK
88645   message: +QIURC: "recv",1,4,70006C6C

18135   command: AT+CPSMS=0
18137   message: OK
18139   command: AT+CEDRXS=0,5
18140   message: OK

PSM and eDRX are both disabled

Based on my experience, it may be caused by the PLMN search of the roaming card triggering module, you can use local SIM card cross-verification

I will try later. What exactly do you mean? I would like a solution that also works with roaming cards…

You need to provide debug log for detailed analysis

Could you provide information on how to obtain debug logs for BG95-M2?

I have sent it to you,pls check

Please see the attached log. I used Config file default.cfg. I hope everything is correct.
The exact behavior is not reproducable, now the module is denied registration first, then registration is possible using roaming. Maybe you can still get something useful from the logs.
20240731084819598.zip (7.0 MB)