About
Community
Bad Ideas
Drugs
Ego
Erotica
Fringe
Society
Technology
Hack
Phreak
Broadcast Technology
Computer Technology
Cryptography
Science & Technology
Space, Astronomy, NASA
Telecommunications
The Internet: Technology of Freedom
Viruses
bbs | search | rss | faq | about
digg | del.icio.us | sphere | google

The Hayes Modem Technical Reference Manual

Hayes Modem Technical Reference



Technical Reference
for
Hayes(TM) Modem Users

5 June 1991
Version 1.0b










Hayes Microcomputer Products, Inc.
P.O. Box 105203
Atlanta, Georgia 30348


Notice: Hayes Microcomputer Products, Inc. (Hayes) provides the information
contained in this document to you for your convenience. Hayes does not
guarantee the accuracy of the information and reserves the right to change
this document, as well as the hardware and software products described herein
at any time without notice. The Hayes Standard AT Command Set is proprietary
to, and subject to the copyrights of Hayes Microcomputer Products, Inc., and
distribution of this document in no way represents a waiver of those rights.

Hayes, the Hayes logos, Smartcom, Smartcom II, Smartcom III, Smartcom EZ,
V-series, Smartmodem, ULTRA, and ESP are trademarks of Hayes Microcomputer
Products, Inc.

Other trademarks identified in this document are trademarks of their
respective companies.



Note: This version of the "Technical Reference for Hayes Modem Users" is a
special version edited for bulletin-board downloading. As a plain ASCII
character file, it therefore cannot contain any of the illustrations and
graphic elements provided in the printed version.

To highlight the start of Chapters, 1st Level Heads, 2nd Level Heads, and
Tables, we've used the following scheme:

Chapters are preceded by:
=============================================================================

1st Level Heads are preceded by:
*****************************************************************************

2nd Level Heads are preceded by:
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

3rd Level Heads are preceded by:
.............................................................................

Table heads are separated from table listings by:
-----------------------------------------------------------------------------

Document 44-00012 AA K10 (BBS Version)

? 1990 Hayes Microcomputer Products, Inc. All rights reserved.


Table of Contents
Chapter One: The Hayes Standard AT Command Set

1.1 AT Command Listing
A -- Answer Command
B -- Select Communication Standard
C -- Carrier Control Selection
D -- Dial Command (and dial modifiers)
E -- Command State Character Echo Selection
F -- On-line State Character Echo Selection
H -- Hook Command Options
I -- Internal Memory Tests
L -- Speaker Volume Level Selection
M -- Speaker On/Off Selection
N -- Negotiation of Handshake Options
O -- On-Line Command
P -- Select Pulse Dialing Method
Q -- Result Code Display Options
Sr= -- Write to an S-Register
Sr? -- Read an S-Register
T -- Select Tone Dialing Method
V -- Result Code Format Options
W -- Negotiation Progress Message Selection
X -- Call Progress Options
Y -- Long Space Disconnect Options
Z -- Soft Reset Command
&B -- V.32 Auto Retrain Options
&C -- Data Carrier Detect Options
&D -- Data Terminal Ready Options
&F -- Recall Factory Profile
&G -- Guard Tone Selection
&J -- Jack Type Selection (Auxiliary Relay Options)
&K -- Local Flow Control Options
&L -- Line Type Selection (Dialup/Leased)
&O -- PAD Channel Selection
&Q -- Communications Mode Options
&R -- RTS/CTS Options
&S -- Data Set Ready Options
&T -- Test Options
&U -- Trellis Coding Options
&V -- View Configuration Profiles
&W -- Write Active Profile to Memory
&X -- Synchronous Transmit Clock Source
&Y -- Select Stored Profile For Hard Reset
&Zn=x -- Store Telephone Number

1.2 Result Code Listing
1.2.1 Command Response and Call Progress Monitoring
0 -- OK
1 -- CONNECT
2 -- RING
3 -- NO CARRIER
4 -- ERROR
5 -- CONNECT 1200
6 -- NO DIALTONE
7 -- BUSY
8 -- NO ANSWER
10 -- CONNECT 2400
11 -- CONNECT 4800
12 -- CONNECT 9600
14 -- CONNECT 19200
22 -- CONNECT 1200/75
23 -- CONNECT 75/1200
28 -- CONNECT 38400
1.2.2 Negotiation Progress Messages
40 -- CARRIER 300
44 -- CARRIER 1200/75
45 -- CARRIER 75/1200
46 -- CARRIER 1200
47 -- CARRIER 2400
48 -- CARRIER 4800
50 -- CARRIER 9600
66 -- COMPRESSION: CLASS 5
67 -- COMPRESSION: V.42BIS
68 -- COMPRESSION: ADC
69 -- COMPRESSION: NONE
70 -- PROTOCOL: NONE
71 -- PROTOCOL: ERROR-CONTROL/LAP-B
72 -- PROTOCOL: ERROR-CONTROL/ LAP-B/HDX
73 -- PROTOCOL: ERROR-CONTROL/LAP-B/AFT
74 -- PROTOCOL: X.25/LAP-B
75 -- PROTOCOL: X.25/LAP-B/HDX
76 -- PROTOCOL: X.25/LAP-B/AFT
77 -- PROTOCOL: LAP-M
78 -- PROTOCOL: LAP-M/HDX V.42
79 -- PROTOCOL: LAP-M/AFT
80 -- PROTOCOL: ALT
91 -- AUTOSTREAM: LEVEL 1
92 -- AUTOSTREAM: LEVEL 2
93 -- AUTOSTREAM: LEVEL 3
1.2.3 Information Text (INFO-TEXT)

1.3 S-Register Listing
S0 -- Ring to Answer After
S1 -- Ring Count
S2 -- Escape Sequence Character
S3 -- Carriage Return Character
S4 -- Line Feed Character
S5 -- Backspace Character
S6 -- Wait Before Blind Dialing
S7 -- Wait for Carrier after Dialing
S8 -- Duration of Delay for Comma Dial Modifier
S9 -- Carrier Detect Response Time
S10 -- Delay Between Lost Carrier and Hang Up
S11 -- Multi-Frequency Tone Duration
S12 -- Escape Sequence Guard Time
S18 -- Modem Test Timer
S25 -- DTR Detection
S26 -- RTS to CTS Interval
S30 -- Inactivity Time-out
S33 -- AFT Options
S36 -- Negotiation Failure Treatment
S37 -- Desired DCE Line Speed
S38 -- Delay Before Forced Hang up
S44 -- Asynchronous Framing Technique Selection
S46 -- Error-Control Protocol Selection
S48 -- Enabling/Disabling Feature Negotiation
S49 -- ASB buffer size lower limit
S50 -- ASB buffer size upper limit
S53 -- Global PAD Configuration
S63 -- Leased line carrier level
S69 -- Link Layer Window Size
S70 -- Maximum Number of Retransmissions
S71 -- Link Layer Time-out
S72 -- Loss of Flag Idle Time-out
S73 -- No Activity Time-out
S74, S75 -- Minimum Incoming Logical Channel Number (LCN)
S76, S77 -- Maximum Incoming Logical Channel Number (LCN)
S78, S79 -- Outgoing Logical Channel Number (LCN)
S80 -- Packet Layer N20 Parameter
S81 -- Packet Layer T20 Parameter
S82 -- Break Signaling Technique
S84 -- Adaptive start up negotiation (ASU)
S85 -- ASU Negotiation Report
S86 -- Connection Failure Cause
S92 -- MI/MIC Options
S93 -- V.25bis DTE interface speed
S94 -- Command Mode Selector
S95 -- Negotiation Message Options
S97 - V.32 Automdode V.22/V.22bis Probe Timing
1.4 Additional Command Set Definitions
AT -- Command Prefix
+++ -- Escape Sequence
<CR> -- End-of-line Character
A/ -- Repeat Last Command

Chapter Two: V-series(TM) X.25 Communications

2.1 Modem Configuration for X.25 Communications
2.1.1 Controlling Automatic Feature Negotiation
2.1.2 PAD Channel Selection
2.2 PAD Configuration
2.2.1 PAD Commands
ACC -- Accept Call Command
CALL -- Call Command (and Call Facilities)
CHAN -- Channel Selection Command
CLR -- Clear Channel Command
EXEC -- Execute String Command
EXIT -- Exit PAD Command
INT -- Interrupt Command
PAR? -- Read Parameter Command
PROF -- PAD Profile Command
RESET -- PAD Reset Command
RPAR? -- Read Remote PAD Parameter Command
RSET -- Set Remote PAD Parameter Command
STAT -- Status of Current Channel Command
SET -- Set PAD Parameter Command
2.2.2 PAD Parameters
Parameter 1 -- PAD Recall Using a Character
Parameter 2 -- Echo
Parameter 3 -- Selection of Data Forwarding Signal
Parameter 4 -- Selection of Idle Timer Delay
Parameter 5 -- Ancillary Device Control
Parameter 6 -- Control of PAD Result Codes
Parameter 7 -- Action on Receipt of Break from Terminal
Parameter 8 -- Discard Output
Parameter 9 -- Padding after Carriage Return
Parameter 10 -- Line Folding
Parameter 11 -- Terminal Speed
Parameter 12 -- Flow Control of the PAD by Local Terminal
Parameter 13 -- Line Feed Insertion after Carriage Return
Parameter 14 -- Line Feed Padding
Parameter 15 -- Editing
Parameter 16 -- Character Delete
Parameter 17 -- Line Delete
Parameter 18 -- Line Display
Parameter 19 -- Editing PAD result codes
Parameter 20 -- Echo Mask
Parameter 21 -- Parity Treatment
Parameter 22 -- Page Wait
National Parameter 70 -- Streaming Data Forwarding
National Parameter 71 -- Character Format
National Parameter 72 -- Break Signal Timing
National Parameter 73 -- Break Signal Duration
National Parameter 74 -- Disable PAD Parameter by the Remote PAD
National Parameter 100 -- Default Maximum Packet Size
National Parameter 101 -- Default Maximum Window Size
National Parameter 103 -- Reset Request Response Timer
National Parameter 104 -- Clear Request Response Timer
National Parameter 105 -- Interrupt Response Time
National Parameter 106 -- Reset Request Retransmission Counter
National Parameter 107 -- Clear Request Retransmission Counter
National Parameter 108 -- Channel Allocation Parameter
2.3 PAD Profiles
Factory-Set Profile
CCITT Simple Standard Profile
CCITT Transparent Standard Profile
Error-Control/LAP-B Profile
2.4 Typical X.25 Scenarios

Appendix A: Communication Options

A.1 Transmission and DTE Types
A.1.1 Asynchronous Transmissions
A.1.2 Synchronous Transmissions
A.2 Communication Modes -- &Q
A.2.1 Asynchronous Mode -- &Q0
A.2.2 Synchronous Mode 1: sync/async -- &Q1
A.2.3 Synchronous Mode 2: stored number dial -- &Q2
A.2.4 Synchronous Mode 3: manual dial with data/talk switch -- &Q3
A.2.5 Synchronous Mode 4: Hayes AutoSync -- &Q4
A.2.6 Error-Control Mode -- &Q5
A.2.7 Asynchronous Mode with Automatic Speed Buffering (ASB) -- &Q6

Appendix B: Troubleshooting Tips

B.1 The Communication Link
B.2 Troubleshooting the Process
B.2.1 Problems in Getting Started
B.2.2 Problems Encountered During Communications
B.3 Special Environment Considerations
B.3.1 Custom Modem Setup for Mainframe or Minicomputer Host
B.3.2 Custom Modem Setup for Telephone System Requirements
B.4 Using AT Commands to Test Modem Circuits
B.4.1 Available Tests
B.4.2 Performing a Test
B.4.3 Testing with Analog Loopback
B.4.4 Testing with Digital Loopback
B.4.5 Testing the Tone Dialer -- &T2
B.5 Testing the Cable
B.5.1 Cable Quality
B.5.2 Checking Cable Signals -- &T19
B.6 Testing Internal Memory

Appendix C: Modem-to-DTE Interface

C.1 EIA 232-D/CCITT V.24 Interfaces
C.2 Signals Used in the EIA 232-D Interface
C.3 EIA 232-D Signal Definitions
C.4 Modem Interface Connector

Appendix D: Modem Application Development

D.1 Modem Identification
D.2 Result Code Recognition
D.3 Modem Preparation
D.3.1 Reset
D.3.2 Setup
D.4 Connect Processing
D.4.1 Originating a Call
D.4.2 Answering a Call
D.4.3 Using the CD Line
D.4.4 Aborting a Connect Request
D.5 Carrier Loss Detection
D.5.1 Using the CD Line
D.5.2 Scanning the Incoming Data Stream
D.6 Escape and Hang Up
D.6.1 Escaping the Modem to Command State
D.6.2 Using DTR to Escape or Hang Up
D.7 Modem Re-configuration
D.8 Timing Considerations
D.8.1 Programming for Time
D.8.2 When to Consider Time
D.8.3 Recovering When "Out of Sync"
D.9 General Tips and Techniques

Index

=============================================================================

Introduction

This Technical Reference for Hayes Modem Users offers additional information
about the Hayes Standard AT Command Set for users who want to use the command
set to control the modem, rather than using full-featured software. To help
you do this, the complete command set is defined in greater detail than that
provided on the AT Command Set Reference Card that accompanied your modem. All
of the commands in the set are included in this document.

You'll also find additional discussions on some of the more complicated
options, such as synchronous communications, and the interactions between
communication standards, negotiation commands, and modem speeds. In addition,
information about the connections between the modem and the DTE (computer or
terminal) is included.

With the information provided here, you should be able to configure your modem
with AT commands for a variety of communication environments. If you are just
starting out with communications programming, this reference should provide
you with sufficient tips to address the modem's features through a software
program of your own.

If this reference seems more technically oriented than you anticipated, we
suggest that you purchase one of Hayes Smartcom Products. Any of these fine
programs will fully control the modem for almost any telecommunication
requirements.

*****************************************************************************
Who Should Use this Reference

Users of full-featured communications software such as Hayes Smartcom Products
will not need this reference.

This reference is provided for...

* users of communications software packages which require the user to enter
modem configuration strings.

* users who will be installing and operating Hayes modems in a non-PC
environment.

* users who control their modems directly with terminal emulation software.

* technical personnel responsible for custom installations and applications.

Additional information is available for communications software developers. If
you are, or would like to become, a registered Hayes Software Developer, you
may receive additional technical material on Hayes products. For information
on qualification and registration procedures, contact your nearest Hayes
Customer Service facility. (Refer to the Customer Service Information folder
provided with your modem for location and telephone number.)

*****************************************************************************
How this Reference is Organized

This reference is divided into two chapters and four appendices:

Chapter One: The Hayes Standard AT Command Set...
includes definitions of the Hayes AT Command Set including the commands,
result codes, and S-registers.

Chapter Two: V-series(TM) X.25 Communications...
includes definitions of the commands used for X.25 packet switched
communications, PAD and National Parameters, and listings for four PAD
profiles.

Appendix A: Communication Options...
describes the various asynchronous and synchronous transmission modes
supported by Hayes modems and includes a discussion of the AT commands related
to these modes.

Appendix B: Troubleshooting Tips...
provides special environmental considerations and offers suggestions for
remedying problems in modem communications.

Appendix C: Modem-to-DTE Interface...
discusses the requirements and capabilities of the modem's data terminal
equipment (DTE) interface.

Appendix D: Modem Application Development...
offers suggestions for developing applications software using the AT command
set.

*****************************************************************************
How to Use this Reference

The commands and procedures described in this reference are intended for use
with a program that provides a command line interface to the modem. or if the
modem is connected to an asynchronous terminal to which commands can be
entered and sent through the serial port to the modem. Although commands are
not required when using Hayes Smartcom(TM) products, Smartcom EZ(TM), Smartcom
II(TM), and Smartcom III(TM) all support a command line interface to the
modem. Refer to the Smartmodem Product User's Reference or V-series System
Product User's Reference (depending on the modem you purchased) for
descriptions of the features that are enabled by the AT Commands and S-
Registers defined here. These user's references both explain how to issue AT
Commands, and read and set S-Registers/PAD Parameters.

Please note that this reference is not a list of the features supported by
your modem, but a general guide to the Hayes AT Command Set as used to control
Hayes modems. For a list of features supported by your modem, refer to the
documentation included with your modem. This Modem Technical Reference is a
supplement to the documentation provided with your modem, not a replacement.

=============================================================================

Chapter One:
The Hayes Standard AT Command Set

This chapter is divided into three sections: AT commands, Result Codes, and S-
Registers. The first section defines individual AT commands. Commands are
listed in alphabetically for easy reference. The second section defines the
Result Codes that can be returned by Hayes modems. These are listed in numeric
order. The third section defines Hayes Smartmodem Registers. These, too, are
in numeric order. For completeness, definitions of the AT command prefix, the
end-of-line character, and other information related to the Hayes Standard AT
Command Set are also included.

For the factory setting and available options/ranges for commands and
registers, use the AT Command Set Reference Card provided with your modem.
Unless a command, register, or result code is listed on this card, it is not
supported by your modem, although it appears in this document.

*****************************************************************************
1.1 AT Command Listing
Each step in the evolution of Hayes modems has added to the feature set that
has enhanced the definition of the Hayes standard. The diagram below shows the
major steps in the process.

A -- Answer Command
The A command instructs the modem to go off hook and respond to an incoming
call, then handshake with the remote modem. When the modem returns the RING
result code, issue ATA<CR>. The modem will send an answer carrier signal to
the originating modem and wait for an originate carrier signal. When the modem
receives the carrier from the originating modem, the modems go through a
handshaking process then go on-line. The modems return the CONNECT XXXXX
result code. If no carrier signal is received within the time specified in
Register S7, the modem hangs up, returns the NO CARRIER result code, and
enters the command state.

B -- Select Communication Standard
The B command is used to specify the desired communications standard setting
at a particular modem line speed. Because options can select between groups of
options, more than one combination of communication standard and speed can be
selected. For example, you can issue B1 and B16; both will be in effect
because they do not reference the same line speed. However, choosing B1 then
B5 selects B5, and replaces B1 as the standard for 1200 bps communications.
The most recent selection chosen from any given group will be in effect for
that parameter group.

GROUP 1
Values Description
-----------------------------------------------------------------------------
0 or none V.22 when modem is at 1200 bps
1 U. S. Domestic 212A when modem is at 1200 bps
2 V.23 R1200/T75 bps ASB when modem is at T1200/R1200 bps
3 V.23 T1200/R75 bps ASB when modem is at T1200/R1200 bps
4 V.23 T1200/R75 bps split speed when modem is at T1200/R75 bps
5 V.23 1200 bps half duplex when modem is at T1200/R1200 bps

GROUP 2
Values Description
-----------------------------------------------------------------------------
10 V.23 R1200/T75 bps split speed when modem is at R1200/T75 bps
11 U. S. Domestic 212A when modem is at 1200 bps

GROUP 3
-----------------------------------------------------------------------------
Values Description
15 V.21 when modem is 110/300 bps
16 U. S. Domestic 103 when modem is at 110/300 bps

GROUP 4
-----------------------------------------------------------------------------
Values Description
20 V.23 R600/T75 bps ASB when modem is T600/R600 bps
21 V.23 T600/R75 bps ASB when modem is T600/R600 bps
22 V.23 T600/R75 bps split speed when modem is T600/R75 bps
23 V.23 600, half duplex when modem is 600 bps

GROUP 5
-----------------------------------------------------------------------------
Values Description
30 V.22bis when modem is 2400 bps
31 V.27ter when modem is 2400 bps

GROUP 6
-----------------------------------------------------------------------------
Values Description
40 V.27ter when modem is 4800 bps
41 V.32 full duplex when modem is 4800 bps
42 V.32 half duplex when modem is 4800 bps
44 V.23 half duplex when modem is 4800 bps

GROUP 7
-----------------------------------------------------------------------------
Values Description
50 V.29 HDX when modem is 7200 bps

GROUP 8
-----------------------------------------------------------------------------
Values Description
60 V.32 full duplex when modem is 9600 bps
61 V.32 half duplex when modem is 9600 bps
63 V.29 half duplex when modem is 9600 bps

C -- Carrier Control Selection
The C command is used by some Hayes modems, such as Smartmodem 1200, to
control the transmit carrier. In these instances, C0 instructs the modem not
to send carrier (i.e., puts modem in a receive-only mode). High-speed modems
(those capable of speeds greater than 1200 bps) accept C1 without error in
order to assure backward compatibility with communications software that
issues C1. However, these modems do not support C0.

C0 - Transmit carrier always off (not supported in high-speed modems)

C1 - Normal transmit carrier switching

D -- Dial Command
The D command places the modem in originate mode; it then functions as an
auto-dialer. Whether the command is issued on a line by itself, or followed
immediately by the telephone number, it must be preceded by the AT prefix and
terminated with a <CR> The dial string is a combination of dial digits and
dial modifiers. If the modem is off hook, it will neither initially wait nor
attempt to detect dial tone before proceeding. The D command is not valid when
the modem is on-line or if either &Q2 or &Q3 is in effect. Parentheses and
hyphens in a dial string are ignored by the auto-dialer, but are counted as
characters in the 255-character command buffer.

Result Codes Description
-----------------------------------------------------------------------------
BUSY If X3 or X4 are selected or W dial modifier is used and busy
is detected

NO DIALTONE If X2 or X4 are selected and 1 second of dial tone is not
detected within 5 seconds If W dial modifier is processes and
then 3 seconds of dial tone is not detected within the time
specified by S7

ERROR If the S=n dial modifier is processed and the n value is out
of range (refer to the S dial modifier in this section) or if
the total number of characters in the command line plus the
stored dial string exceeds 255 characters

NO ANSWER If @ dial modifier is used and then no signal is detected
for at least five continuous seconds before the time
specified by S7

OK If aborted by DTR ON-to-OFF whenever certain combinations of
&D and &Q are in effect. Refer to the &D command in this
chapter for details. If the ; dial modifier is processed in
the dial string. If aborted by a character from the DTE
during the dialing process

Dial Modifiers
Dial modifiers can be combined with the dial (D) command to perform a series
of operations within a single command line. For example,
ATDT9W1552368!@#71234; <CR> instructs the modem to use tone dialing to access
a number outside a PBX, wait for dial tone, dial the number 1552368, enter a
timed break recall, wait for quiet answer, and issue the PBX transfer code #7
before dialing extension number 1234, then return to the command state before
initiating the handshake.

0-9 A B C D # * -- Digits/Characters for Dialing
The digits/characters 0-9 A B C D # * are used to specify what numbers the
modem will dial. The characters A B C D # * represent specific tone pairs and
therefore can be used only when tone dialing is selected; these symbols are
ignored when pulse dialing is used.

P -- Pulse Dialing Method
The P dial modifier selects the pulse method of dialing. The P modifier can be
issued with the dial command, or alone, to indicate the method used for
subsequent dialings. The factory-set method is pulse. Once this method is
selected, it is used until the other is chosen, or the modem is reset.

T -- Tone Dialing Method
The T dial modifier selects the tone method of dialing. The T modifier can be
issued with the dial command, or alone, to indicate the method used for
subsequent dialings. Once this method is selected, it is used until the other
is chosen, or the modem is reset.

W -- Wait for Second Dial Tone
The W dial modifier instructs the modem to wait for dial tone before
proceeding. If dial tone detection is not completed within the preset time
limit, the modem hangs up and returns the NO DIALTONE result code. Some PBXs
do not return a secondary proceed indication (second dial tone). The W dial
modifier is not effective in such systems and should not be used.

, -- Delay Processing of Next Character
The comma (,) dial modifier in a dial string causes the modem to pause before
processing the next character or symbol in the command line. The duration of
the pause is determined by the value held in Register S8. The comma is
frequently inserted after the 9 (digit generally used to gain outside access
from a PBX) to allow sufficient time for the dial tone to occur before the
modem dials the telephone number.

@ -- Wait for Quiet Answer
The @ dial modifier instructs the modem to listen for five seconds silence
before continuing. The number of seconds the modem waits for silence is
determined by the value held in S7. This modifier is useful when dialing
telephone systems that produce no dial tone. If a five-second silence has not
been detected within the period set in S7, the modem hangs up and returns the
NO ANSWER result code. If it detects the five seconds of silence, the modem
processes the remaining characters in the dial string. Note that the modem
does not listen for silence until it first detects dial tone and some other
signal, such as a ringing signal, that lasts longer than 210 milliseconds. For
example, to dial 1552368, wait for a quiet answer, then dial a security code
85939, wait for a second dial tone, and dial extension 423 you would issue the
following command: ATDT 1552368 @ 85939 W 423 <CR>.

! -- Timed Break Recall (Hookflash)
The ! dial modifier issues a timed break recall signal, which causes the modem
to hang up for 75 milliseconds, then reconnect. This feature can be used to
access such PBX features as call transfer.

; -- Return to Command State after Dialing
The semicolon (;) dial modifier, used only at the end of a command line (just
before the <CR>), instructs the modem to return to the command state
immediately after dialing, without breaking the connection.

The ; is useful when calling an electronic service, such as that offered by a
bank, that permits you to use tones to transmit numbers once a connection has
been established. The modem can send tones even if your telephone cannot. The
example below illustrates the use of the semicolon modifier in communications
with an electronic banking service.

ATDP 1552368; <CR> Dials bank using pulse method

OK Command executed, but keeps the modem in command state (no carrier
handshake takes place)

ATDT 4768; <CR> Sends an ID code via tones and maintains modem in command
state.

OK Modem in command state; command executed.

In this example, the ; differs from the +++ in that the escape sequence places
the modem in the command state only when two modems have completed a
handshake. The semicolon keeps the modem in command state; no CONNECT XXXXX
result code is displayed.

DS=n -- Dialing a Stored Telephone Number
A stored number can be dialed from an asynchronous terminal by following the
dial (D) command with the S modifier, an equal sign, and the location of the
stored number (see &Zn=x command at the end of this section). The format of
the modifier is S=n, where n is location 0-3. If ATDS=2<CR> were issued, for
example, the modem would dial the string stored in memory location three of
its "telephone book."

R -- Originate a Call in Answer Mode
The dial modifier R (Reverse mode) enables the modem to dial an originate-
only modem by placing a call in answer mode. This modifier must be entered at
the end of the dialling (D) command string, before the <CR>.
The R modifier directs the modem to act as if it had been sent an A command in
that part of the command string.

E -- Command State Character Echo Selection
The E command determines whether characters are echoed to the DTE from the
modem when it is command state. Some computers and terminals do not send the
characters you type to the screen; they only transmit them to the remote
system through the serial port. In this case, if Command State character echo
were not enabled by the modem, you would be unable to see what you type. If
the DTE does echo the characters you type in command state, and this function
is enabled in the modem, each character typed will appear twice.

E0 Command state character echo disabled

E1 Command state character echo enabled

F -- On-line State Character Echo Selection
The F command is used by some Hayes modems, such as Smartmodem 1200, to
determine whether characters are echoed to the DTE from the modem when it is
in the on-line state. High-speed Hayes modems do not support the F0 option.
However, because the F command may be issued by older communications software,
F! is supported to assure backwards compatibility.

F0 On-line character echo enabled (where not supported, ERROR result code is
returned)

F1 On-line character echo disabled

H -- Hook Command Options
The H command provides control over the line relay. Its most common use is
with the H0 option to initiate the Hangup Process and place the modem on
hook.H1 takes the modem off hook.

H0 Execute the Hangup process if in the "on-line" command state or the local
analog loopback and analog loopback selftest conditions

H1 Go off hook; do not execute the Handshake Process

I -- Internal Memory Tests
The various forms of the I command instruct the modem to query its memory for
information about itself. the results of these tests are frequently used by
programmers for the purpose of determining compatibility with software.
Because these commands request information about the modem's firmware, they
are not run when a connection has been established with a remote modem.

I0 -- display product code
This option reports the product code of the modem to the DTE. The modem
produces information text dependent upon its highest DCE line speed. The
responses below are examples:

Result Codes..Description
-----------------------------------------------------------------------------
300 Smartmodem 300(TM)

120 Smartmodem 1200(TM), Smartmodem 1200B(TM),
Smartmodem 1200C(TM), Smartmodem 1200A(TM)

240 Smartmodem 2400(TM), Smartmodem 2400B(TM),
Smartmodem 2400P(TM), Smartmodem 2400Q(TM),
Smartmodem 2400M(TM), V-series Smartmodem 2400,
V-series Smartmodem 2400B,
V-series Smartmodem 2400P,
V-series Smartmodem 2400M

960 Smartmodem 9600, V-series Smartmodem 9600(TM),
V-series Smartmodem 9600B(TM),
V-series Smartmodem 9600P(TM),
V-Series ULTRA Smartmodem 9600

I1 -- display ROM checksum
The I1 command instructs the modem calculate the value of the ROM checksum.
The response is a 3-digit decimal information text, the sum of all of the
bytes in ROM.

I2 -- perform ROM checksum test
This command instructs the modem to verify the ROM checksums. Depending on
whether the ROM checksum has been found to be correct, the modem produces an
info text that resembles a verbose result code. The modem memory test compares
the ROM checksum and tests it against the correct sum, also stored in ROM.
Rather than returning a value in the way the I1 one command does, the I2
command generates a result code. When the checksum is valid, the response is:
OK. When the ROM checksum fails, the modem responds with ERROR.

I4 -- identify product features
The capabilities and features of the modem are encoded into a string of info-
text that consists of several strings that are ASCII character representations
of hex numerals which are bit-mapped. The first character of each string
identifies which bit maps are in that string. For example, the "a-string"
starts with a lower case "a" and identifies most of the basic modem
capabilities such as modulation standards supported and support for AutoSync.

Since the following tables identify features for Hayes modem products, the
values included here are subject to change and expansion.

The I4 info-text displayed:

a097800C204C264<CR><LF> <CR><LF>bF60410000<CR><LF>
<CR><LF>r1031111111010000<CR><LF> <CR><LF>r3000111010000000

surrounded by additional <CR> and <LF> characters as are required by the V
command option in effect. According to convention, all <CR> and <LF>
characters are defined by S3 and S4, respectively. The meanings of the a, b,
r1, and r3 strings currently defined are described below.

I4 "a" String..
The first string, the a-string, is encoded by characters, hex symbols
following the "a" character, each of which represents four bits.

a D1 D2 D3 D4 D5 D6 D7 D8 D9 D10 D11 D12 D13 D14 D15 D16 D17 D18

D1, D2 Reserved
D3 Bit 3: Indicates modem based on SM1200FE commands
Bit 2: Indicates modem based on SM2400 commands
Bit 1: Indicates that modem supports &J commands
Bit 0: Indicates that modem supports &L commands
D4 Bit 3: Indicates that modem supports AutoSync (&Q4)
D5 Bit 3: Plug-in board modem product
Bit 2: Stand alone modem product
Bit 1: Supports &H0 through &H4
Bit 0: Supports &I0 through &I4
D7 Bit 3: Supports V.22 at 1200 bps
Bit 2: Supports Bell 212A
Bit 1: Supports ASB (&Q6) in V.23 75xmt/1200rcv
Bit 0: Supports ASB (&Q6) in V.23 1200xmt/75rcv
D8 Bit 3: Supports V.23 1200xmt/75rcv
Bit 2: Supports V.23 1200 half duplex
Bit 1: Supports V.23 75xmt/1200rcv
Bit 0: Supports V.23 75xmt/600rcv
D9 Bit 3: Supports V.21 100/300
Bit 2: Supports ASB (&Q6) in V.23 75xmt/600rcv
Bit 1: Supports ASB (&Q6) in V.23 600xmt/75rcv
Bit 0: Supports V.23 600xmt/75rcv
D10 Bit 2: Supports V.22bis at 2400 bps
Bit 1: Supports V.27ter at 2400 bps
Bit 0: Supports V.27ter at 4800 bps
D11 Bit 3: Supports V.32 full duplex at 4800 bps
Bit 2: Supports V.32 half duplex at 4800 bps
Bit 1: Supports (Reserved) at 4800 bps
Bit 0: Supports V.29 half duplex at 4800 bps
D12 Bit 3: Supports V.29 half duplex at 7200 bps
Bit 2: Supports V.32 full duplex at 9600 bps
Bit 1: Supports V.32 half duplex at 9600 bps
Bit 0: Supports (Reserved) at 9600 bps
D13 Bit 3: Supports V.29 half duplex at 9600 bps
Bit 2: Supports Bell 103 110/300 bps
D15 Bit 1: Supports S95 Bit 5 for COMPRESSION: result code
Bit 0: Supports S95 Bit 4 for AUTOSTREAM: result code
D16 Bit 3: Supports S95 Bit 3 PROTOCOL: result code
Bit 2: Supports S95 Bit 2 CARRIER result code
Bit 1: Supports S95 Bit 1 CONNECT/ARQ result code
Bit 0: Supports S95 Bit 0 CONNECT XXXX (for DCE rate)

I4 "b" String
The second string, the b-string, is composed of the ASCII character "b"
followed by nine bytes (D1-D9). The bit map for each byte is defined as
follows:

b D1 D2 D3 D4 D5 D6 D7 D8 D9

D1 Bit 3: V.42 Alternate Protocol Supported
Bit 2: V.42 LAPM Protocol Supported
Bit 1: X.25 Protocol Supported
Bit 0: LAPB (Original V-series Point-to-Point error-control) Protocol
Supported

D2 Bit 3: Reserved (should be set to zero)
Bit 2: MNP Class 5 Supported
Bit 1: V.42bis Supported
Bit 0: Compression Through the X.25 Network
Supported

D3/D4 These combine to indicate the number of AutoStream Type A channels which
are supported. The formula (D3*16 + D4) is used. Zero means AutoStream
is not supported

I4 "r1" and "r3" strings
These ID strings allow software to determine the available speeds that may be
used to send AT commands. The r1-string contains a bit map that indicates at
which DTE rates the autobaud process is supported.

The r3-string is issued if synchronous DTE speeds are supported. The map
indicates which DTE rates are supported in Synchronous modes. Each r-string
begins with the lower case letter "r" and may be followed by as many as 39
additional characters, not counting <CR><LF>'s that will be used to separate
them from other strings. Those 39 additional characters are limited to the
ASCII-HEX alphabet 0-9 and A-F.

After the two lead-in characters (i.e., r<n>), all subsequent characters
contain the DTE rate maps. All maps have the same mapping for convenience to
software. (Refer to the chart below.) Not all bit assignments are possible:
for example, the split speeds have no meaning in the r3 synchronous map and
are always filled with zeros.

In r1, if the bit is filled with a 1, the corresponding DTE rate is supported
for sending AT commands to the device. A zero indicates that DTE rate is not
supported for AT commands.

In the r3 map, the bits simply indicate which DTE rates are supported for
synchronous operation on-line. This does not indicate, however, the supported
rates for synchronous V.25bis commands.

Split speeds if available are marked in the r1 string only when the
appropriate B command option has been selected. Future expansion of these
strings may include new speeds that are not in strict ascending order.

DTE Rate Bit Map for r1 and r3 Strings

Character Bit # DTE Rate
-----------------------------------------------------------------------------
3:1 bit 0 45.45 bps
3:2 bit 1 50
3:4 bit 2 75
3:8 bit 3 75/600 (xmt is 75, rcv is 600)

4:1 bit 4 75/1200
4:2 bit 5 110
4:4 bit 6 134.5
4:8 bit 7 50

5:1 bit 8 300
5:2 bit 9 450
5:4 bit 10 600
5:8 bit 11 600/75

6:1 bit 12 1200
6:2 bit 13 1200/75
6:4 bit 14 1800
6:8 bit 15 2000

7:1 bit 16 2400
7:2 bit 17 3000
7:4 bit 18 3600
7:8 bit 19 4200

8:1 bit 20 4800
8:2 bit 21 5400
8:4 bit 22 6000
8:8 bit 23 6600

9:1 bit 24 7200
9:2 bit 25 7800
9:4 bit 26 8400
9:8 bit 27 9000

10:1 bit 28 9600
10:2 bit 29 12000
10:4 bit 30 14400
10:8 bit 31 16800

11:1 bit 32 19200
11:2 bit 33 21600
11:4 bit 34 24000
11:8 bit 35 26400

12:1 bit 36 28800
12:2 bit 37 31200
12:4 bit 38 33600
12:8 bit 39 36000

13:1 bit 40 38400
13:2 bit 41 43200
13:4 bit 42 48000
13:8 bit 43 52800

14:1 bit 44 56000
14:2 bit 45 57600
14:4 bit 46 62400
14:8 bit 47 64000

15:1 bit 48 67200
15:2 bit 49 72000
15:4 bit 50 76800
15:8 bit 51 81600

16:1 bit 52 86400
16:2 bit 53 91200
16:4 bit 54 96000
16:8 bit 55 100800

17:1 bit 56 105600
17:2 bit 57 110400
17:4 bit 58 115200
17:8 bit 59 reserved ("0")

L -- Speaker Volume Level Selection
The L command setting determines the volume level of the speaker, when
supported by the modem. Some modems use the speaker of the computer in which
they are installed. In this case, where supported, the L command adjusts the
speaker volume as indicated in the options below for the duration of the
communications session.

L0 Low speaker volume

L1 Low speaker volume

L2 Medium speaker volume

L3 High speaker volume

M -- Speaker On/Off Selection
The M command setting determines whether the speaker function of the modem is
on or off. Some modems use the speaker of the computer in which they are
installed. In this case, where supported, the M command turns the speaker on
an off as indicated in the options below for the duration of the
communications session.

M0 Speaker always off.

M1 Speaker on until carrier detected.

M2 Speaker always on; stays on after carrier is detected.

M3 Speaker off as digits are dialed, but on during ringback and on until
carrier signal is detected.

N -- Negotiation of Handshake Options
The N command selects whether or not the local modem performs a negotiated
handshake with a remote modem when the communications speeds of the two modems
are different. The options for this command are useful when a particular speed
and communication standard are required. Both symmetrical and asymmetrical
protocols can be selected. Note that the options supported by for this command
vary significantly between country-specific implementations.

N0 When originating or answering, handshake only at
the communication standard specified by S37 and B command

N1 When originating, begin handshake at the communication standard specified
by the B command and S37. During handshake fallback to a lower speed may occur
When answering, negotiate according to the following sequence of communication
standards: V.32, Ping Pong, V.22bis, V.22, and V.21

N2 When originating, begin handshake at the communication standard specified
by the B command and S37. During handshake fallback to a lower speed may occur
When answering, negotiate according to the following sequence of communication
standards: V.32, Ping Pong, V.22bis, V.22, V.23, and V.21

N3 When originating, handshake only at the communication standard specified
by S37 and B command. When answering, negotiate according to the following
sequence of communication standards: V.32, Ping Pong, V.22bis, V.22, and V.21

N4 When originating, handshake only at the communication standard specified
by S37 and B command. When answering, negotiate according to the following
sequence of communication standards: V.32, Ping Pong, V.22bis, V.22, V.23, and
V.21

N5 When originating, begin handshake at the communication standard specified
by B command and S37. During handshake fallback to a lower speed may occur
When answering, handshake only at the communication standard specified by S37
and B.

O -- On-Line Command
If the modem is in the on-line command state, then the O0 command causes it to
go to the on-line state of the previously established connection. If the O1
command is issued (modems supporting 2400 bps and higher), the modem goes to
on-line state and retrains its adaptive equalizer.

If the modem is off hook in the idle state, then O0 and O1 (modems supporting
2400 bps and higher) cause it to go to the handshaking state. Originate or
answer mode is determined from the last D or A command or R dial modifier that
was selected. If the modem is on-hook, idle, or if the modem is in a test
condition, a command execution error results. Note that O1 serves a different
purpose in lower speed modems (e.g., Smartmodem 1200 and Smartmodem 300).

P -- Select Pulse Dialing Method
The P command instructs the modem to use pulse dialing. Dialed digits will be
pulse dialed until a T command or dial modifier is received. This command is
also discussed under Dial modifiers, in conjunction with the D command.

Q -- Result Code Display Options
The Q command controls whether the result codes generated by the modem are
displayed to the attached DTE. Some software does not function properly when
modem responses are returned.

Q0 Result codes enabled

Q1 Result codes disabled

Q2 Disables the RING result code. In answer mode, also disables CONNECT and
NO CARRIER result codes

Sr -- Addresses an S-Register
The Sr command points to a specific S-Register. Subsequent commands, such as ?
and =, may read or write to the selected register. Note that S0 is the
factory-set pointer for this command, and that the S-address is not stored in
a stored profile. Thus, the &F, Z0, and Z1 commands will select S0 and
possibly affect subsequent ? and = commands unless they are preceded by an Sr
command. Note that the value of S0 is of course storable; it is the pointer to
S0 that is not storable.

Sr=n -- Write To An S-Register
The Sr=n command is writes a value to a specified register. The value of n is
written to the S-Register specified by r, overriding the previous value. If no
n suffix is present, the address previously selected via Sr is used. If no n
suffix is present, the value 0 is written.

Sr? -- Read An S-Register
The contents of S-Register r are sent to the DTE as three decimal digits. This
informational text response is formatted with <CR><LF> as determined by the V
command currently in effect. If no n (suffix) is present, the last register
selection is assumed. (Refer to the Sr command.) On power up, the factory-set
selection is 0. Note: ? is interpreted by the modem as Sr?.

T -- Select Tone Dialing Method
The T command instructs the modem to send DTMF tones while dialing. Dialed
digits will be tone dialed until a P command or dial modifier is received.
This command is also discussed under Dial modifiers, in conjunction with the D
command.

V -- Result Code Format Options
The V command determines whether result codes (including call progress and
negotiation progress messages) are displayed as numbers or words.

V0 Result codes displayed in numeric form

V1 Result codes displayed in verbose form

W -- Negotiation Progress Message Selection
The W command works in conjunction with S95 (where supported) to determine
which result codes will be used to describe the type of connection and
protocol, etc., that resulted from handshaking and negotiation.

The W command supports extended result codes in addition to the CONNECT result
code. When the modem is operated in error-control mode (&Q5 is in effect), W
command and S95 together allow the user to select these additional result
codes:

CARRIER
PROTOCOL
AUTOSTREAM
COMPRESSION
CONNECT

Any result codes enabled by the W command and S95 will be generated in the
order indicated above. If AutoStream is not being used, no AutoStream result
code is returned. Result codes not enabled by the W command option in effect
may be turned-on by setting certain bits in S95. The W command options below
are available when S95 is configured for any setting other than the factory-
setting of 0.

W0 CONNECT result code reports DTE speed, and if S95=0, then disable all
extended result codes

W1 CONNECT result code reports DTE speed, and if S95=0, then enable the
CARRIER and PROTOCOL extended result codes

W2 CONNECT result code reports DCE speed, and if S95=0, then disable all
extended result codes

Refer to the S95 bit map description in the next section. Note that selecting
W0 and setting S95=12 is the same as selecting W1; and that selecting W0 and
setting S95=1 is the same as selecting W2. S95 cannot be configured to force
W2 to report DTE speed in the CONNECT result code; and that there is no
setting of S95 that will force W1 not to produce the CARRIER and PROTOCOL
result codes. S95 extends the functionality of the W command. The W command
with S95=0 (factory setting) maintains backwards compatibility with previous
V-Series System Products. However, selecting W0 and setting S95 as required
allows you to tailor result codes characteristics to your own requirements.

X -- Call Progress Options
The X command enables tone detection options used in the dialing process. As
these functions are enabled and disabled, the modem's result code reporting is
also affected. For this reason, this command is frequently used to control the
modem's range of responses; however, its primary function is that of
controlling the modem's call response capabilities. Result code definitions
are covered in the next section.

X0 Busy and dial tone detection are disabled. Only result codes 0-4 are
enabled. Only the CONNECT result code is permitted, and no indication of the
telephone line speed. This setting overrides any other result code selections
made with the W command and S95

X1 Busy and dial tone detection are disabled. Result codes 0-5 are enabled
and linespeed reporting with CONNECT XXXX messages. W command options and S95
are enabled

X2 Busy detection is disabled. Dial tone detection is enabled. Result codes
0-6 are enabled and linespeed reporting with CONNECT XXXX messages. W command
options and S95 are enabled

X3 Busy detection is enabled. Dial tone detection is disabled. Result codes
0-5 and 7 are enabled and linespeed reporting with CONNECT XXXX messages. W
command options and S95 are enabled

X4 Busy and dial tone detection are enabled. Result codes 0-7 are enabled and
linespeed reporting with CONNECT XXXX messages. W command options and S95
enabled

The @ and W dial modifier result codes are not affected by the X command in
effect. The @ dial modifier enables result codes 8 (NO ANSWER) and 7 (BUSY)
each time it occurs in the dial string. The W dial modifier enables result
codes 6 (NO DIALTONE) and 7 (BUSY) each time it occurs in the dial string.

Y -- Long Space Disconnect Options
The Y command determines if the modem will disconnect a call upon receiving a
long space (1.6 sec break) signal from the distant end. If Y1 is selected, the
modem will send a 4-second break (space) before going on hook when an H0
command is issued or, if &D2 is selected, when DTR goes off. Refer also to
register S82 for more information.

Y0 Disable long space disconnect

Y1 Enable long space disconnect

Z -- Soft Reset Command
The modem can be reset by issuing the Z. The command tells the modem to go on
hook and restore the selected stored profile. Any non-storable parameters
previously set by commands are returned to their factory settings. The modem
aborts execution of all commands following the Z command on the same command
line. Subsequent commands on the same line are ignored. Refer to the &W
command for description of which modem parameters are included in a stored
profile. Z0 recalls stored user profile 0, stored with &W0; Z1 recalls stored
user profile 1, stored with &W1.

Z0 Recall stored profile 0

Z1 Recall stored profile 1

&B -- V.32 Auto Retrain Options
The &B command is used to enable and disable auto retrain in V.32 mode. During
a V.32 or a V.22bis connection, the modem continually monitors line quality.
The &B command determines whether the modem ignores a line quality problem or
attempts to correct the situation by retraining. The selection made with this
command affects V.32 connections only.

&B and &B0 Disable V.32 Auto Retrain

&B1 Enable V.32 Auto Retrain

&C -- Data Carrier Detect Options
The &C command determines how the state of the DCD lead relates to the carrier
from the distant end. The command will take effect immediately when issued.
The behavior patterns for DCD depend on the specific &C and &Q commands in
effect. Also, DCD patterns depend on whether on-line operation is half or full
duplex. Finally, if &Q5 is in effect, DCD behavior depends on whether S10=255
or S10<255. DCD circuit operation is according to the descriptions below.

DCD Behaviors for Half-Duplex Operation
&C0 &C1 &C2
----------------------------------------
&Q1 E C C
&Q2 E C C
&Q3 E C C
&Q4 E C C
&Q5 A E A
&Q5 (S10=255) A C F

DCD Behaviors for Full-Duplex Operation
&C0 &C1 &C2
----------------------------------------
&QO A B D
&Q1 B B B
&Q2 B B B
&Q3 B B B
&Q4 B B B
&Q5 A E A
&Q6 A B D
&Q5 (S10=255) A B D

Table Legend:

A - The DCD circuit is ON at all times

B - DCD=0 in Idle, DCD tracks carrier in On-Line State with S9:
The DCD circuit is OFF while the connection attempt is being made. It goes
ON immediately after the CONNECT result code is issued, and goes OFF
immediately after loss of remote carrier. If the remote carrier is
restored and the S9 (carrier detect response time) delay is completed
before the S10 (lost carrier to hang-up) delay expires, then hang-up is
avoided and the DCD circuit goes ON again as the modem goes on-line.
Otherwise, DCD remains OFF during the hang-up process prior to the result
code message. If S10=255, hangup will not occur unless initiated by the
DTE.

C - DCD=0 in Idle, DCD tracks carrier in On-Line State without S9:
The DCD circuit is OFF when the modem is idle. It goes ON immediately
after the CONNECT result code is issued, and goes OFF immediately after
loss of remote carrier. If the remote carrier is restored, then DCD will
go ON regardless of the S9 value in effect.

D - DCD=1 in Idle, DCD tracks in On-Line with S9:
The DCD circuit is normally ON when the modem is idle, and it is ON while
the remote carrier is present and the modem is on-line. The signal goes
OFF immediately after loss of remote carrier. If the remote carrier is
restored, then DCD will go ON again regardless of S9. If the Hangup
Process is initiated by the DTE using DTR or issuing ATH<CR> from the
on-line state, then DCD will return ON just prior to the modem issuing the
OK result code. If S10<255 (lost carrier to hang-up delay) and a timeout
equal to S10 expires before the remote carrier is restored, then the
hang-up process begins during which DCD=0. DCD will return ON again just
prior to the issue of the NO CARRIER result code. If the remote carrier is
restored and the S9 delay is completed before the S10 delay expires; then
the modem does not hangup, and DCD will go ON again when the modem returns
on on-line.

E - DCD=0 in Idle, DCD=1 in On-Line State (no tracking):
The DCD circuit is OFF when the modem is idle in the command state. DCD
goes ON immediately after the CONNECT result code is issued, and it goes
OFF when the modem begins the hangup process. DCD does not track the
presence of remote carrier energy.

F - DCD=1 in Idle, DCD tracks in On-Line without S9:
This behavior pattern is associated only with (&C2, &Q5, S10=255, half
duplex), and it only occurs at 4800 and 9600 bps in Hayes proprietary V.32
half-duplex operation (Ping Pong). The DCD circuit is normally ON when the
modem is operating in half duplex and idle in the command state, and it is
ON while the remote carrier is present in the on-line state. It goes OFF
approximately 3 seconds after loss of remote carrier. If the remote
carrier is restored, then DCD will go ON again (regardless of S9). If the
hangup process is initiated by the DTE using DTR or escaping to command
state and issuing ATH<CR> when on-line, DCD will return ON just prior to
the modem issuing the OK result code. The modem will not begin the hangup
process if S10=255.

&D -- Data Terminal Ready Options
The &D command affects how the modem will respond to the state of the DTR
signal and changes to this circuit. The effects of DTR states and changes are
also very dependent upon the &Q command that is in effect. The test modes
associated with certain &T commands are only affected by DTR changes when &D3
is in effect and are not affected by &Q command options. Below, DTR-related
behaviors are defined in relation to the &D and &Q commands in effect in smart
mode. In dumb mode, the behavior is as defined below for &D2 regardless of the
actual &D command in effect.

DTR Behaviors in Smart Mode
&D0 &D1 &D2 &D3
-----------------------------------------------
&Q0 none E I, H R
&Q1 H E I, C, H R
&Q2 I, D, H I, D, H I, D, H I, D, R
&Q3 I, O, H I, O, H I, O, H I, O, R
&Q4 H E I, C, H R
&Q5 none E I, S R
&Q6 none E I, S R

Legend for Table Above ?
Auto-Answer Function
I The DCD circuit is ON at all times.

DTR OFF-to-ON Effects:
-----------------------------------------------------------------------------
D If S1=0 and in the idle condition, DTR OFF-to-ON signals the modem to go
off hook and start the dialing process using the dial string stored by the
last &Z0= command. S25 does not affect the modem's reactions to DTR going
OFF-to-ON.

O If S1=0 and in the idle condition, DTR OFF-to-ON signals the modem to go
off hook and start the originate handshake process. S25 does not affect the
modem's reactions to DTR going OFF-to-ON.

C Following a CONNECT result code, DTR must go ON before the time specified
by S25 (in seconds), or CTS will not go ON and the modem will go to the
Hangup Process, issue the NO CARRIER result code, at the Response Speed,
and go to the idle condition.

DTR ON?to?OFF Effects
-----------------------------------------------------------------------------
E If in the on-line state, DTR ON-to-OFF signals the modem to exit the
on-line state, issue an OK result code at the response speed, and go to
command state, while maintaining the connection. DTR transitions to OFF
that do not persist more than the time specified by S25 will not cause the
modem to exit the on-line state.

H If in the on-line state, or in the handshaking, dialing, or answer process,
DTR ON-to-OFF signals the modem to execute the hangup process, issue an OK
result code at the response speed, and go to the idle condition. The modem
is not reset by DTR. This will also abort any dial, handshake, or answer in
process. DTR transitions to OFF that do not persist more than the time
specified by S25 will not trigger a transition to the hangup process.

R DTR ON-to-OFF signals the modem to immediately perform a hard reset
regardless of state. All processes are aborted. S25 does not affect the
modem's reactions to DTR going OFF-to-ON. There is no result code.

S If in On-Line, or in the Handshaking, dialing processes, or answer process,
a transition of DTR ON-to-OFF signals the modem to shut down the
communications link. When the modem has completed transmitting the data
placed into its buffer by the DTE and has completed sending the received
data to the DTE, the modem will execute the hangup process, issue an OK
result code at the response speed, and remain idle in the command state.
The modem is not reset by DTR. This will also abort any dial, handshake, or
answer in process. DTR transitions to OFF that do not persist more than the
time specified by S25 will not trigger a transition to the hangup process.

&F -- Recall Factory Profile
The &F command recalls the configuration stored programmed in ROM at the
factory. This operation completely replaces the command options and S-Register
values in the active configuration with those comprising the factory
configuration. For the commands and registers stored and their factory-set
values, see the AT Command Set Reference Card accompanying your modem.

&G -- Guard Tone Selection
The &G command tells the modem which guard tone, if any, to transmit while
transmitting in the high band (answer mode). Guard tone is transmitted only
while the modem is in the transmitting in the answer mode and during the
answer handshake.

&G0 Guard tones disabled

&G2 1800 Hz guard tone enabled (V.22,V.22bis only)

&J -- Jack Type Selection (Auxiliary Relay Options)
The &J command designates the type of jack with which the modem is connected
to the telephone line. This selection is made by changing the way the
auxiliary relay is controlled. The auxiliary relay connects the A lead to the
A1 lead, but is normally open.

&J0 The auxiliary relay is never closed.(suitable for RJ-11, RJ-41S, or
RJ-45S type phone jack)

&J1 The auxiliary relay is closed while modem is off hook.(suitable for RJ-12
or RJ-13 type phone jack)

&K -- Local Flow Control Options
The &Kn command is used to select the local flow control method for use when
the modem is operating in error-control mode or asynchronous mode with
Automatic Speed Buffering (ASB). ASB is used for communication environments
requiring a "Fixed Speed Interface" between the modem and the DTE.

S39 stores the current flow control setting. Flow control is always inhibited
in command state and is valid only when on-line in error-control mode. Bi-
directional flow control regulates the data stream between the DTE and the
modem. Specific functions depending on parameter value is as follows:

&K0 All flow control is disabled. May be selected for use during
error-control mode at the risk of overflowing the buffers and
losing data

&K1 RTS/CTS flow control is enabled. Note that the DTE-V-series cable must
have the supporting wires. The &T19 command may be used by software to
determine if the cable is properly wired

&K2 XON/XOFF flow control is enabled. These characters are not programmable
and are fixed at DC1 and DC3, respectively. This method should not be
used when XON/XOFF characters will be sent as user data or as part of a
file transfer protocol

&K3 RTS/CTS flow control is enabled. Note that the DTE-V-series cable must
have the supporting wires. The &T19 command may be used by software to
determine if the cable is properly wired

&K4 XON/XOFF flow control is enabled. These characters are not programmable
and are fixed at DC1 and DC3, respectively. This method should not be
used when XON/XOFF characters will be sent as user data or as part of a
file transfer protocol

&K5 Transparent XON/XOFF The data stream is controlled by characters DC1 and
DC3, The chars DLE, DC1, and DC3 are transparentized by sending DLE
followed by the character XORed with 21hex

&L -- Line Type Selection (Dialup/Leased)
The &L1 command instructs the modem to alter its function for leased line
environments. The modem will act as if S10=255 and M0 are in effect. It will
not dial numbers or send answer tone. The modem must receive an X1D or A
command to go on-line. The modem will then go to the dialing or answering
process, respectively. Once the handshaking process is completed, the modem
tries to stay in the on-line state. When it loses carrier, it returns to the
dialing or answering process. Carrier level is determined in one of several
techniques, depending on the particular modem. See the Installation Guide for
information on setting carrier level.

&L0 Select Dial up line operation
&L1 Select Leased line operation

&O -- PAD Channel Selection
The &O command instructs the modem to move from AT command state to a PAD
waiting state where it is ready to receive X.25 commands. A Reset operation
(see Chapter Two: V-series X.25 Communications) is performed on the selected
channel. This command can be issued while off-line so that the PADs may be
configured prior to making a connection.

&O0 Move to the PAD command state of the last channel accessed
(or to channel 1 if no previous channel has been selected)
&O1 Move to the PAD command state for channel 1
&O2 Move to the PAD command state for channel 2
&O3 Move to the PAD command state for channel 3
&Q4 Move to the PAD command state for channel 4

&Q -- Communications Mode Options
The &Q command selects the communication mode. The &Q command determines how
the modem will treat transmitted and received data while in the on-line state
(i.e., asynchronous, synchronous, AutoSync, or error-control) and establishes
certain call setup procedures. Refer also to the &C, &D, and &S commands in
this section.

Command On-Line State Special Features
-----------------------------------------------------------------------------
&Q0 Asynchronous DCD and DSR behaviors are unique. Refer to &C
and &S commands

&Q1 Synchronous DTR must be ON after CONNECT when timer value
in S25 expires

&Q2 Synchronous DTR OFF-to-ON executes dialing process; the D
command invalid DTR ON-to-OFF executes the
hangup process; the A command is invalid

&Q3 Synchronous Dialing and Voice allowed from phone set when
DTR is OFF. DTR OFF-to-ON executes the
handshaking process (in originate mode); the D
command is invalid. DTR ON-to-OFF executes
hangup process; the A command invalid

&Q4 Hayes AutoSync DTR must be ON after CONNECT when timer equal
to S25 expires. DTE data speed is 9600 bps
which is not equal to response speed or line
speed, yet all result codes are at the
response speed

&Q5 Error-Control This enables error-control and is unique to
V-series system products. Depending upon which
V-series system product is being used, any one
of several point to point protocols can be
negotiated: LAPB, LAPM, X.25 or MNP. After the
modem handshake is complete, feature
negotiation (see S48) is used to determine
which protocol (see S46) will be used for the
communication session. If no common protocol
is found between the local and remote modems,
the fall back options (see S36) will be used

&Q6 Buffered Asynchronous Automatic Speed Buffering is useful for DTEs
that cannot adjust to changing transmission
speeds. This mode ensures the DTE-modem speed
is set at a constant rate regardless of the
line speed determined during the modem
handshake. With the exception of flow control
(&Kn) between the DTE and the attached modem,
this mode is identical to the standard
asynchronous mode (&Q0). ASB operation is also
a fall back option (see S36) when the modem is
set for error-control mode (&Q5. Because the
DTE and DCE speeds are different in ASB, a 256
byte buffer is provided so that flow control
does not occur on every character
transmission. Some DTEs are sensitive to the
buffer size so S-registers are provided to
control the lower (S49) and upper (S50)
boundaries

&R -- RTS/CTS Options
The functions of CTS and RTS in synchronous modes (&Q1, &Q2, and &Q3) is
determined by the &R command. The &R command has no effect if &Q0, &Q4, &Q5,
or &Q6 is in effect. See also the discussion of the CTS and RTS signals in
Chapter Three. Refer to the &K command for other RTS and CTS functions. Note
when &Q4 is in effect (AutoSync operation), RTS and CTS behaviors are not
unlike those specified by EIA 232-D/CCITT V.24.

In Synchronous Modes (&Q1, &Q2, and &Q3):
-----------------------------------------------------------------------------
&R0 CTS tracks RTS while the modem is in On-Line State and observes the
RTS-to-CTS delay determined by S26

&R1 CTS is ON while the modem is in the On-Line State, and RTS is ignored.

In Other Modes (&Q0, &Q4, &Q5, and &Q6), the &R option in effect does not
control the RTS and CTS functions.

&S -- Data Set Ready Options
The &S command controls the functions of the DSR circuit. The DSR circuit (pin
6 of the EIA 232-D interface) indicates when the modem is connected a
communication channel and is ready.

In synchronous mode, when originating a call, DSR goes high when dialing is
completed and an answer tone is detected from the remote modem. When answering
a synchronous call, DSR goes high when the modem begins transmitting the
answer tone.

In asynchronous or error-control mode, the &S command can be used to configure
the modem to keep the DSR signal high at all times or to have it operate
according to the EIA 232-D specification (as described in Chapter Three).

When &Q0, &Q5, and &Q6 are in effect:
-----------------------------------------------------------------------------
&S0 DSR circuit is always on

&S1 DSR=0 in the Idle State and when in a test mode. DSR circuit is turned ON
at start of the Handshaking Process. DSR is turned OFF when Hangup
Process is started

&S2 DSR=0 in the Idle State and when in a test mode. DSR circuit is turned ON
at end of handshake prior to issuing of the CONNECT result code. DSR is
turned OFF when hangup process is started

When &Q1 to &Q4 are in effect:
-----------------------------------------------------------------------------
&S0-1 DSR=0 in the command state and at idle. DSR circuit is turned ON at
start of the handshaking process. DSR is turned OFF when hangup process
is started

&S2 &S2- DSR=0 in the command state and at idle. DSR circuit is turned ON
at end of handshake prior to issuing of the CONNECT result code. DSR is
turned OFF when Hangup Process is started

&T -- Test Options
The following &T command options are used to configure and place the modem in
various test modes as defined by CCITT V.54. These tests can be used to verify
the analog and digital portions of the modem's operation, as well as those of
the remote modem. Some of these tests require a connection be established
before running the procedure. The &T19 command (not a CCITT V.54 test) can be
used to test the RTS/CTS functions of the cable used to attach the modem to
the DTE.

&T0 -- Terminate Test In Process
If a V.54 Loopback Test is in process as a result of executing an &Tn command,
then the &T0 command will cause that test to be terminated provided that the
modem is in the command state, or a V.54 state that accepts commands from the
DTE. See specific &T command descriptions for termination actions.

&T1 -- Initiate Local Analog Loopback
The modem goes on hook and configures itself for analog loopback (using low
frequency band if no suffix or "O" suffix, and high frequency band if "A"
suffix). DSR is turned off (if &S1 is in effect), the analog loopback state is
entered, and the test timer is set to the value in S18. A CONNECT result code
is sent to the DTE, and the test timer then begins its count down. The test
terminates when the test timer expires. If S18 equals 0, then the test must be
terminated by an &T0, H0, or Z command. While any command may be entered while
the modem is in this test state, the modem response is not specified except
for H0, &T0, and Z -- any of which will terminate the test. Upon termination of
the test, the modem enters the command state.

Result Codes: Description
-----------------------------------------------------------------------------
CONNECT when local analog loopback state is entered
ERROR if any other &Tn test is active (except &T0) or if
in the On- Line Command State
OK after test is stopped by test timer, the H0 command,
or the &T0 command

&T3 -- Perform Local Digital Loopback
The modem must be in the command state with a connection established when this
command is issued. Otherwise an ERROR result code occurs. This command
establishes a loopback of received data, after demodulation, and sends it back
to the distant end. The modem is configured for local digital loopback, DSR is
turned off (if &S1 is in effect), the test timer is started with the value in
S18, and an OK result code is sent to the DTE . If S18 contains a 0, the test
must be terminated by a &T0, H0, or Z command. The latter two result in the
modem going on hook. If S18 does not contain 0, the test is terminated after
the number of seconds stored in S18.

Result Codes: Description
-----------------------------------------------------------------------------
OK after 2 s delay
ERROR if any other self test is active (&T1,&T6-&T8)
or if in Idle State
OK when test is terminated

&T4 -- Grant RDL Requests
When in the On-Line State the modem will honor a remote digital loopback
request from a distant modem if it occurs. This will result in an ERROR if the
command is given while any V.54 test is active (&T1, &T3, &T6, &T7, or &T8).

&T5 -- Deny RDL Requests
The modem will not respond to a remote digital loopback request from a distant
modem. This will result in an ERROR if the command is given while any V.54
test is active (&T1, &T3, &T6, &T7, or &T8).

&T6 -- Initiate Remote Digital Loopback
The command is valid only if the modem is in the command state with a
connection at 1200 or 2400 bps. The modem sends the remote digital loopback
request signal to the distant modem (see CCITT V.22 and V.54). After the RDL
acknowledgment signal is received from the distant modem, DSR is turned off
(if &S1 is in effect), the on-line state is entered, a CONNECT result code is
sent to the DTE, and the test timer is set to the value in S18. If the modem
does not receive the RDL acknowledgment signal from the distant end in three
seconds, it sends an ERROR result code to the DTE and returns to the command
state. The modem sends the signal specified in CCITT V.22 to release the
remote digital loopback when the test is terminated. The test may be
terminated by the H0, Z, or &T0 command. The test will also terminate when the
test timer expires (sending the modem to the command state) or carrier is lost
(causing a NO CARRIER result code and the modem to go on hook in the command
state).

Result Codes: Description
-----------------------------------------------------------------------------
CONNECT when On-Line State is entered
ERROR if any V.54 test is active (&T1, &T3, &T6-&T8)
ERROR if not in On-Line Command State
ERROR if command is issued at other than 1200 or 2400 bps
ERROR if the RDL signal is not acknowledged

&T7 -- Initiate RDL With Self Test
The command is only valid if the modem is in the command state with a
connection at 1200 or 2400 bps. The modem sends the remote digital loopback
request signal to the distant end (see CCITT V.22). After the RDL
acknowledgment signal is received from the distant end, DSR is turned off (if
&S1 is in effect), the on-line state is entered, an OK result code is sent to
the DTE, and the test timer is set to the value in S18. While the test is
active the modem sends a test message to the distant end and counts the errors
in the received (looped back) signal. The modem stays in the command state
during the test. When the test is terminated (except by a loss of carrier),
the modem sends the release signal to the distant end, as in &T6, and reports
the three-digit error count to the DTE. The information text is followed by an
OK result code. See the V command for formats. The test is terminated by loss
of carrier, or an H0, &T0, or Z command, and by the S18 timer running out.

Result Codes: Description
-----------------------------------------------------------------------------
OK when command executed is started
OK after error count is sent to DTE
ERROR if any other self test is active (&T1,&T3,&T6-&T8)
ERROR if not in On-Line Command State
ERROR if command is issued at other than 1200 or 2400 bps
ERROR if the RDL acknowledgment signal is not received

&T8 -- Local Loopback With Self Test
The modem goes on hook and is configured for analog loopback (low frequency
band if none or O suffix, high frequency band if A suffix). The test timer is
started at the time indicated by S18, DSR is turned off (if &S1 is in effect),
A selftest condition is entered, and an OK result code is sent to the DTE.
During the test the modem sends a test message and counts errors in the looped
back signal. The test is terminated when the timer times out (S18) or the &T0,
H0, or Z command is issued. When the test is terminated, the three-digit error
count is sent to the DTE. An OK result code follows the error count.

Result Codes: Description
-----------------------------------------------------------------------------
OK if AL Selftest state is entered
OK after error count is sent to DTE
ERROR if any other V.54 test is active (&T1,&T3,&T6,&T7),
or if on-line

&T19 -- Perform RTS/CTS Cable Test
This test is used to determine whether the DTE-to-DCE cable supports the RTS
and CTS signals necessary for hardware flow control. This procedure should be
used by software before RTS/CTS flow control (&K3) is used. The modem takes
the following action when the &T19 command is issued:

1. Turns OFF CTS (normally ON) and starts a 500 ms timer.

2. Monitors RTS for ON and OFF states.

3. After the 500 ms timeout or when both level-high and level-low states of
RTS are detected, the modem restores CTS to the ON condition and ends
the test.

4. If both the on and off conditions of RTS are NOT detected, the modem
returns the ERROR result code; otherwise, it issues the OK result code.

&U -- Trellis Coding Options
The &U command is used to enable and disable Trellis coding for V.32
connections. This selection affects V.32 9600 bps transmissions only.

&U0 Enable Trellis coding
&U1 Disable Trellis coding

&V -- View Configuration Profiles
The &V command is used to display the active and stored profiles (commands and
S-Register settings) along with any stored telephone numbers. Input from the
DTE is ignored while this view configuration information is being sent to the
DTE.

The example below illustrates the &V info-text when the factory profile is
loaded and then stored into the stored profiles, and an arbitrary phone number
is stored in one of the stored numbers locations.

ACTIVE PROFILE:
B0 B41 B60 E1 L2 M1 N1 P Q0 V1 W0 X4 Y0 &C0 &D0 &G0 &J0 &K3 &Q5
&R0 &S0 &T4 &U0 &X0 &Y0
S00:000 S01:000 S02:043 S03:013 S04:010 S05:008 S06:002 S07:030 S08:002
S09:006
S10:014 S11:070 S12:050 S18:000 S25:005 S26:001 S36:005 S37:000 S38:020
S44:003
S46:002 S48:007 S49:008 S50:016 S95:000

STORED PROFILE 0:
B0 B41 B60 E1 L2 M1 N1 P Q0 V1 W0 X4 Y0 &C0 &D0 &G0 &J0 &K3 &Q5
&R0 &S0 &T4 &U0 &X0
S00:000 S02:043 S06:002 S07:050 S08:002 S09:006 S10:014 S11:095 S12:050
S18:000
S25:005 S26:001 S36:005 S37:000 S38:020 S44:003 S46:002 S48:007 S49:008
S50:016

STORED PROFILE 1:
B0 B41 B60 E1 L2 M1 N1 P Q0 V1 W0 X4 Y0 &C0 &D0 &G0 &J0 &K3 &Q5
&R0 &S0 &T4 &U0 &X0
S00:000 S02:043 S06:002 S07:050 S08:002 S09:006 S10:014 S11:095 S12:050
S18:000
S25:005 S26:001 S36:005 S37:000 S38:020 S44:003 S46:002 S48:007 S49:008
S50:016

TELEPHONE NUMBERS:
0=
1=T9W14045551212
2=
3=

The three-digit numbers after each S-Register number are decimal
representations of the S-Register contents.

&W -- Write Active Profile to Memory
The &W command stores certain command options and S-Register values into one
of the modem's two nonvolatile stored profile memory locations. The command
options and register values stored depend on the particular modem. These are
indicated on the AT Command Set Reference Card. In addition, the AT speed and
parity are stored, according to the values used at the time the command is
issued.

&W0 Store the Active Profile into Stored Profile 0
&W1 Store the Active Profile into Stored Profile 1

&X -- Synchronous Transmit Clock Source
The &X command determines how the DTE transmit clock is generated while the
modem is in the synchronous mode.

&X0 Modem generates the transmit clock and applies it to pin 15 (EIA 232-D)

&X1 DTE generates the transmit clock on pin 24 (EIA 232D) and the modem
applies this clock to pin 15 (EIA 232D). This setting is available for
external modems only

&X2 Modem derives the transmit clock from the receive carrier signal and
applies it to pin 15 (EIA 232-D)

&Y -- Select Stored Profile For Hard Reset
The &Y command selects which stored profile will be copied into the active
profile subsequent to a hard reset (including power-up). The &Y command
execution is nonvolatile, stored at the time the command is executed, not by
the &W command. The value selected with this command is not affected by the &F
command, although &Y0 is selected as part of the overall factory setup.

&Y0 Select Stored Profile #0 on powerup
&Y1 Select Stored Profile #1 on powerup

&Zn=x -- Store Telephone Number
The &Zn=x command is used to store up to four dialing strings in the modem's
nonvolatile memory for later dialing. The format for the command is
&Zn="stored number" where n is the location 0-3 to which the number should be
written. For example, the line AT&Z2=1552368<CR> writes 1552368 as the third
of four possible numbers to the modem's "telephone book" in nonvolatile
memory. The &Zn=x command can be used to store a number with as many as 36
characters.

Any dialing string can be saved except the S dialing modifier (this would
cause a stored dialing string to attempt to dial another stored string), or
the ; modifier if used for automatic dialing in synchronous mode 2. If no dial
string follows the command, the referenced stored number will be cleared.

&Z <dial string><CR>
&Z= <dial string><CR>
&Zn= <dial string><CR> ... where n=0-3

If the delimiter (=) is not present, the characters following the &Zn=x are
treated as telephone numbers and/or modifiers and are stored in location 0.
For example, in &Znxxxx, the n is a part of the phone number. If the delimiter
is present the characters following it are stored in the location specified by
the character preceding the delimiter (which must be in the range 0-3). If no
character precedes the delimiter, the number is stored in location 0. If an
invalid location is specified (n) the modem sends an ERROR result code.

Characters not listed above as storable are ignored. For example, the command
&Z1=3456H;AX would store 3456;A.

*****************************************************************************
1.2 Result Code Listing
This section defines the result codes returned by Hayes modems in response to
commands.

The table below shows the various formats in which modem responses can be
presented. Note that the "text" of the info-text may consist of multiple lines
of text. The formats depicted here only refer to the <CR><LF> characters
between info-texts and not within them.

V0 V1
-------------------------------------------------
Information Text text <CR><LF>
<CR><LF> text
<CR><LF>

Result Codes numeric code <CR><LF>
<CR> verbose code
<CR><LF>

+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
1.2.1 Command Response and Call Progress Monitoring
This set of result codes includes responses to commands and call progress
monitoring responses. They are available to all modems within the capabilities
of the modem. For example, the result code CONNECT 9600 is not available to
Smartmodem 2400. The factory setting for all high-speed modems enables the
extended set of call progress monitoring (X4). When set up in this way, the
modem performs and reports full call progress monitoring (RING, NO CARRIER, NO
DIALTONE, and BUSY). It also indicates the speed of the connection (CONNECT
1200 as opposed to simply CONNECT). The factory setting for Smartmodem 300,
Smartmodem 1200, and all others whose highest speed is 1200 bps is basic call
progress monitoring (X0).

The command response and call progress monitoring result codes are defined
below:

0 -- OK
This result code indicates that a command or command string was executed. Note
that if more than one command were included on a line and an ERROR result code
received, this means that one or more of the commands was not processed. If
one or more were executed properly, but even one was invalid, no OK will be
issued, only the ERROR.

1 -- CONNECT
This result code indicates a connection was made between the DTE and the
modem. If X4 (extended set of call progress monitoring) were selected, the
code indicates that a connection from at 0 to 300 bps was made. However, if X0
(basic set of call progress monitoring) were selected, the connection could be
0-300, 1200, 1200/75, 75/1200, 2400, 4800, 9600,19200, or 38400 bps. If the
modem is not operating in error-control mode, this is the same as the line
speed. See other CONNECT messages and CARRIER messages.

2 -- RING
This result code indicates the modem as detected a ring signal. No distinction
can be made as to whether this is a voice call, a modem call, a fax call, or
other type.

3 -- NO CARRIER
This result code indicates that no carrier signal was detected, or that the
signal was lost. This is the response the modem will give when no connection
is made; see CONNECT result code. The modem will also return this message when
the connection is broken, either intentionally as when the hangup process
completes, or if line difficulties break the connection.

4 -- ERROR
This result code indicates that an invalid command was issued, or that there
was an error in the command line. For example, if the command line exceeds 40
characters for Smartmodem Products or 255 characters for V-series System
Products, this result code will be returned. This result code is also returned
in response to the I1 command requesting a ROM checksum, if the modem detects
an error in the computation.

5 -- CONNECT 1200
This result code indicates a connection has been established at 1200 or
1200/75, 75/1200, bps between the modem and the DTE. If the modem is not
operating in error-control mode, this is the same as the line speed. This
result code is disabled by X0. Only CONNECT is reported.

6 -- NO DIALTONE
This result code indicates that no dial tone was detected when the modem went
off hook. Dial tone detection and this result code are enabled by X2 or X4, or
the W dial modifier.

7 -- BUSY
This result code indicates that the modem detected a busy signal when it
attempted to connect with the modem at the number dialed. Busy signal
detection and this result code are enabled by X3 or X4.

8 -- NO ANSWER
This result code indicates no silence was detected when dialing a system not
providing a dial tone. Enabled by the @ dial modifier.

10 -- CONNECT 2400
This result code indicates a connection has been established at 2400 bps
between the modem and the DTE. If the modem is not operating in error-control
mode, this is the same as the line speed. This result code is disabled by X0.
Only CONNECT is reported.

11 -- CONNECT 4800
This result code indicates a connection has been established at 4800 bps
between the modem and the DTE. This result code is disabled by X0.

12 -- CONNECT 9600
This result code indicates a connection has been established at 9600 bps
between the modem and the DTE. This result code is disabled by X0.

14 -- CONNECT 19200
This result code indicates a connection has been established at 19200 bps
between the modem and the DTE. This result code is disabled by X0.

22 -- CONNECT 1200/75
This result code indicates a connection has been established at 1200 bps when
transmitting data and 75 bps when receiving data between the modem and the
DTE.

23 -- CONNECT 75/1200
This result code indicates a connection has been established at 75 bps when
transmitting data and 1200 bps when receiving data between the modem and the
DTE.

28 -- CONNECT 38400
This result code indicates a connection has been established at 38400 bps
between the modem and the DTE. This result code is disabled by X0.

+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
1.2.2 Negotiation Progress Messages
V-series system products report special result codes during error-control
negotiation. Whether or not these messages are displayed is selected with the
W command (not to be confused with the W dial modifier). The factory setting
is messages disabled (W0) to avoid conflict with software programs that do not
support this additional level of call progress monitoring.

40 -- CARRIER 300
This message indicates that a carrier signal has been detected at 300 bps
(modem-to-modem line speed).

44 -- CARRIER 1200/75
This message indicates that a carrier signal has been detected at 1200 bps
when transmitting and at 75 when receiving (modem-to-modem line speed).

45 -- CARRIER 75/1200
This message indicates that a carrier signal has been detected at 75 bps when
transmitting and at 1200 bps when receiving (modem-to-modem line speed).

46 -- CARRIER 1200
This message indicates that a carrier signal has been detected at 1200 bps
(modem-to-modem line speed).

47 -- CARRIER 2400
This message indicates that a carrier signal has been detected at 2400 bps
(modem-to-modem line speed).

48 -- CARRIER 4800
This message indicates that a carrier signal has been detected at 4800 bps
(modem-to-modem line speed).

50 -- CARRIER 9600
This message indicates that a carrier signal has been detected at 9600 bps
(modem-to-modem line speed).

66 -- COMPRESSION: CLASS 5
This message indicates that data compression using MNP Class 5 has been
negotiated for the connection.

67 -- COMPRESSION: V.42BIS
This message indicates that data compression using CCITT V.42bis has been
negotiated for the connection.

68 -- COMPRESSION: ADC
This message indicates that data compression using Hayes Adaptive Data
Compression has been negotiated for the connection.

69 -- COMPRESSION: NONE
This message indicates that data compression was not negotiated for the
connection.

70 -- PROTOCOL: NONE
This message indicates that no protocol was negotiated for the connection. A
standard asynchronous connection was made.

71 -- PROTOCOL: ERROR-CONTROL/LAP-B
This message indicates that an error-control connection was negotiated with
LAPB protocol. This protocol is the one used by the first V-series System
Products.

72 -- PROTOCOL: ERROR-CONTROL/ LAP-B/HDX
This message indicates that a half-duplex error-control connection was
negotiated with LAPB protocol. This protocol is the one used by the first V-
series System Products communicating at 9600 bps.

73 -- PROTOCOL: ERROR-CONTROL/LAP-B/AFT
This message indicates that an error-control connection was negotiated using
the Hayes Asynchronous Framing Technique. This protocol is used for
connections between modems such as Smartmodem 1200 that do not communicate
synchronously across the telephone line. AFT enables an error-control protocol
to be used.

74 -- PROTOCOL: X.25/LAP-B
This message indicates that an error-control connection using the X.25
protocol was established with a carrier speed of 1200, 2400, 4800, or 9600
bps.

75 -- PROTOCOL: X.25/LAP-B/HDX
This message indicates that a half-duplex error-control connection using the
X.25 protocol was established with a carrier speed of 4800 or 9600 bps.

76 -- PROTOCOL: X.25/LAP-B/AFT
This message indicates that an asynchronous error-control connection using the
X.25 protocol was established with a carrier speed of 1200 bps. The Hayes
Asynchronous Framing Technique was used.

77 -- PROTOCOL: LAP-M
This message indicates that an error-control connection using the V.42 LAPM
protocol was established with a carrier speed of 1200, 2400, 4800, or 9600
bps.

78 -- PROTOCOL: LAP-M/HDX V.42
This message indicates that a half-duplex error-control connection using the
V.42 LAPM protocol was established with a carrier speed of 4800 or 9600 bps.

79 -- PROTOCOL: LAP-M/AFT
This message indicates that an asynchronous error-control connection using the
V.42 LAPM protocol was established with a carrier speed of 1200 bps. The Hayes
Asynchronous Framing Technique was used.

80 -- PROTOCOL: ALT
This message indicates that an error-control connection using the V.42 LAPM
alternative protocol was established with a carrier speed of 1200, 2400, 4800,
or 9600 bps. This protocol is MNP Classes 2, 3, and 4 compatible.

91 -- AUTOSTREAM: LEVEL 1
This message indicates that Hayes AutoStream Level 1 has been negotiated for
the connection. This technique provides for multiplexing of multiple virtual
channels.

92 -- AUTOSTREAM: LEVEL 2
This message indicates that Hayes AutoStream Level 2 has been negotiated for
the connection. This technique provides for multiplexing of multiple virtual
channels, with transparent control of one PAD (non-simultaneous).

93 -- AUTOSTREAM: LEVEL 3
This message indicates that Hayes AutoStream Level 3 has been negotiated for
the connection. This technique provides for multiplexing of multiple virtual
channels, with transparent control of all PADs (simultaneous).

Negotiation progress messages are reported in the following order:

CARRIER
PROTOCOL
AUTOSTREAM
COMPRESSION
CONNECT

If AutoStream is not used, no message is reported.

+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
1.2.3 Information Text (INFO-TEXT)
Some commands, such as &V and Sr? return information text as opposed to
numeric or verbose codes. The alpha characters are headings and commands and
the numbers are command options, ASCII values, counter values, etc. The
example below illustrates a modem response to a command with information text.

ACTIVE PROFILE:
B0 B41 B60 E1 L2 M1 N1 P Q0 V1 W0 X4 Y0 &C0 &D0 &G0 &J0 &K3 &Q5
&R0 &S0 &T4 &U0 &X0 &Y0
S00:000 S01:000 S02:043 S03:013 S04:010 S05:008 S06:002 S07:030 S08:002
S09:006
S10:014 S11:070 S12:050 S18:000 S25:005 S26:001 S36:005 S37:000 S38:020
S44:003
S46:002 S48:007 S49:008 S50:016 S95:000

Information Text is always a combination of alpha and numeric. The V command
has no effect on the format of this command response.

*****************************************************************************
1.3 S-Register Listing
The following definitions include all S-Registers defined for the various
families of Hayes modems. Some factory settings and ranges are included here
because they are almost universally implemented with these values; however, be
sure to consult the AT Command Set Reference Card that came with your modem
for the S-Registers and their ranges/factory settings that your modem
supports. Note that register numbers not included in this listing are those
for which no function has been assigned.

S0 -- Ring to Answer
After S0 sets the ring number on which the modem automatically answers a call
when auto-answer mode is selected. S0=0, the factory setting, disables auto-
answer.

S1 -- Ring Count
When the modem is in the command state and set for auto-answer (Register
S0>0), the modem automatically tracks the number of times the phone rings,
incrementing and writing the value in S1. The value reverts to 0 if no ring
occurs for 8 seconds. Once a connection is made, the modem resets the value of
this register to 0. Note that two short ring bursts within a ring cycle are
counted as two rings.

S2 -- Escape Sequence Character
This register holds the ASCII value of the escape sequence character. The
factory-set value is ASCII 43, the plus sign (+). The value for this register
can be set to any ASCII value between 0 and 127. Setting S2 to a value greater
than 127 disables the escape sequence, preventing the modem from returning to
the command state and disabling command recognition.

S3 -- Carriage Return Character
This register holds the ASCII value of the line terminating character. The
factory-set value is ASCII 13 -- carriage return (<CR>) -- the range for the
register is 0-127. This character is used both as the command line terminator
and the result code terminator.

S4 -- Line Feed Character
This register holds the ASCII value of the line feed character. The factory
setting is 10; the range is 0-127.

S5 -- Backspace Character
This register holds the ASCII value of the backspace character. The factory-
set value is ASCII 08; the range for the register is 0-32, 127. This character
moves the cursor left, removing the previous character. As this value actually
represents the combined operation of three characters (a backspace, a space,
and another backspace), the time allotted to process the backspace character
must not be any less than the time required by the modem to transmit three
characters. For this reason, a repeat-key function may not operate properly on
backspaces.

S6 -- Wait Before Blind Dialing
This register determines how long the modem waits after going off-hook before
it dials. This delay allows time for the central telephone office to detect
the off-hook condition of the line and apply dial tone. This wait time only
applies to the first dial tone. S6 is used only if X0, X1, or X3 is selected.
Selecting X3 or X4 enables dial tone (call progress) detection and disables
blind dialing, thus making the setting of S6 irrelevant. The value of this
register can be set for any number from 4 through 7 seconds. This feature
allows you to increase the time delay if you have difficulty obtaining dial
tone within 4 seconds.

Note: The Wait Before Blind Dialing call progress monitorin