Contenido

Introducción

¿Qué son los comandos AT?

¿Por qué necesitamos conocer los comandos AT?

Cómo ejecutar comandos AT en CG522-E

Comandos AT básicos

Conclusión

Introducción

Este documento describe el uso de los comandos AT para el módem CG522-E, Sierra Wireless EM9190, que se pueden aplicar desde el sistema operativo CG522.

¿Qué son los comandos AT?

Los comandos AT, o Comandos de atención, son un conjunto de instrucciones que se utilizan para controlar módems. El nombre "AT" proviene del prefijo de atención que debe preceder a cada comando para llamar la atención del módem. Estos comandos se utilizan para administrar diversas funciones del módem, como marcar, colgar y cambiar los parámetros de comunicación.

¿Por qué necesitamos conocer los comandos AT?

Los comandos AT son esenciales por varias razones, especialmente cuando se trata de la comunicación y el control del módem en varias aplicaciones. A continuación se indican algunas razones clave por las que se necesitan los comandos AT:

1. Control de dispositivos: Los comandos AT proporcionan una forma estandarizada de controlar las funciones del módem, como marcar números, enviar y recibir mensajes y administrar conexiones de red.

2. Configuración: Permiten a los usuarios configurar los parámetros del módem, incluidos los parámetros de red, los parámetros de transmisión de datos y la administración de energía. Esto es fundamental para optimizar el rendimiento y garantizar la compatibilidad con las diferentes redes.

3. Diagnóstico y resolución de problemas: Los comandos AT se pueden utilizar para consultar al módem información de estado, verificar la calidad de la señal y recuperar códigos de error, lo que ayuda a diagnosticar y resolver problemas de conectividad.

En general, los comandos AT son una herramienta crucial para los desarrolladores, ingenieros y técnicos que necesitan interactuar con y administrar el hardware del módem de manera eficiente y efectiva. Proporcionan la interfaz necesaria para una amplia gama de tareas y aplicaciones de comunicación.

Cómo ejecutar comandos AT en CG522-E

Esto se puede hacer simplemente ejecutando los comandos desde una sesión CLI activa a la puerta de enlace móvil.

CellularGateway# cellular 1 modem-at-commands

Value for '' (<string>):

cellular_modem_at_cmd: modem-at-response

Comandos AT básicos

ATI, también conocido como comando AT Identification, es un comando que se puede utilizar para mostrar el fabricante del módem, su modelo, qué firmware está ejecutando, IMEI y el número de serie de fábrica.

CellularGateway# cellular 1 modem-at-commands

Value for '' (<string>): ati

cellular_modem_at_cmd: modem-at-response ati

Manufacturer: Sierra Wireless, Incorporated

Model: EM9190

Revision: SWIX55C_03.09.11.00 7bf975 jenkins 2022/06/10 20:36:01

IMEI: 111111111111

IMEI SV: 22

FSN: XXXXXXXXXXXX

+GCAP: +CGSM

OK

AT!PRID? muestra la versión PRI del OEM y las opciones PRI de los operadores disponibles.

cellular_modem_at_cmd: modem-at-response AT!PRIID?

PRI Part Number: 9909919

Revision: 001.009

Customer: Cisco

Carrier PRI: 9999999_9909619_SWIX55C_03.09.11.00_01_ATT_030.046_001

Carrier PRI: 9999999_9911061_SWIX55C_03.09.11.00_01_BELL_030.007_001

Carrier PRI: 9999999_9909622_SWIX55C_03.09.11.00_01_DOCOMO_030.041_003

Carrier PRI: 9999999_9909621_SWIX55C_03.09.11.00_01_GENERIC_030.044_006

Carrier PRI: 9999999_9910814_SWIX55C_03.09.11.00_01_KDDI_030.025_001

Carrier PRI: 9999999_9910766_SWIX55C_03.09.11.00_01_SOFTBANK_030.031_004

Carrier PRI: 9999999_9910398_SWIX55C_03.04.03.00_01_TELSTRA_030.016_001

Carrier PRI: 9999999_9910308_SWIX55C_03.10.07.00_01_TMO_030.052_000

Carrier PRI: 9999999_9909620_SWIX55C_03.09.11.00_01_VERIZON_030.046_003

OK

AT!IMPREF? muestra el firmware PRI y el operador utilizados junto a la portadora preferida, si hay alguna configurada.

cellular_modem_at_cmd: modem-at-response AT!IMPREF?

!IMPREF:

preferred fw version: 00.00.00.00

preferred carrier name: AUTO-SIM

preferred config name: AUTO-SIM_000.000_000

preferred subpri index: 000

current fw version: 03.09.11.00

current carrier name: GENERIC

current config name: GENERIC_030.044_006

current subpri index: 000

OK

AT!CPIN? muestra si la tarjeta SIM está lista o requiere que se active un PIN.

cellular_modem_at_cmd: modem-at-response AT+CPIN?

+CPIN: READY

OKAT+CPIN="SIM-PIN" is the command to insert a PIN to unlock the SIM.

cellular_modem_at_cmd: modem-at-response AT+CPIN="3045"

OK

Sin embargo, si se reinicia la puerta de enlace móvil o el módem, es necesario volver a introducir el PIN.

AT+CLICK="SC",0,"SIM-PIN" se puede aplicar para desbloquear permanentemente la tarjeta SIM, por lo que no es necesario volver a insertar el PIM después de una recarga.

cellular_modem_at_cmd: modem-at-response AT+CLCK="SC",0,"3045"

OK

AT+CREG? verifica el estado de registro de red actual del módem a la red conmutada de circuito, también conocida como redes GSM. Se espera que devuelva un par de valores.

El primer valor de este par es la operación:

0 es el valor predeterminado y significa que el registro de red debe verificarse manualmente.

1 hace referencia al código de resultado que se devuelve cuando se produce un cambio en la red.

2 para mostrar la información de registro y ubicación al registrarse.

No es necesario cambiar estos valores a menos que se lo indique el TAC. El segundo valor de este par es el estado de registro y se puede interpretar.

- 0- No registrado, el dispositivo no está buscando un nuevo operador.

- 1- Registro en la red doméstica.

- 2- No está registrado, pero el dispositivo está buscando un nuevo operador.

- 3- Registro denegado.

- 4- Desconocido. Por ejemplo, fuera del intervalo.

- 5- Registrado, itinerancia. El dispositivo está registrado en una red extranjera (nacional o internacional).

cellular_modem_at_cmd: modem-at-response at+creg?

+CREG: 0,1

OK

En este fragmento de código, podemos ver que la operación está configurada en 0 y el registro en 1.

AT+CEREG? verifica el estado de registro de red actual del módem a la red conmutada de paquetes conocida como Internet Access. Devuelve valores que son los mismos que el comando anterior:

cellular_modem_at_cmd: modem-at-response at+creg?

+CREG: 0,1

OK

AT+CGREG? verifica el estado de registro de red actual del módem a la red GPRS. Devuelve valores que son los mismos que el comando anterior:

cellular_modem_at_cmd: modem-at-response at+cgreg?

+CGREG: 0,0

OK

AT+CIMI devuelve el valor del IMSI:

cellular_modem_at_cmd: modem-at-response AT+CIMI

268069668483162

AT+CCID devuelve el valor de ICCID:

cellular_modem_at_cmd: modem-at-response AT+CCID

+CCID: 89351060001115740710

AT!UIMS? devuelve el número de ranura de la tarjeta SIM activa:

cellular_modem_at_cmd: modem-at-response AT!UIMS?

!UIMS: 0

AT!GSTATUS? para comprobar el estado de la conexión, el modo de sistema ENDC (NSA 5G) para comprobar si hay una conexión 5G activa. Si el modo del sistema es LTE, el 5G no está activo. La banda LTE indicada es la banda 4G de anclaje para la conexión ENDC.

Las bandas SSC (Secondary Serving Cells, células de servidor secundarias) corresponden a las bandas utilizadas más recientemente para la agregación de operadores, pero como tenemos una conexión 5G activa aquí, las bandas SSC están inactivas. La banda NR5G indicada es la banda 5G utilizada para la conectividad de datos.

cellular_modem_at_cmd: modem-at-response AT!GSTATUS?

!GSTATUS:

Current Time: 1730657 Temperature: 44

Thermal Mitigation Level: 0

Reset Counter: 2 Mode: ONLINE

System mode: ENDC PS state: Attached

LTE band: B1 LTE bw: 20 MHz

LTE Rx chan: 500 LTE Tx chan: 18500

EMM state: Registered Normal Service

RRC state: RRC Connected

IMS reg state: REGISTERED IMS mode: Normal

IMS Srv State: FULL SMS,NO VoIP

PCC RxM RSSI: --- PCC RxM RSRP: ---

PCC RxD RSSI: -59 PCC RxD RSRP: -86

PCC RxM1 RSSI: --- PCC RxM1 RSRP: ---

PCC RxD1 RSSI: --- PCC RxD1 RSRP: ---

PCC Tx Power: -20 TAC: bc7a (48250)

RSRQ (dB): -7.8 Cell ID: 00066e2b (421419)

SINR (dB): 14.2

SCC1 NR5G band: n78 SCC1 NR5G bw: 90 MHz

SCC1 NR5G Tx Power: 3 SCC1 NR5G Tx chan: 650332

SCC1 NR5G Rx chan: 650332

NR5G RSRP (dBm): -94 NR5G RSRQ (dB): -11

NR5G SINR (dB): 19.5

NR!INFO? modo de conectividad NSA (no independiente) si hay una conexión 5G activa. Este resultado muestra que se utiliza la banda NR5G:

cellular_modem_at_cmd: modem-at-response AT!NRINFO?

!NRINFO:

Connectivity Mode: NSA

NR5G Cell ID: 67

NR5G band: n78 NR5G Carrier ID: 0

NR5G dl bw: 90 MHz NR5G ul bw: 90 MHz

NR5G Tx Power: 3 NR5G Tx chan: 650332

NR5G Rx chan: 650332

NR5G dl MIMO: 0 NR5G ul MIMO: 1

NR5G(sub6) RxM RSSI (dBm): -60.6 NR5G(sub6) RxD RSSI (dBm): -60.8

NR5G(sub6) RxM1 RSSI (dBm): -60.1 NR5G(sub6) RxD1 RSSI (dBm): -61.8

NR5G RSRP (dBm): -94 NR5G RSRQ (dB): -11

NR5G SINR (dB): 20.0

AT+CGDCONT? comprueba los nombres de puntos de acceso (APN) programados:

cellular_modem_at_cmd: modem-at-response AT+CGDCONT?

+CGDCONT: 1,"IPV4V6","internet","0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0",0,0,0,0,,,,,,,,,"",,,,0

+CGDCONT: 2,"IPV4V6","ims","0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0",0,0,0,0,,,,,,,,,"",,,,0

AT+CGDCONT=X borra y borra el APN específico en función de su número de índice:

cellular_modem_at_cmd: modem-at-response AT+CGDCONT?

+CGDCONT: 1,"IPV4V6","internet","0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0",0,0,0,0,,,,,,,,,"",,,,0

+CGDCONT: 2,"IPV4V6","ims","0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0",0,0,0,0,,,,,,,,,"",,,,0

OK

CellularGateway#

CellularGateway# cellular 1 modem-at-commands

Value for '' (<string>): AT+CGDCONT=2

cellular_modem_at_cmd: modem-at-response AT+CGDCONT=2

OK

CellularGateway#

CellularGateway# cellular 1 modem-at-commands

Value for '' (<string>): AT+CGDCONT?

cellular_modem_at_cmd: modem-at-response AT+CGDCONT?

+CGDCONT: 1,"IPV4V6","internet","0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0",0,0,0,0,,,,,,,,,"",,,,0

OK

AT+PCINFO? comprueba el estado de energía y el estado del módem más bajos. Si alguno de los votantes de LPM (Low Power Mode, Modo de baja potencia) no es cero, esto indica una razón por la que el módem se ha configurado en estado de baja potencia, enumerando algunas de las razones más comunes.

- Estado: En línea es el estado deseado

- Temp: alta temperatura

- Voltios: voltaje fuera de especificaciones

- Usuario: forzado por el usuario

- W_DISABLE: forzado por el usuario

- FOTA: proceso de actualización de FOTA

cellular_modem_at_cmd: modem-at-response AT!PCINFO?

State: Online

LPM voters - Temp:0, Volt:0, User:0, W_DISABLE:0, IMSWITCH:0, BIOS:0, LWM2M:0, OMADM:0, FOTA:0, NVCRIT:0, RFCAL:0, MMWCAL:0, RFC_INIT:0

LPM persistence - None

AT!IMAGE? enumera todos los Firmware e imágenes PRO en el módem:

cellular_modem_at_cmd: modem-at-response at!image?

TYPE SLOT STATUS LRU FAILURES UNIQUE_ID BUILD_ID

FW 1 GOOD 2 0 0 ?_? 03.09.11.00_?

FW 2 GOOD 1 0 0 ?_? 03.10.07.00_?

FW 3 GOOD 1 0 0 ?_? 03.04.03.00_?

Max FW images: 3

Active FW image is at slot 1

TYPE SLOT STATUS LRU FAILURES UNIQUE_ID BUILD_ID

PRI FF GOOD 0 0 0 030.046_001 03.09.11.00_ATT

PRI FF GOOD 0 0 0 030.007_001 03.09.11.00_BELL

PRI FF GOOD 0 0 0 030.041_003 03.09.11.00_DOCOMO

PRI FF GOOD 0 0 0 030.044_006 03.09.11.00_GENERIC

PRI FF GOOD 0 0 0 030.025_001 03.09.11.00_KDDI

PRI FF GOOD 0 0 0 030.031_004 03.09.11.00_SOFTBANK

PRI FF GOOD 0 0 0 030.016_001 03.04.03.00_TELSTRA

PRI FF GOOD 0 0 0 030.052_000 03.10.07.00_TMO

PRI FF GOOD 0 0 0 030.046_003 03.09.11.00_VERIZON

Max PRI images: 50

AT!IMAGE=<op><type><slot> elimina un firmware específico.

- op = 0: Eliminar , 1: Lista,

- tipo = 0: FW, 1: Config

- slot = Índice de ranuras de firmware, ninguno implica todas las ranuras.

CellularGateway# cellular 1 modem-at-commands

Value for '' (<string>): at!image?

cellular_modem_at_cmd: modem-at-response at!image?

TYPE SLOT STATUS LRU FAILURES UNIQUE_ID BUILD_ID

FW 1 GOOD 2 0 0 ?_? 03.09.11.00_?

FW 2 GOOD 1 0 0 ?_? 03.10.07.00_?

FW 3 GOOD 1 0 0 ?_? 03.04.03.00_?

Max FW images: 3

Active FW image is at slot 1

TYPE SLOT STATUS LRU FAILURES UNIQUE_ID BUILD_ID

PRI FF GOOD 0 0 0 030.046_001 03.09.11.00_ATT

PRI FF GOOD 0 0 0 030.007_001 03.09.11.00_BELL

PRI FF GOOD 0 0 0 030.041_003 03.09.11.00_DOCOMO

PRI FF GOOD 0 0 0 030.044_006 03.09.11.00_GENERIC

PRI FF GOOD 0 0 0 030.025_001 03.09.11.00_KDDI

PRI FF GOOD 0 0 0 030.031_004 03.09.11.00_SOFTBANK

PRI FF GOOD 0 0 0 030.016_001 03.04.03.00_TELSTRA

PRI FF GOOD 0 0 0 030.052_000 03.10.07.00_TMO

PRI FF GOOD 0 0 0 030.046_003 03.09.11.00_VERIZON

Max PRI images: 50

OK

CellularGateway#

CellularGateway# cellular 1 modem-at-commands

Value for '' (<string>): AT!IMAGE=0,0,3

cellular_modem_at_cmd: modem-at-response AT!IMAGE=0,0,3

OK

CellularGateway#

CellularGateway# cellular 1 modem-at-commands

Value for '' (<string>): AT!IMAGE?

cellular_modem_at_cmd: modem-at-response AT!IMAGE?

TYPE SLOT STATUS LRU FAILURES UNIQUE_ID BUILD_ID

FW 1 GOOD 2 0 0 ?_? 03.09.11.00_?

FW 2 GOOD 1 0 0 ?_? 03.10.07.00_?

FW 3 EMPTY 0 0 0

AT+COPS? devuelve el modo de selección actual, el formato del operador, el operador y la tecnología de acceso de radio.

POLICÍAS: [selection mode],[operator format],[operator],[radio access technology] OK

<stat> = Estado de la red.

- 0 = Desconocido

- 1 = Disponible

- 2 = Corriente

- 3 = Prohibido

<mode> = Modo de selección.

- 0 = selección automática

- 1 = selección manual

- 2 = anular el registro en la red

<format> = Formato de operador.

- 0 = alfanumérico largo - "T-Mobile USA"

- 1 = alfanumérico corto - "TMO"

- 2 = valor numérico conocido como MCC + MNC - "310260"

<oper> = Identificador de operador.

Cadena de dígitos que devuelve los identificadores de operador en el <format> enumerado.

<AcT> = Tecnología de acceso por radio.

- 0 = GSM

- 1 = GSM compacto

- 2 = UTRAN

- 3 = GSM con EGPRS

- 4 = UTRAN con HSDPA

- 5 = UTRAN con HSUPA

- 6 = UTRAN con HSDPA y HSUPA

- 7 = E-UTRAN

- 8 = EC-GSM-IoT (modo A/Gb)

- 9 = E-UTRAN (modo NB-S1)

- 10 = E-UTRA conectado a un 5GCN.

- 11 = NR conectado a un 5GCN.

- 12 = 5G independiente

- 13 = 5G no independiente

cellular_modem_at_cmd: modem-at-response AT+COPS?

+COPS: 0,0,"MEO MEO",13

OK

AT!VERINFO muestra los detalles del host y el módem:

cellular_modem_at_cmd: modem-at-response AT!VERINFO

SBL: BOOT.SBL.4.1-00247

TZ: TZ.FU.5.9-00189

AOP: unknown

UEFI: SWIX55C_03.09.11.00

Mpss: SWIX55C_03.09.11.00 7bf975 jenkins 2022/06/10 20:36:01

OS: Linux version 4.14.206 Fri Jun 10 21:25:48 UTC 2022

Yocto: SWIX55C_03.09.11.00 2022 Fri Jun 10 21:25:48 UTC 2022

RootFS: SWIX55C_03.09.11.00 2022 Fri Jun 10 21:25:48 UTC 2022

Security: secure

RF_CAL_TREE: unknown

AT+CGCONTRDP muestra los detalles de la conexión actual.

+CGCONTRDP: <cid>,<bearer_id>,<APN>,<IP Address>, <DNS IP Address> , <Secondary DNS IP Address>

- cid:Identificador de conexión.

- bearer_id: identificador del portador.

- apn:Nombre del punto de acceso.

cellular_modem_at_cmd: modem-at-response AT+CGCONTRDP

+CGCONTRDP: 1,5,internet,<IP Address >,,< DNS Server1 >,<DNS Server2>

OK

AT!FLOG? muestra el historial de acciones del firmware. Este comando es necesario cuando se sospecha un problema de bajo consumo o un desperfecto.

cellular_modem_at_cmd: modem-at-response AT!FLOG?

!FLOG:

OK

Class long:

00000,1980/01/06 00:00:40.028,SWIX55C_01.07.2,COMMENT=Log created,LOG_VERSION=1.0

00001,1980/01/06 00:02:46.543,SWIX55C_01.07.2,NV_BACKUP=START,COMMENT=index 1

00001,1980/01/06 00:02:49.981,SWIX55C_01.07.2,NV_BACKUP=COMPLETE,COMMENT=index 1,STATUS=PASS

00001,1980/01/06 00:00:00.000,SWIX55C_,BOOT_HOLD=3,

00001,1980/01/06 00:00:00.000,C3091400,BOOT_HOLD=3,

00002,1980/01/06 00:06:06.390,C3091100,COPY_FROM_BACKUP=/swir/nvdelta/NVUP_GENERIC.010,STATUS=PASS

00002,1980/01/06 00:06:06.390,C3091100,COPY_FROM_BACKUP=/swir/nvdelta/NVUP_ATT.010,STATUS=PASS

00002,1980/01/06 00:06:06.390,C3091100,COPY_FROM_BACKUP=/swir/nvdelta/NVUP_VERIZON.010,STATUS=PASS

00002,1980/01/06 00:06:06.390,C3091100,COPY_FROM_BACKUP=/swir/nvdelta/NVUP_DOCOMO.010,STATUS=PASS

00002,1980/01/06 00:06:06.390,C3091100,COPY_FROM_BACKUP=/swir/nvdelta/NVUP_KDDI.010,STATUS=PASS

00002,1980/01/06 00:06:06.390,C3091100,COPY_FROM_BACKUP=/swir/nvdelta/NVUP_TMO.010,STATUS=PASS

00002,1980/01/06 00:06:06.390,C3091100,COPY_FROM_BACKUP=/swir/nvdelta/NVUP_SOFTBANK.010,STATUS=PASS

00002,1980/01/06 00:06:06.390,C3091100,COPY_FROM_BACKUP=/swir/nvdelta/NVUP_TELSTRA.010,STATUS=PASS

00002,1980/01/06 00:06:06.390,C3091100,COPY_FROM_BACKUP=/nvup/NVUP_1104703_EM9190_Cisco.020,STATUS=PASS

00002,1980/01/06 00:06:06.390,C3091100,COPY_FROM_BACKUP=/swir/nvdelta/NVUP_BELL.010,STATUS=PASS

00002,1980/01/06 00:06:06.390,C3091100,NV_UPDATE=START,FILE=/nvup/NVUP_1104703_EM9190_Cisco.020

00002,198

AT!GCDUMP, archivo de desperfecto y rastrea si se ha producido algún desperfecto en el módem.

Value for '' (<string>): AT!GCDUMP

cellular_modem_at_cmd: modem-at-response AT!GCDUMP

No crash data available

OK

Conclusión

Al final, los comandos AT nos dan la visibilidad que necesitamos en las operaciones del módem.

Cisco recomienda usarlos con prudencia y no cambiar ningún parámetro, ya que pueden provocar la pérdida de la red.