Comandos AT Javier Fernández-Sanguino Peña (jfs@computer.org) v1.0, 21 Abril 1998 Traducción de los comandos AT, a partir de la documentación realizada por Better Image Productions . 11.. CCoommaannddooss ddeell MMooddeemm Los modem soportan el conjunto de comandos de AT tanto el estándard como el extendido. El prefijo AT (también conocido como código de Atención), señala al modem que le siguen uno o más comandos. Estos comandos son un lenguaje estandard industrial para comunciar con el modem. El modem está siempre en el modo de comandos o en el modo activo (on-line). El modem se pone en modo comandos cuando se le enciende por primera vez, y sólo acepta comandos en este modem. Comandos envíados cuando el modem está on-line se tratan como datos, no como comandos. También se pueden enviar comandos directamente desde el modo terminal de la mayor parte de programas de comunicación. Los cambios fijados a través del uso de comandos AT son utilizados inmediatamente por el modem hasta que recibe otro comando para cambiarlos o hasta que se le apaga. 22.. FFiijjaannddoo llaa lliinneeaa ddee ccoommaannddooss Todos los comandos salvo dos, deben empezar con los caracteres AT. Las dos excepciones son la secuencia de escape (+++), y el comando de repetición (A/). El prefijo de la línea de comandos (las letras AT) y las secuencias que le sigan pueden ser escritas en mayúsculas o mínusculas, pero no se pueden mezclar ambos tipos. Más de un comando puede ser envíado en una sola línea, separado por espacios si se desea. Los espacios son ignorados por el intérprete de comandos del modem. El buffer de la línea de comandos acepta hasta 39 caracteres incluyendo la "A" y la "T". Espacios, saltos de carro y retornos de línea no van al buffer así que no cuentan dentro de estos 39 caracteres. Si se envían más de 39 caracteres, o se produce un error sintáctico en cualquier punto de la línea de comandos, el modem devuelve un ERROR y los comandos entrados son ignorados. 33.. AAsseennttiimmiieennttoo ddee CCoommaannddooss El modem asentirá la mayoría de los comandos casi inmediatamente. En el momento en que se escriban los comandos terminados por un retorno de carro el modem responderá OK. 44.. CCoommaannddooss bbáássiiccooss Con los comandos básicos que ahora se indican se pueden hacer llamadas directas, elegir el método de marcación (por tonos o por pulsos), controlar el volumen del altavoz y realizar algunas otras operaciones básica. _I_m_p_o_r_t_a_n_t_e_: Debes estar en el modo de comandos en tu software de comunicación para mandar comandos AT. Dirígete a la documentación de tu programa de comunicaciones para obtener instrucciones sobre cómo entrar en dicho modo. AATT Este prefijo comienza todos los comandos envíados al modem localmente (salvo dos) y le indica "ATención! te envío comandos". DD Marcar (Dial). Usa el comando D para marcar un número de la línea de comandos. El formato es como sigue: AATTDD ccaaddeennaa El parámetro cadena puede tener hasta 45 caracteres, el número de teléfono y modificadores de llamada. Los modificadores de llamada deben indicar al modem como hacer la llamada. No se deben usar otros caracteres, como paréntesis o guiones en el número de teléfono ++++++ Secuencia de Escape. Una vez te has conectado a otro modem, puede ser necesario volver al modo comandos para ajustar la configuración del modem, o, más habitualmente, para colgar. Se hace esto dejando el teclado sin tocarlo durante al menos un segundo, y después presionar "+" tres veces. Este es uno de los comandos que no usan el prefijo AT, o un retorno de carro. Después de un momento el modem responderá con OK indicando que has vuelto al modo Comandos. AA// Repetir. Este comando no usa el prefijo AT ni necesita retorno de carro para ser aceptado. Enviando este comando se le fuerza al modem a repertir el último comando recibido, y es útil para hacer rellamada a números de teléfono que está comunicando. FFnn (Factory Defaults) Este comando (en el que n vale 0 o 1) devuelve todos los parámetros del conjunto elegido de parámetros fijados en fábrica. HH Colgar (Hang Up). Este comando indica al modem que desconecte la línea telefónica. OO En línea (On-Line). Este comando devuelve al modem al modo en línea (on line) y es habitualmente enviado después de la secuencia de escape (+++) para reanudar la comunicación. ZZnn Resetear Modem. Este comando (con n valiendo 0 ó 1) apaga el modem y restaura el perfil de configuración fijado en la memoria no volátil en la dirección 0 ó 1. 55.. MMooddiiffiiccaaddoorreess ddee ccoommaannddooss ddee llllaammaaddaa Los modificadores del comando de llamada definen parámetros adicionales que indican al modme que debe realizar ciertas funciones cuando marca un número de teléfono. Sólo son válidas cuando están contenidas en la cadena de llamada (que sigue al comando D). Los comandos que se utilizan para conseguir esto se llaman modificadores de marcación, y se ponen en la cadena de llamada previo a enviar el comando. Síntaxis: ATD(modificadores de llamada) 1234567 Enter Los modificadores básicos son: PP Marcación por pulsos. Este modificador sigue al comando D y se antepone al número de teléfono para inidicar al modem que marque por pulsos (usado en centralitas analógicas) TT Marcación por tonos. Este modificador selecciona la marcación usando tonos DTMF. _O_b_s_e_r_v_a_c_i_ó_n_: La marcación por tonos y por pulsos pueden ser combiandas en el comando de llamada cuando se necesita hacer uso de ambos ;; Continuar el modo comandos después de marcar. Si se necesita maracar un número que es demasiado grande para entrar en el buffer de comandos (45 caracteres para el comando D), se puede usar el modificador (;) para separar la cadena de llamada en varios comandos de llamada. Todos salvo el último comando deben terminar con el modificador ;. ,, Pausa mientras marca. La coma (,) obliga al modem a hacer una pausa mientras marca. El modem permanecerá pausado un número de segundos especificado en su registro-S S8 y después continuará marcando. Si se necesita una pausa mayor se pueden insertar más de uno o se puede cambiar el valor del registro. En el siguiente ejemplo el comando accede la línea exterior con el modificador 9. Como la coma está presente el modem espera antes de marcar el número _E_j_e_m_p_l_o_: _A_T_D _9_, _5_5_5_1_2_1_2 _E_n_t_e_r !! Cierre de línea. El modificador exclamación obliga al modem a colgar durante un segundo y medio y es equivalente a apretar el (switch-hook) en el teléfono durante un segundo y medio. Esta función es útil para transferir llamadas. WW Buscar un tono de marcación (Wait). El modificador W hace que el modem espere un tono de marcación adicional antes de marcar los números que le siguen. El tiempo de espera del modem depende del valor del registro-S S7. Se le puede indicar al modem cómo marcar a través de PBXs (Private Branch Exchanges) o hacer llamadas de larga distancia que imponen retardos en la marcación. Esto puede conseguirse usando el comando W para esperar el tono o utilizando la pausa (,) para no hacer nada durante un tiempo determinado y luego llamar. 66.. HHaacceerr uunnaa llllaammaaddaa El siguiente ejemplo muestra como se puede hacer una llamada usando algunos modificadores. ATD 1234567 El modem marca el número 1234567 y después espera escucahr una portadora de otro modem. Si no detecta una portadora durante un tiempo (definido en el registro-S 6) entonces el modem automáticamente libera la línea y envía un código NO CARRIER. Si detecta una portadora, el modem envía un código CONNECT y se pone en línea, permitiendo comunicación con el modem del otro extremo. La conexión entre los dos modems termina cuando algo de lo siguiente sucede obligando al modem a colgar, volver al modo de comandos o mandar un NO CARRIER. · El modem local pierde la portadora del modem remoto. · Se envía el comando de colgar (H). · El interfaz DTR se pierte entre el DTE local y el modem cuando los comandos o están activados. AT &F1DT9,P555123 Enter Este comando restaura la configuración de fábrica, marca, usando tonos, un 9 para acceder una línea exterior, se para un momento y después marca por pulsos el número 555-1234 77.. MMaarrccaacciióónn mmaannuuaall ccoonn eell tteellééffoonnoo Para marcar de forma manual es necesario estar en modo de comandos · Levanta el auricular del teléfono y marca el número que deseas llamar. · Escribe ATH1 y pulsa enter para conectar el modem y cuelga el auricular. · Excribe AT0 y pulsa enter para indicar al modem que se ponga on line. 88.. RReecceeppcciióónn MMaannuuaall Cuando la respuesta automática (registro-S S1) no está siendo usada, las llamadas entrantes pueden responderse usando: ATA enter Cuando se recibe una llamada entrante. El modem responderá la llamada y entrará en el modo on line. 99.. CCoonnttrroollaannddoo eell mmooddeemm _O_N _L_I_N_E Para transmitir o recibir datos, el modem debe estar en el estado en línea (on line). Cuando se establece una llamada, el modem se pone en línea con el comando de marcado. En el otro extremo, el modem se pone en línea cuando se le indica que debe responder una llamada de forma automática fijando el registro-S S0 igual a cualquier número mayor que 0 y menor de 255, también se puede fijar esta función con el comando ATA. _V_O_L_V_E_R _A_L _M_O_D_O _D_E _C_O_M_A_N_D_O_S Después de que la conexión se haya establecido con un modem remoto, se puede volver al modo de comandos interrumpiendo la conexión si se envía la secuencia de escape. La secuencia de escape consiste en tres caracteres (+++). No es necesario enviar esta secuencia con un código de atención, o pulsar enter después de escribir el código de escape. _V_O_L_V_E_R _A_L _M_O_D_O _E_N _L_I_N_E_A El modem puede ser devuelto al modo en línea después de haber recibido una secuencia de escape. Para volver al modo en línea se debe mandar el comando ATO. Para volver al modo en línea y después inicializar la secuencia del ecualizador, utilizar ATO1. _R_E_P_E_T_I_R _E_L _U_L_T_I_M_O _C_O_M_A_N_D_O Cada comando enviado al modem se queda en el buffer de comandos hasta que llega otro, o hasta que se apaga el modem. Para repetir el último comando enviado, escribe A/. El comando A/ no está precedido por el caracter AT ni seguidpor po un enter. Ver la referncia para más información _O_M_I_T_I_E_N_D_O _U_N _P_A_R_A_M_E_T_R_O Algunos comandos necesitan un parámetro para estar completamente definidos. Si un parámetro se omite en un comando que necesita uno se usará el valor por defecto. _C_O_D_I_G_O_S _R_E_S_U_L_T_A_D_O Una respuesta aparece en la pantalla por el modem, indicando el resultado despues de que procese, o intente procesar, un comando. Estos códigos muestran el estado del modem, o el progreso de una secuencia de llamada, y pueden tomar la fomra de palabras o dígitos. Los valores por defecto consisten en palabras de respuesta definidas por el comando ATV1. Para recibir respuestas de dígitos en lugar de palabras, usar el comando ATV0. Para inhibir respuestas, usar ATQ1. _S_I_N_T_A_X_I_S _D_E _L_O_S _C_O_M_A_N_D_O_S Todos los comandos de control están prefijados con AT o at y terminados por un retorno de carro (Enter). No está permitida la mezcla de mayúsculas y mínusculas ("At" o "aT"). La secuencia "AT" se llama "ATTENTION COMMAND". El comando de atención precede cualquier otro salvo volver a ejecutar (A/) y el código de escape (+++). Varios comandos que son precedidos por AT pueden meterse en una sóla línea seguido de un ocntro de carro. Se pueden insertar espacios entre los comandos para ganar legibilidad, pero no serán guardados en el buffer de comandos que tiene un tamaño limitado de 255 caracteres. El carácter de Borrado puede usarse para corregir fallos pero no se salva como parte del contenido del buffer de comandos en aplicaciones de terminal. Comandos que no estén soportados se guardarán devolviendo un "OK" o "ERROR". El modem sólo aceptará comandas una vez que el anterior se haya ejecutado completamente. Se puede abortar una línea de comandos en cualquier momento con "CTRL X". La secuencia AT puede seguirse de cualquier número de comandos en secuencia, excepto de los comandos Z,D o A. Comandos que sigan a Z,D o A en la misma línea serán ignorados. El máximo número de caracteres en cualquier línea es de 56 (incluyendo A y T) 1100.. RReeffeerreenncciiaa ddee CCoommaannddooss %%CCnn - Enable/Disable Data Compression %%EEnn - Auto-Retrain control &&CCnn - DCD Control &&DDnn - DTR Option &&FFnn - Recall Factory Profile &&GGnn - Select Guard Tone &&JJnn - Telephone Jack Control &&KKnn - Data Flow Control &&QQnn - Communication (Sync/Async Mode) &&RRnn - RTS/CTS (Hardware) Flow Control &&TTnn - Test Mode &&VV - View Configuration &&WWnn - Store User Profile &&YYnn - Default User Profile &&ZZnn==xx - Store Phone Number ))MMnn - Cellular Power Level Adjustment **HHnn - Link Negotiation Speed ++++++ - Escape Sequence ++MMSS - Select Modulation ::EEnn - Compromise Equalizer Setting ?? - Read Currently Selected S Register AA - Answer AA// - Re-execute Command BBnn - CCITT or Bell Selection CCnn - Carrier Control DDnn - Dial EEnn - Command Echo FFnn - Select Modulation HHnn - Disconnect (Hang-up) IInn - Identification LLnn - Speaker Volume MMnn - Speaker Control NNnn - Automode Enable (Automatic Line Speed Detection) OOnn - Return to On-Line Data Mode PP - Set Pulse Dial Default QQnn - Result Code On/Off SSnn - Select a Specific S Registe SSnn==xx - Write an S Register Value SSnn?? - Read an S Register TT - Set Tone Dial Default VVnn - Result Code Format WWnn - Negotiation Progress (Connect Message) Control XXnn - Extended Result Code YYnn - Long Space Disconnect ZZnn - Modem Reset