Nexo DATA (Modem GSM/GPRS)
 
Verificación de la comunicación HTTP


Verificación de la comunicación HTTP

Para la verificación de la comunicación HTTP con el módulo GSM, en el equipo Nexo DATA (Q4G/Q2G), se utiliza el software QNavigator (v1.5 o superior). Este software contiene una herramienta de diagnóstico* que analiza el comportamiento del módulo GSM, reportando sus parámetros de configuración y condiciones de operación, de acuerdo al proveedor de servicio (tarjeta SIM), a la ubicación de la antena y al lugar geográfico donde se encuentre instalado el equipo.

Para utilizar este paquete de software**, descargar el archivo: QNavigator (v1.5)

Descomprimirlo en una carpeta, por ejemplo C:\Nexo\QNavigator, y seguir los pasos, que aparecen en pantalla, durante el procedimiento de inicialización.
Configurar el puerto de comunicación que se utiliza en la PC, desde la opción de menú: Setting > Serial port parameter set

images/nexodata_port_cfg.png

Luego, desde el menú Home, en el lado izquierdo, seleccionar sucesivamente cada una de las funciones: Connect to module, Module information, Registration information y SIM card information. Estas funciones realizan consultas, por medio de comandos AT, que permiten visualizar los parámetros del módulo GSM, que contiene el equipo
Nexo DATA (Q4G/Q2G), como se observa en la siguiente imagen (correspondientes al módulo EC21AU):

images/nexodata_module_reg.png

Para acceder a la herramienta de diagnóstico, que permite verificar la comunicación HTTP, utilizar la opción del menú TCP/UDP.
Esta acción presenta la siguiente ventana de configuración, donde deben ingresarse los datos, de acuerdo a la información suministrada por el proveedor del servicio GSM:

images/nexodata_http_cfg.png

Una vez completados, los campos mostrados en la primera sección, con los datos correspondientes al APN (Access Point Name) del proveedor del servicio GSM, debe activarse el entorno de trabajo (
context profile) con la función: PDP ACT. Luego completando los datos en la segunda sección, para lograr la conexión TCP, se utiliza la opción Connect e inmediatamente después, se envían los comandos HTTP de prueba, mostrados en pantalla (en el cuadro Data to be sent to remote), con la función Send.
Si la comunicación con el servidor web funciona correctamente, se obtiene la respuesta mostrada en el cuadro inferior (Data received from remote): HTTP/1.1 200 OK. Los datos obtenidos, se muestran a la derecha y corresponden al contenido del archivo de prueba: nexodata.txt (debido a que el comando de prueba es: GET /soporte/gprs/download/nexodata.txt HTTP/1.1).


A modo de ejemplo, se muestran los resultados obtenidos, con el equipo Nexo DATA (Q4G):

 Comandos AT / Resultados
 Comentarios

[2019-01-21 11:10:51:425_S:] AT

[2019-01-21 11:10:51:441_R:] DSR:0 (CTS:1) RI:0 DCD:0
[2019-01-21 11:10:51:441_R:] AT

[2019-01-21 11:10:51:441_R:] OK

 Start AT SYNC: Send AT every 500ms, if receive OK, SYNC success,
 if no OK return after sending AT 10 times, SYNC fail.

[2019-01-21 11:10:51:457_S:] ATV1
[2019-01-21 11:10:51:463_R:] ATV1

[2019-01-21 11:10:51:463_R:] OK

 Use ATV1 to set the response format.

[2019-01-21 11:10:51:478_S:] ATE1
[2019-01-21 11:10:51:478_R:] ATE1

[2019-01-21 11:10:51:478_R:] OK

 Use ATE1 to enable echo mode.

[2019-01-21 11:10:51:494_S:] AT+CMEE=2
[2019-01-21 11:10:51:494_R:] AT+CMEE=2

[2019-01-21 11:10:51:494_R:] OK

 Use AT+CMEE=2 to enable result code and use verbose values.

[2019-01-21 11:10:51:510_S:] AT+IPR?
[2019-01-21 11:10:51:510_R:] AT+IPR?

[2019-01-21 11:10:51:510_R:] +IPR: 115200

[2019-01-21 11:10:51:510_R:] OK

 Get the baudrate, if the value is 0 (auto baudrate), then it will be
 set to 115200 (fixed baudrate) to assure reliable communication
 and avoid any problems caused by undetermined baudrate between
 DCE and DTE, value of IPR should be saved with AT&W.

[2019-01-21 11:10:51:525_S:] ATI
[2019-01-21 11:10:51:525_R:] ATI

[2019-01-21 11:10:51:525_R:] Quectel
[2019-01-21 11:10:51:525_R:] EC21
[2019-01-21 11:10:51:525_R:] Revision: EC21AUFAR02A04M4G

[2019-01-21 11:10:51:525_R:] OK

 Use ATI to get module information of Manufacturer ID,
 Device module and Firmware version.

[2019-01-21 11:10:51:541_S:] AT+GSN
[2019-01-21 11:10:51:541_R:] AT+GSN

[2019-01-21 11:10:51:541_R:] 861108034452093

[2019-01-21 11:10:51:541_R:] OK
[2019-01-21 11:10:51:558_S:] ATI
[2019-01-21 11:10:51:563_R:] ATI

[2019-01-21 11:10:51:563_R:] Quectel
[2019-01-21 11:10:51:563_R:] EC21
[2019-01-21 11:10:51:563_R:] Revision: EC21AUFAR02A04M4G

[2019-01-21 11:10:51:563_R:] OK

 Use AT+GSN to query the IMEI of module.

[2019-01-21 11:10:54:588_S:] AT+CPIN?
[2019-01-21 11:10:54:588_R:] AT+CPIN?

[2019-01-21 11:10:54:588_R:] +CPIN: READY

[2019-01-21 11:10:54:588_R:] OK

[2019-01-21 11:10:58:099_S:] AT+CPIN?
[2019-01-21 11:10:58:114_R:] AT+CPIN?

[2019-01-21 11:10:58:114_R:] +CPIN: READY

[2019-01-21 11:10:58:114_R:] OK

 Use AT+CPIN? to query the SIM card status :
 SIM card inserted or not, locked or unlocked.

[2019-01-21 11:10:58:130_S:] AT+CSQ
[2019-01-21 11:10:58:130_R:] AT+CSQ

[2019-01-21 11:10:58:130_R:] +CSQ: 16,99

[2019-01-21 11:10:58:130_R:] OK

 Use AT+CSQ to query current signal quality.

[2019-01-21 11:10:58:146_S:] AT+CREG?
[2019-01-21 11:10:58:146_R:] AT+CREG?

[2019-01-21 11:10:58:146_R:] +CREG: 0,1

[2019-01-21 11:10:58:146_R:] OK
[2019-01-21 11:10:58:146_S:] AT+CGREG?
[2019-01-21 11:10:58:161_R:] AT+CGREG?

[2019-01-21 11:10:58:161_R:] +CGREG: 0,1

[2019-01-21 11:10:58:161_R:] OK

 Use AT+CREG? /AT+CGREG? to query
 the network registration status.

[2019-01-21 11:10:58:180_S:] AT+COPS?
[2019-01-21 11:10:58:184_R:] AT+COPS?
[2019-01-21 11:10:58:184_R:] +COPS: 0,0,"AR - Movistar Movistar",2

[2019-01-21 11:10:58:184_R:] OK

 Use AT+COPS? to query current Network Operator.

[2019-01-21 11:11:01:039_S:] AT+QCCID
[2019-01-21 11:11:01:039_R:] AT+QCCID

[2019-01-21 11:11:01:039_R:] +QCCID: 8954074171104079520F

[2019-01-21 11:11:01:039_R:] OK

 Use AT+QCCID to query ICCID number of SIM card.

[2019-01-21 11:11:01:055_S:] AT+CIMI
[2019-01-21 11:11:01:071_R:] AT+CIMI

[2019-01-21 11:11:01:071_R:] 722077110407952

[2019-01-21 11:11:01:071_R:] OK

 Use AT+CIMI to query the IMSI of SIM card.

[2019-01-21 11:11:03:809_S:] AT+CPIN?
[2019-01-21 11:11:03:831_R:] AT+CPIN?

[2019-01-21 11:11:03:831_R:] +CPIN: READY

[2019-01-21 11:11:03:831_R:] OK

[2019-01-21 11:11:03:832_S:] AT+CSQ
[2019-01-21 11:11:03:847_R:] AT+CSQ

[2019-01-21 11:11:03:847_R:] +CSQ: 16,99

[2019-01-21 11:11:03:847_R:] OK

 Use AT+CPIN? to query the SIM card status :
 SIM card inserted or not, locked or unlocked
 Use AT+CSQ to query current signal quality.

[2019-01-21 11:11:03:847_S:] AT+CREG?
[2019-01-21 11:11:03:863_R:] AT+CREG?

[2019-01-21 11:11:03:863_R:] +CREG: 0,1

[2019-01-21 11:11:03:863_R:] OK
[2019-01-21 11:11:03:863_S:] AT+CGREG?
[2019-01-21 11:11:03:879_R:] AT+CGREG?

[2019-01-21 11:11:03:879_R:] +CGREG: 0,1

[2019-01-21 11:11:03:879_R:] OK

 Use AT+CREG? /AT+CGREG? to query the network registration status,
 if the return value is [0,1] or [0,5], it is successfully registered,
 other value is fail to register.

[2019-01-21 11:11:10:842_S:] AT+CPIN?
[2019-01-21 11:11:10:857_R:] AT+CPIN?

[2019-01-21 11:11:10:857_R:] +CPIN: READY

[2019-01-21 11:11:10:857_R:] OK
[2019-01-21 11:11:10:873_S:] AT+CREG?
[2019-01-21 11:11:10:879_R:] AT+CREG?

[2019-01-21 11:11:10:879_R:] +CREG: 0,1

[2019-01-21 11:11:10:879_R:] OK
[2019-01-21 11:11:10:895_S:] AT+CGREG?
[2019-01-21 11:11:10:895_R:] AT+CGREG?

[2019-01-21 11:11:10:895_R:] +CGREG: 0,1

[2019-01-21 11:11:10:895_R:] OK

 Use AT+CPIN?/AT+CREG?/AT+CGREG? to query
 the SIM status and network registration status.

[2019-01-21 11:11:10:911_S:] AT+QICSGP=1,1,"INTERNET.GPRS.UNIFON.COM.AR","wap","wap",0
[2019-01-21 11:11:10:911_R:] AT+QICSGP=1,1,"INTERNET.GPRS.UNIFON.COM.AR","wap","wap",0

[2019-01-21 11:11:10:926_R:] OK

 Use AT+QICSGP=1,1,"INTERNET.GPRS.UNIFON.COM.AR","wap","wap",0
 to set APN as "INTERNET.GPRS.UNIFON.COM.AR",
 user name as "wap", password as "wap".

[2019-01-21 11:11:10:942_S:] AT+QIACT=1
[2019-01-21 11:11:10:942_R:] AT+QIACT=1

[2019-01-21 11:11:13:211_R:] OK

 Activate context profile.

[2019-01-21 11:11:13:227_S:] AT+QIACT?
[2019-01-21 11:11:13:227_R:] AT+QIACT?

[2019-01-21 11:11:13:227_R:] +QIACT: 1,1,1,"10.177.203.148"

[2019-01-21 11:11:13:227_R:] OK

 Query the status of the context profile.

[2019-01-21 11:11:18:266_S:] ATV1
[2019-01-21 11:11:18:282_R:] ATV1

[2019-01-21 11:11:18:282_R:] OK

 Use ATV1 to set the response format.

[2019-01-21 11:11:18:299_S:] AT+QIOPEN=1,0,"TCP","www.centralesnexo.com.ar",80,0,1
[2019-01-21 11:11:18:299_R:] AT+QIOPEN=1,0,"TCP","www.centralesnexo.com.ar",80,0,1

[2019-01-21 11:11:18:318_R:] OK

[2019-01-21 11:11:41:179_R:] DSR:0 CTS:1 (RI:1) DCD:0

[2019-01-21 11:11:41:194_R:] +QIOPEN: 0,0

[2019-01-21 11:11:41:310_R:] DSR:0 CTS:1 (RI:0) DCD:0

 Use AT+QIOPEN=1,0,"TCP","www.centralesnexo.com.ar",80,0,1
 to connect to a TCP server (IP address: www.centralesnexo.com.ar:80). 

[2019-01-21 11:11:42:964_S:] AT+QISEND=0
[2019-01-21 11:11:42:980_R:] AT+QISEND=0

[2019-01-21 11:11:42:980_R:] > GET /soporte/gprs/download/nexodata.txt HTTP/1.1
[2019-01-21 11:11:43:111_R:] HOST: www.centralesnexo.com.ar


[2019-01-21 11:11:43:227_R:] SEND OK

 Use AT+QISEND=0 to send data to server, ">" from the UART
 or USB port indicates the following input data is considered as
 data to be sent. After receiving ">", input data (TEST), the
 maximum length of the data is 1460, the data beyond 1460 will
 be omitted. Then use <CTRL+Z> to send data.
 When receive SEND OK means the data has been sent.

[2019-01-21 11:11:43:247_S:] AT+QISEND=0,0
[2019-01-21 11:11:43:249_R:] AT+QISEND=0,0

[2019-01-21 11:11:43:249_R:] +QISEND: 84,0,84

[2019-01-21 11:11:43:249_R:] OK

[2019-01-21 11:11:43:882_R:] DSR:0 CTS:1 (RI:1) DCD:0

[2019-01-21 11:11:43:882_R:] +QIURC: "recv",0,389
[2019-01-21 11:11:43:882_R:] HTTP/1.1 200 OK
[2019-01-21 11:11:43:882_R:] Date: Mon, 21 Jan 2019 14:11:43 GMT
[2019-01-21 11:11:43:882_R:] Server: Apache/2.4.6 (CentOS) OpenSSL/1.0.1e-fips mod_fcgid/2.3.9 PHP/5.4.16 mod_python/3.5.0- Python/2.7.5
[2019-01-21 11:11:43:898_R:] Last-Modified: Mon, 21 Jan 2019 13:51:12 GMT
[2019-01-21 11:11:43:898_R:] ETag: "40-57ff8275572bf"
[2019-01-21 11:11:43:898_R:] Accept-Ranges: bytes
[2019-01-21 11:11:43:898_R:] Content-Length: 64
[2019-01-21 11:11:43:913_R:] Content-Type: text/plain; charset=iso-8859-1

[2019-01-21 11:11:43:913_R:] NexoDATA
[2019-01-21 11:11:43:913_R:] Contenido de prueba para soporte.
[2019-01-21 11:11:43:929_R:] Updated: 20190121

 Use AT+QISEND=0,0 to query whether all the data
 have been sent out.

[2019-01-21 11:11:43:999_R:] DSR:0 CTS:1 (RI:0) DCD:0
[2019-01-21 11:11:44:270_S:] AT+QISEND=0,0
[2019-01-21 11:11:44:270_R:] AT+QISEND=0,0

[2019-01-21 11:11:44:270_R:] +QISEND: 84,84,0

[2019-01-21 11:11:44:270_R:] OK
[2019-01-21 11:11:45:273_S:] AT+QISEND=0,0
[2019-01-21 11:11:45:273_R:] AT+QISEND=0,0

[2019-01-21 11:11:45:273_R:] +QISEND: 84,84,0

[2019-01-21 11:11:45:273_R:] OK

[2019-01-21 11:11:50:254_R:] DSR:0 CTS:1 (RI:1) DCD:0

[2019-01-21 11:11:50:254_R:] +QIURC: "closed",0

[2019-01-21 11:11:50:370_R:] DSR:0 CTS:1 (RI:0) DCD:0

[2019-01-21 11:12:27:241_R:] DSR:0 (CTS:0) RI:0 DCD:0

 Disconnect from TCP server.

Los valores mostrados, dependen del proveedor del servicio GSM utilizado y del nivel de señal de antena detectado por el equipo, de acuerdo a su ubicación geográfica y el área de cobertura del servicio.

En forma similar, puede realizarse la verificación de la conexión con el protocolo punto-a-punto, utilizando la opción de menú: PPP:

images/nexodata_ppp_cfg.png

En esta pantalla deben completarse los campos, con los datos correspondientes al APN (Access Point Name) del proveedor del servicio GSM, y luego utilizando la función Dial, puede verificarse la conexión PPP. En la sección de respuesta, se obtiene una dirección IP (IP address) y las direcciones de los DNS (DNS1 y DNS2) correspondientes.

A modo de ejemplo, se muestran los resultados obtenidos, con el equipo Nexo DATA (Q4G):

 Comandos AT / Resultados
 Comentarios

[2019-01-22 10:22:15:026_S:] ATE0
[2019-01-22 10:22:15:042_R:] ATE0

[2019-01-22 10:22:15:042_R:] OK

 Use ATE0 to disable echo mode.

[2019-01-22 10:22:15:058_S:] ATV0
[2019-01-22 10:22:15:058_R:] 0

 Use ATV0 to set the response format.

[2019-01-22 10:22:15:073_S:] AT+CGDCONT=1,"IP","INTERNET.GPRS.UNIFON.COM.AR"
[2019-01-22 10:22:15:111_R:] 30 0D

 Use AT+CGDCONT=1,"IP","xxx" to define a PDP
 context where CID=1, PDP type= IP, APN=xxx
 (xxx is the APN for the network provider and it
 should be replaced with the APN by your
 network provider).


[2019-01-22 10:22:15:127_S:] ATD*99#

[2019-01-22 10:22:15:127_R:] DSR:0 CTS:1 RI:0 (DCD:1)
[2019-01-22 10:22:15:127_R:] 31 0D

 Use ATD*99# to dial up with defined PDP context.
 After this row will be into the process of
 negotiations. The sent and received data below
 will be hexadecimal mode except the information
of the status about port pins.
[2019-01-22 10:22:18:129_S:] 7E FF 7D 23 C0 21 7D 21 7D 21 7D 20 7D 2A 7D 22 7D 26 7D 20 7D 20 7D 20 7D 20 58 7B 7E
[2019-01-22 10:22:18:137_R:] 7E FF 7D 23 C0 21 7D 21 7D 28 7D 20 7D 39 7D 22 7D 26 7D 20 7D 20 7D 20 7D 20 7D 23 7D 25 C2 23
[2019-01-22 10:22:18:140_R:] 7D 25 7D 25 7D 26 B5 CC C1 4F 7D 27 7D 22 7D 28 7D 22 C4 2D 7E 7E FF 7D 23 C0 21 7D 22 7D 21 7D
[2019-01-22 10:22:18:141_S:] 7E FF 7D 23 C0 21 7D 24 7D 28 7D 20 7D 28 7D 27 7D 22 7D 28 7D 22 C1 7D 25 7E
[2019-01-22 10:22:18:144_R:] 20 7D 2A 7D 22 7D 26 7D 20 7D 20 7D 20 7D 20 31 7D 2F 7E
[2019-01-22 10:22:18:147_R:] 7E FF 7D 23 C0 21 7D 21 7D 29 7D 20 7D 35 7D 22 7D 26 7D 20 7D 20 7D 20 7D 20 7D 23 7D 25 C2 23
[2019-01-22 10:22:18:150_R:] 7D 25 7D 25 7D 26 B5 CC C1 4F CA F5 7E
[2019-01-22 10:22:18:150_S:] 7E FF 7D 23 C0 21 7D 23 7D 29 7D 20 7D 28 7D 23 7D 24 C0 23 CE 96 7E
[2019-01-22 10:22:18:150_R:] 7E FF 7D 23 C0 21 7D 21 7D 2A 7D 20 7D 34 7D 22 7D 26 7D 20 7D 20 7D 20 7D 20 7D 23 7D 24 C0 23
[2019-01-22 10:22:18:150_R:] 7D 25 7D 26 B5 CC C1 4F 7D 38 E9 7E
[2019-01-22 10:22:18:165_S:] 7E FF 7D 23 C0 21 7D 22 7D 2A 7D 20 7D 34 7D 22 7D 26 7D 20 7D 20 7D 20 7D 20 7D 23 7D 24 C0 23 7D 25 7D 26 B5 CC C1 4F F3 80 7E

 The period of negotiation in LCP.
[2019-01-22 10:22:18:165_S:] 7E FF 03 C0 23 01 02 00 0C 03 77 61 70 03 77 61 70 87 31 7E
[2019-01-22 10:22:18:181_R:] 7E FF 7D 23 C0 21 7D 2B 7D 2B 7D 20 7D 28 B5 CC C1 4F 25 DA 7E
[2019-01-22 10:22:18:181_R:] 7E FF 03 C0 23 02 02 00 05 00 46 1E 7E

 The period of authentication user in PAP.
[2019-01-22 10:22:21:208_S:] 7E FF 03 80 21 01 03 00 16 03 06 00 00 00 00 81 06 00 00 00 00 83 06 00 00 00 00 B6 B5 7E
[2019-01-22 10:22:22:218_R:] 7E FF 03 80 21 03 03 00 1C 81 06 0A 0B 0C 0D 83 06 0A 0B 0C 0E 82 06 0A 0B 0C 0D 84 06 0A 0B 0C
[2019-01-22 10:22:22:223_R:] 0E 75 1E 7E
[2019-01-22 10:22:23:462_R:] 7E FF 03 80 21 01 02 00 04 64 58 7E 7E FF 03 80 21 03 03 00 16 03 06 0A B0 E8 73 81 06 C8 51 23
[2019-01-22 10:22:23:467_S:] 7E FF 03 80 21 02 02 00 04 A9 7D 5D 7E
[2019-01-22 10:22:23:471_R:] 01 83 06 C8 51 29 01 DC F9 7E
[2019-01-22 10:22:23:474_S:] 7E FF 03 80 21 01 04 00 16 03 06 0A B0 E8 73 81 06 C8 51 23 01 83 06 C8 51 29 01 73 27 7E
[2019-01-22 10:22:23:474_R:] 7E FF 03 80 21 02 04 00 16 03 06 0A B0 E8 73 81 06 C8 51 23 01 83 06 C8 51 29 01 85 D4 7E

 The period of negotiation in NCP - 2.
[2019-01-22 10:22:38:269_S:] 7E FF 03 C0 21 05 05 00 04 5C A4 7E
[2019-01-22 10:22:38:285_R:] 7E FF 7D 23 C0 21 7D 26 7D 25 7D 20 7D 24 91 81 7E

[2019-01-22 10:22:38:921_R:] DSR:0 (CTS:0) RI:0 DCD:1

[2019-01-22 10:22:38:925_R:] DSR:0 CTS:0 RI:0 (DCD:0)

[2019-01-22 10:22:38:925_R:] DSR:0 (CTS:1) RI:0 DCD:0
[2019-01-22 10:22:38:925_R:] 33 0D 0A

 Send the request of terminate.
[2019-01-22 10:22:38:940_S:] ATE1
[2019-01-22 10:22:38:940_R:] 0

 Use ATE1 to enable echo mode.
[2019-01-22 10:22:39:463_S:] ATV1
[2019-01-22 10:22:39:463_R:] ATV1

[2019-01-22 10:22:39:463_R:] OK

 Use ATV1 to set the response format.

La opción: Help, en el menú del programa QNavigator, permite acceder a la información de ayuda del producto.


NOTAS:

* Esta herramienta de diagnóstico, es la misma que se utiliza para realizar uno de los procedimientos, que corresponde al test de fábrica de este producto. Sin embargo, se advierte que los valores mostrados y que se obtienen, cada vez que se realiza este diagnóstico, varían de acuerdo a los factores que modifican las condiciones de prueba. Algunos de estos factores son: la ubicación geográfica del equipo, la orientación y ubicación de la antena, el área de cobertura del servicio requerido y las restricciones que puede aplicar el proveedor del servicio contratado.

** Este paquete de software, está provisto por el fabricante del módulo GSM que contiene el equipo Nexo DATA (Q4G/Q2G). Para descargar la versión más reciente, de este software, puede utilizar el siguiente link: quectel.com.


APENDICES:

Secuencia de inicialización

images/nexodata_info_002.png

El diagrama de inicialización, del módulo GSM, describe las funciones que se ejecutan, a través de comandos AT, durante el proceso de arranque.


Secuencia de conexión TCP

images/nexodata_info_003.png

El diagrama de conexión TCP muestra las sucesivas etapas, que sigue el proceso de enlace, para establecer la comunicación con el servidor.



Transiciones de estados en la conexión TCP

images/nexodata_info_004.png

De acuerdo a los cambios de estado, en la conexión TCP, en el diagrama, se muestran las posibles transiciones que pueden producirse.



Secuencia de conexión PPP

images/nexodata_info_005.png




Documentación de software
Versión: 1.6

Revisión: 22/01/2019