BG77 Message exchange between server and engine within eDRX

I am working with the BG77 engine and I try to assess the access to eDRX function with CAT-M and NB-IoT. My tests work as the following :

first step : connection to the network with CAT-M (there is several steps to achieve this milestone)

second step : connection to a server through TCP/IP (it goes with three sub-steps : create context, open socket, connection to server)

third step : send data from BG77 engine to the server

fourth step : send data from the server to BG 77 engine

The data exchanged between BG77 engine and the server work always without enabling eDRX function.

I added for the second step the configuration of the eDRX function after connection to the network.

I repeated several times the third and fourth steps to assess the eDRX function.

I noticed few issues that I would like to share it with you in order to solve them for a better experience with BG77 engine.

  1. PDP context and Socket availability duration

I repreated this connction phases to the server and I noticed that the socket is often closed after around 30 minutes with the reception of “+QIURC: “closed”,0” . The pdp context is often closed after 12 hours. Do you have an explanation ?

Connection to server

[2021-06-03_18:30:22:473]AT+QIACT=1

[2021-06-03_18:30:22:473]OK
[2021-06-03_18:30:23:474]AT+QIOPEN=1,0,“TCP”,“151.80.46.92”,8881

[2021-06-03_18:30:23:474]OK
[2021-06-03_18:30:23:584]
[2021-06-03_18:30:23:584]+QIOPEN: 0,0
[2021-06-03_18:30:25:480]AT+COPS?

[2021-06-03_18:30:25:480]+COPS: 0,0,“Orange F Orange F”,8

[2021-06-03_18:30:25:480]OK

  • *This an example for the disconnection from the server and the socket colsure after 12hours

[2021-06-04_06:30:25:857]
[2021-06-04_06:30:25:857]+QIURC: “closed”,0

[2021-06-04_06:30:25:857]+QIURC: “pdpdeact”,1

  1. Data sent from the BG77 engine to the server with eDRX

This works often well but I got few drawbacks. For instance, some data send opertions are not received by the server although the AT+SEND got a return “SEND OK”. Do you have some explanation for this case ?

[2021-06-04_10:47:46:791]AT+CEDRXS?

[2021-06-04_10:47:46:791]+CEDRXS: 0

[2021-06-04_10:47:46:791]OK
[2021-06-04_10:48:03:729]AT+CEDRXS=1,4,“0100”

[2021-06-04_10:48:03:729]OK
[2021-06-04_10:48:06:093]AT+CEDRXS?

[2021-06-04_10:48:06:093]+CEDRXS: 4,“0100”

[2021-06-04_10:48:06:093]OK
[2021-06-04_10:48:19:285]AT+CEDRXS=0

[2021-06-04_10:48:19:285]OK
[2021-06-04_10:48:26:078]AT+CEDRXS?

[2021-06-04_10:48:26:078]+CEDRXS: 0

[2021-06-04_10:48:26:078]OK
[2021-06-04_10:48:29:895]AT+CEDRXS=1,4,“0000”

[2021-06-04_10:48:29:895]OK
[2021-06-04_10:48:32:975]AT+CEDRXS?

[2021-06-04_10:48:32:975]+CEDRXS: 4,“0000”

[2021-06-04_10:48:32:975]OK
[2021-06-04_10:49:25:082]AT+QISEND=0,42

[2021-06-04_10:49:25:082]> #866349040044251,ORANGE,1.953%,2,60S,0,0,#
[2021-06-04_10:49:26:588]SEND OK
[2021-06-04_11:23:05:217]AT+QIRD=0

[2021-06-04_11:23:05:217]+QIRD: 0

[2021-06-04_11:23:05:217]OK
[2021-06-04_11:25:35:451]AT+QIRD=0

[2021-06-04_11:25:35:451]+QIRD: 0

[2021-06-04_11:25:35:451]OK
[2021-06-04_11:25:46:242]AT+QISEND=0,42

[2021-06-04_11:25:46:242]> #866349040044251,ORANGE,1.953%,2,60S,0,0,#
[2021-06-04_11:25:47:489]SEND OK
[2021-06-04_11:27:43:261]AT+QISEND=0,42

[2021-06-04_11:27:43:261]> #866349040044251,ORANGE,1.953%,2,60S,0,0,#
[2021-06-04_11:27:43:887]SEND OK
[2021-06-04_11:28:02:289]
[2021-06-04_11:28:02:289]+QIURC: “closed”,0
[2021-06-04_11:29:50:766]AT+QICLOSE=0

Do you have an explanation ?

  1. Data sent from the server to the BG77 engine

This works only for the first two messages sent from the server to the BG77 engine. The thirs data send and the next data sent are never received by the BG77.

If I received +QIURC: “closed”,0, I apply AT+QICLOSE=0 and I open a new socket with AT+QIOPEN. However, the BG77 engine did not succeeded to receive the data sent.

I added another test. I closed the Socket and I disbled the PDP context. After that, I enable a new PDP context and I opened a new Socket. Therefore, the BG77 engine succeeded to receive only the two first command sent but never the third data sent nor the next data sent. Do you have an explanation ?

best regards,
Mr Kammoun

pls see the below comments:

  1. for the +QIURC: “pdpdeact”,1 message , that means that the module lost current register, maybe it handover gsm or lost LTE register, it depend on the environment of network .pls retry the procedure of register
  2. the “send OK” means that , the data has been sent out successfuly only.
  3. it seems that The TCP channel is blocked. If NB is often used, please try GSM or CATM, or reduce the amount of data. You know, TCP is a blocking protoco

anymore issue pls send to : support@quectel.com