Los comandos AT son instrucciones que se utilizan para controlar módems.
AT significa ATENCIÓN.
Estos comandos provienen de los comandos de Hayes que fueron utilizados por los módems inteligentes de Hayes en la década de 1980. Muchos módems de hoy en día, incluidos los módems de acceso telefónico, inalámbricos, GSM/GPRS, utilizan este conjunto de comandos AT para la comunicación.
Hay 2 tipos de comandos AT de módem.
- Comandos básicos
- Comandos extendidos
Los comandos básicos son comandos AT que no comienzan con "+". Los comandos extendidos son comandos AT que comienzan con un "+". Todo GSM/GPRS utiliza los comandos extendidos para servicios de SMS/DATOS.
Tarea que se puede realizar usando comandos AT
Aquí hay una lista de tareas que se pueden hacer usando los comandos AT.
- Obtener información básica sobre el suscriptor
- Obtenga información sobre la potencia de la señal y la potencia de la batería
- Establecer una conexión de datos/voz
- Enviar y recibir faxes
- Enviar y recibir SMS
- Leer/buscar entradas en la agenda
Tenga en cuenta que no todos los módems admitirán todos los comandos AT.
En este tutorial, mostraré ejemplos usando mi teléfono móvil "Nokia 2700" que tiene un módem GSM/GPRS incorporado.
Instalando minicom
Para enviar comandos AT a los módems, necesitamos una interfaz. Minicom es una herramienta que proporciona una interfaz para comunicarse con dispositivos que están conectados a puertos serie. Minicom es un equivalente de Linux a la utilidad HyperTerminal en los sistemas operativos de Microsoft.
Usando minicom podemos enviar comandos AT al módem para obtener información sobre sus características.
# apt-get install minicom
Configuración de minicom para interactuar con el módem
Antes de configurar minicom, necesitamos conectar el módem al sistema Linux. En mi caso, he conectado mi “Nokia 2700” mediante cable de datos a mi PC linux. Una vez que el dispositivo esté conectado, verá un resultado similar al siguiente usando dmesg. En mi caso, el módem fue detectado como /dev/ttyACM0.
[ 1071.120084] cdc_acm 1-1.3:1.1: ttyACM0: USB ACM device [ 1071.120916] usbcore: registered new interface driver cdc_acm [ 1071.120917] cdc_acm: USB Abstract Control Model driver for USB modems and ISDN adapters
Para configurar minicom para acceder al módem, haga lo siguiente:
# minicom -s +-----[configuration]------+ | Filenames and paths | | File transfer protocols | | Serial port setup | | Modem and dialing | | Screen and keyboard | | Save setup as dfl | | Save setup as.. | | Exit | | Exit from Minicom | +--------------------------+
Elija la "Configuración del puerto serie" y presione "Enter". Mostrará una pantalla similar a la siguiente.
+-----------------------------------------------------------------------+ | A - Serial Device : /dev/tty0 | | B - Lockfile Location : /var/lock | | C - Callin Program : | | D - Callout Program : | | E - Bps/Par/Bits : 115200 8N1 | | F - Hardware Flow Control : No | | G - Software Flow Control : No | | | | Change which setting? | +-----------------------------------------------------------------------+
Presione 'A' para cambiar el dispositivo serial de /dev/tty0 a /dev/ttyACM0.
Presione 'E' para cambiar la velocidad en baudios a la que se comunica el módem. En mi caso, es “460800”. También puede utilizar wvdialconf para identificar la velocidad en baudios admitida por su módem.
Una vez que cambie esta configuración, presione "Enter".
Elija "Guardar configuración como dfl" y seleccione "Salir".
Ahora hemos configurado el minicom con éxito y verá una pantalla como la siguiente.
Welcome to minicom 2.6.1 OPTIONS: I18n Compiled on Feb 11 2012, 18:12:55. Port /dev/ttyACM0 Press CTRL-A Z for help on special keys
Para probar si hemos configurado minicom con éxito para comunicarse con el módem, escriba "AT" en el minicom. Debería obtener una respuesta "OK" de la siguiente manera.
Welcome to minicom 2.6.1 OPTIONS: I18n Compiled on Feb 11 2012, 18:12:55. Port /dev/ttyACM0 Press CTRL-A Z for help on special keys AT OK
1. Responder una llamada entrante:ATA
Para responder una llamada entrante a través de un módem, emita el comando "ATA" en el minicom.
RING ATA OK
Cuando hay una llamada entrante, puede ver un mensaje 'RING' en el minicom. Puede presionar "ATA" para responder la llamada entrante.
2. Marcar y colgar una llamada de voz – ATD – ATH
También puede marcar una llamada de voz desde el módem usando el comando ATD.
ATD 99769XXXXX; OK
Ahora el teléfono marcará el número 99769XXXXX.
Para colgar la llamada, use el comando ATH.
3. Obtener la información de fabricación/IMEI/IMSI
Los comandos AT extendidos se utilizan para proporcionar información sobre el fabricante, la identidad del equipo móvil internacional, la identidad del suscriptor móvil internacional, etc...
AT+CGMI Nokia OK AT+CGSN xxxxxxxxxxxxxxx OK AT+CIMI xxxxxxxxxxxxxxx OK
4. Obtener la calidad de la señal y el estado de carga de la batería
También puede obtener la calidad de la señal y el estado de carga de la batería usando comandos extendidos AT.
AT+CSQ +CSQ: 29,99 OK AT+CBC +CBC: 1,96 OK
El formato de salida +CSQ:29,99 representa
El formato de salida +CBC:1,96 representa
5. Envío de SMS usando comandos AT
También puede enviar SMS a través de comandos AT.
AT+CMGF=1 OK AT+CMGS="99xxxxxxxx" > This is a test message > OK
El comando AT+CMGF=1 establece el "Formato de mensaje" en "modo de texto". El comando AT+CMGS, envía el SMS al número especificado.