Modem AT Command Set
More Tutorials |
A complete summary and explanation of the AT command set for Hayes compatible dial-up modems is given on this page. Defaults are shown in boldface.
Command | Function |
AT | Attention - this precedes all commands except A/ and +++ |
A/ | Execute previous command - does not require a <CR> |
A | Causes the modem to go off hook. If a call is coming in, the modem will try to answer it. The precedure for answering a call is a short silence and then an answer tone. Sending a character to the modem during this procedure will abort the answer sequence. The amount of time the modem will wait for a carrier is programmable by modifying the S7 register. |
B0 | Select CCITT V.22 (1200 bps) |
B1 | Select Bell 212A (1200 bps) |
B2 | Select CCITT V23 - Originate mode will transmit data at 75 bps and receive data at 1200 bps. Answer mode will transmit data at 1200 bps and receive data at 75 bps. The command N0 (disable auto mode) must be selected. |
D | D alone will take the modem off-hook and wait for a dial tone. (see X command for exceptions). The length of time to wait for a dial tone before dialing is programmable in register S6. |
Dmn | ATDmn will dial a phone number where m is the modifier: L, W, ,, ;, @, or S. It will dial the telephone number n. |
L | Dial last number |
W | Wait for dial tone. If you have selected X0 or X1 (disable dial tone detection), then you can use this modifier to override that setting. |
, | Pause during dial. Thie amount of time to pause is determined in register S8. |
; | Return to command mode after dialing. It does not wait for carrier or hang up. |
@ | Wait for 5 seconds of silence. This is used to access systems that do not provide a dial tone. |
! | Hook flash. Causes the modem to go on-hook for 0.5 seconds. This is used in PBX systems and for voice features like call waiting. |
S=(0-9) | Dials a stored number. Up to ten numbers can be stored, and the addresses are from 0 to 9. To store a number into one of these addresses, use the &Z command. |
E0 | Commands issued to the modem are not echoed to the local terminal. This only matters in the command mode. It does not affect the modem's ability to send response codes. |
E1 | Commands are echoed to the local terminal. |
H0 | Force modem on-hook (hang-up) |
H1 | Force modem off-hook (to answer or dial). |
I0 | Return numeric product code |
I1 | Return hardware variation code |
I2 | Report internal code |
I3 | Report software revision number |
I4 | Report product feature listing |
L0 | Speaker volume zero |
L1 | Speaker volume low |
L2 | Speaker volume low |
L3 | Speaker volume low (Hardware currently limits volume adjustment to on/off) |
M0 | Speaker always off |
M1 | Speaker on until carrier detected |
M2 | Speaker always on |
M3 | Speaker on during answering only |
N0 | Disable auto-mode. This forces the modem to connect at the speed specified in register S37 |
N1 | Enable auto-mode. The modem will answer at the highest available line speed and ignore any ATBn command. |
O0 | Return to data mode. If you have entered the command mode using the time independent escape sequence, this will put you back in data mode without going on-hook. |
O1 | Retrain the modem. If the line condition has changed since the original connection, retraining the modem will cause it to reconnect at the most efficient speed for the current line condition. |
P | Pulse dialing allows the modem to work on telephone networks where one is not supported. Pulse and tone dialing cannot be mixed on the same command line. |
Q0 | Enable response to DTE. |
Q1 | Disable response to DTE. The modem does not respond to the terminal. Issuing a command will not produce a response (unless the command is something like ATZ, which will restore this setting to default). |
Sn | Set default S-register. Any subsequent = or ? commands will modify the default S register. |
Sn=m | Set register n to value m |
Sn? | Return the value of register n |
T | Tone dialing - Pulse and tone dialing can not be mixed on the same command line. |
V0 | Result codes will be sent in numeric form. (See the result code table) |
V1 | Result codes will be sent in work form. (See the result code table.) |
W0 | Report DTE speed only. After connection, there will be no message about what Error Correction or Data Compression protocol is in use. |
W1 | Report DCE speed, Error Correction/Data Compression protocol, and DTE speed |
W2 | Report DCE speed only |
X0 | Send OK, CONNECT, RING, NO CARRIER, ERROR and NO ANSWER. Busy and dial tone detection are disabled. |
X1 | Send X0 messages and CONNECT speed |
X2 | Send X1 messages and NO DIAL TONE. |
X3 | Send X2 messages and BUSY and RING BACK. Dial tone detection is disabled. |
X4 | Send all responses. |
Y0 | Disable long space disconnect. |
Y1 | Enable long space disconnect; with error correction, hang up after sending 1.6 second long space; without error correction, hang up after 4 second long space. |
Z0 | Reset modem to profile 0 |
Z1 | Reset modem to profile 1 |
+++ | This is the default escape sequence. Transfers the modem from data mode to command mode. Must be preceded by at least 1 second of no characters and followed by one second of no characters. O0 (ATO0 or ATO) returns the modem to data mode. |
=n | Sets the value of the default S register. |
& | Ampersand commands |
&C0 | Force data carrier detect (DCD) on |
&C1 | DCD follows remote carrier |
&D0 | DTR is assumed on |
&D1 | DTR drop causes modem to go back to command mode without disconnecting |
&D2 | DTR drop causes modem to hang up |
&D3 | DTR drop causes modem to initialize; &Y determines which profile is loaded. |
&F | Load factory profile |
&K0 | Disable flow control |
&K3 | Enable RTS/CTS flow control |
&K4 | Enable XON/XOFF flow control |
&K5 | Enable transparent software flow control |
&K6 | Enable both RTS/CTS and XON/XOFF flow control |
&P0 | Selects 33%-67% make/break ratio at 10 pulses per second. |
&P1 | Selects 33%-67% make/break ration at 20 pulses per second |
&P2 | Selects 33%-61% make/break ration at 10 pulses per second |
&P3 | Selects 33%-61% make/break ration at 20 pulses per second |
&S0 | Force DSR on |
&S1 | DSR on at the start of handshaking and off after carrier loss |
&T0 | Terminate test |
&V0 | Display active profile |
&V1 | Display stored profiles |
&V2 | Display stored telephone numbers |
&W0 | Save active profile to profile 0 |
&W1 | Save active profile to profile 1 |
&Y0 | Use profile 0 on powerup |
&Y1 | Use profile 1 on powerup |
&Zn=m | Save telephone number (up to 36 digits) into memory location n (0-9) |
% | Percent commands |
%A | Default is set to each country encoding law. For example, for USA %A is 0, for Germany %A is 1. |
%A0 | Mu-law encoding |
%A1 | A-law encoding |
%C0 | Disable data compression |
%C1 | Enable MNP5 compression |
%C2 | Enable V.42bis compression |
%C3 | Enable both V.42bis and MNP5 |
%E0 | Disable auto-retrain |
%E1 | Enable auto-retrain |
%E2 | Enable auto-retrain and fallback |
%E3 | Enable auto-retrain and fast hang up |
%L | Report received signal level in -dBm |
%N0 | Dynamic CPU loading disabled |
%N1 | Dynamic CPU loading not to exceed 10% |
%N2 | Dyanmic CPU loading not to exceed 20% |
%N3 | Dyanmic CPU loading not to exceed 30% |
%N4 | Dyanmic CPU loading not to exceed 40% |
%N5 | Dyanmic CPU loading not to exceed 50% |
%N6 | Dyanmic CPU loading not to exceed 60% |
%N7 | Dyanmic CPU loading not to exceed 70% |
%N8 | Dyanmic CPU loading not to exceed 80% |
%N9 | Dyanmic CPU loading not to exceed 90% |
%Q | Report line signal quality |
\ | Backslash commands |
\A0 | 64-character max MNP block size |
\A1 | 128-character max. MNP block size |
\A2 | 192-character max. MNP block size |
\A3 | 256-character max. MNP block size |
\Bn | In non-error correction mode, transmit break in 100 ms units (1-9 with default 3) |
\G0 | Disable XON/XOFF flow control (modem to modem) |
\G1 | Enable XON/XOFF flow control (modem to modem) |
\Kn | Define break type |
\L0 | Use stream mode for MNP |
\L1 | Use interactive block mode for MNP |
\N0 | Normal mode; speed control without error correction |
\N1 | Plain mode; no speed control and no error correction |
\N2 | Reliable mode |
\N3 | Auto-reliable mode |
\N4 | LAPM error correction only |
\N5 | MNP error correction only |
* | Asterisk commands |
*Q0 | Send the "CONNECT xxxx" result codes to the DTE when an invalid TIES escape sequence is detected after the "OK" response has already been sent |
*Q1 | Does NOT send the "CONNECT xxxx" result codes to the DTE when an invalid TIES escape sequence is detected after the "OK" response has already been sent |
S Registers | |
Reg. 0 | Rings to auto-answer. Sets the number of rings required before the modem answers. 0 setting disable auto-answer. Range is 0-255 rings. Default is 0 for auto-answer disabled. |
Reg. 1 | Ring counter. Counts the number of rings before the modem answers. Range is 0-255 rings. Default is 0. |
Reg. 2 | Escape character. Defines the character used for the three-charracter escape code sequence. 0 setting disables the escape code character. Range is 0-127. Default is 43 (+) |
Reg. 3 | Carriage return character. Defines the character for carriage return. Range is 0-127. Default is 13 (carriage return). |
Reg. 4 | Line feed character. Defines the character for the line feed. Range is 0-127. Default is 10 (line feed). |
Reg. 5 | Backspace character. Defines the character for the backspace. Range is 0-127. Default is 8 (backspace) |
Reg. 6 | Wait before dialing. Sets the length of time to pause after off-hook before dial. Range is 2-255 seconds. Default is 2 seconds. |
Reg. 7 | Wait for carrier after dialing. Sets the length of time that the modem waits for a carrier from the remote modem before hanging up. Range is 1-255 seconds. Default is 50 seconds. |
Reg. 8 | Pause time for dial delay. Sets the length of time to pause for the pause dial modifier ",". Range is 0-255 seconds. Default is 2 seconds. |
Reg. 9 | Carrier detect response time. Defines the length of time a signal is detected and qualified as a carrier. Range is 1-255 tenths of a second. Default is 6 (0.6 seconds) |
Reg. 10 | Lost carrier hang up delay. Sets the length of time the modem waits before hanging up for a carrier loss. Range is 1-255 tenths of a seconds. Default is 14 (6 seconds ????) |
Reg. 11 | DTMF speed control. Sets the length of tone and the time between tones for the tone dialing. Range is 50-255 milliseconds. Default is 95 milliseconds. |
Reg. 12 | Escape Prompt Delay (EPD) timer. Sets the time from detection of the last character of the three character escape sequence until the "K" is returned to the DTE. Range is 0-255 fiftieths of a second. Default is 50 (1 second) |
Reg. 13 | Reserved |
Reg. 14 | Reserved |
Reg. 15 | Reserved |
Reg. 16 | Reserved |
Reg. 17 | Reserved |
Reg. 18 | Test timer. Sets the length of loopback test. Range is 0-255 seconds. Default is 0 (disable timer) |
Reg. 19 | Reserved |
Reg. 20 | Reserved |
Reg. 21 | Reserved |
Reg. 22 | Reserved |
Reg. 23 | Reserved |
Reg. 24 | Reserved |
Reg. 25 | Delay to DTR. Sets the length of time the modem ignores DTR before hanging up. Range is 0-255 hundredths of a seconds. Dafault is 5 (0.05 seconds) |
Reg. 26 | Reserved |
Reg. 27 | Reserved |
Reg. 28 | Reserved |
Reg. 30 | Disconnect inactivity timer. Sets the length of time allowed for inactivity before the connection is hung up. Range is 0-255 in minutes. Default is 0 (disabled) |
Reg. 32 | XON character. Sets the value of XON character. Range is 0-255. Default is 17 |
Reg. 33 | XOFF character. Sets the value of XOFF character. Range is 0-255. Default is 19. |
Reg. 34 | 56k data rate (bit-rate). Sets the maximum bit rate for 56K. Range is 0-32. Bit rate = 32000bps + S34*2000bps. V.34 data rate (bit-rate). Sets the maximum bit rate for V.34. Range is 0-8 (2400 baud), 1-10 (3000 baud), 1-11 (3200 baud), 1-13 (3429 baud) Bit rate = ((S34)+1)*2400bps. Default is 13 (33600 bps) |
Reg. 36 | Reserved |
Reg. 37 | Line connection speed. 0-Attempt to connect at the highest speed. 3-Attempt to connect at 300 bps. 4-Attempt to connect at 1200 bps. 6-Attempt to connect at 2400 bps. 7-Attempt to connect at 4800 bps. 8-Attempt to connect at 7200 bps. 9-Attempt to connect at 9600 bps. 10-Attempt to connect at 12000 bps. 11-Attempt to connect at 14400 bps. 12-Attempt to connect at V.34. 13-Attempt to connect at 56K, Default is 0. |
Reg. 38 | Delay before forced hang-up. Sets the delay to hang up after the disconnecting command is received. Range is 0-255 seconds. Default is 20 seconds. |
Reg. 39 | Reserved |
Reg. 40 | Reserved |
Reg. 41 | Reserved |
Reg. 42 | Reserved |
Reg. 43 | Reserved |
Reg. 44 | Reserved |
Reg. 45 | Reserved |
Reg. 46 | Reserved |
Reg. 47 | Reserved |
Reg. 48 | Reserved |
Reg. 82 | Reserved |
Reg. 86 | Call failure reason code. 0-Normal disconnect (no error), 4-Loss of carrier, 5-V.42 negotiation failed to detect an error correction modem at remote end, 6-No response to complete negotiation, 9-No common protocol, 12-Remote initiated a normal disconnect, 13- Remote modem did not respond after 10 message retransmissions, 14-Protocol violation, 15- Compression failure, 20- Hang up by inactivity time out. |
Reg. 91 | Transmit level. Set the transmit level in -dBm. Range is 9-15 (-dBm). Default is 11 (-11 dBm) |
Class 8 | Voice Mode AT Commands Summary |
ATA | Answering in Voice Mode |
ATD | Dial command in Voice Mode |
ATH | Hang up in Voice Mode |
ATZ | Reset from Voice Mode |
AT#BDR | Select baud rate (turn off autobaud) |
AT#CID | Enable Caller ID detection and select reporting format |
AT#CLS | Select data, fax, or voice |
AT#MDL? | Identify model |
AT#MFR? | Identify manufacturer |
AT#TL | Transmit level control |
AT#REV? | Identify revision level |
AT#RG | Record gain control |
AT#SPK | Change the setting of Speakerphone |
AT#VBS | Bits per sample (ADPCM) |
AT#VBT | Beep tone timer |
AT#VLS | Voice line select (ADPCM) |
AT#VRA | Ringback goes away timer (originate) |
AT#VRX | Voice Receive Mode (ADPCM) |
AT#VSD | Silence deletion tuner (voice receive, ADPCM) |
AT#VSP | Silence detection period (voice receive, ADPCM) |
AT#VSS | Silence sensitivity tuner (voice receive) |
AT#VTX | Voice Transmit Mode (ADPCM) |
AT#VBQ? | Query buffer size |
AT#VCI? | Identify compression method (ADPCM) |
AT#VRN | Ringback never came timer (originate) |
AT#VSK | Buffer skid setting |
AT#VSR | Sampling rate selection (ADPCM) |
AT#VTD | DTMF/tone reporting capability |
AT#VTS | Play tone string (online voice command) |
Complements of the MagicSurfer 56k User's Guide. I/OMAGIC Corporation, 6B Autry, Irvine, CA 92618
You are visitor number