Retro video games delivered to your door every month!
Click above to get retro games delivered to your door ever month!
X-Hacker.org- Hardware - <b> hayes command set / register formats</b> http://www.X-Hacker.org [<<Previous Entry] [^^Up^^] [Next Entry>>] [Menu] [About The Guide]
                    Hayes Command Set / Register Formats

        +++    standard escape sequence (see S2 below)
        Comma  standard pause character (see S8 below)
        AT     standard attention sequence

        ATA    force immediate answer
        ATC0   transmitter off
        ATC1   transmitter on

        ATD    dial (ATD number)
        ATDP   pulse dial (ATDP number)
        ATDT   tone dial (ATDT number)

        ATE0   disable local character echo
        ATE1   enable local character echo
        ATF0   Half Duplex (modem echoes characters)
        ATF1   Full Duplex (modem does not echo characters)

        ATH0   force line on hook
        ATH1   force line off hook
        ATH2   force line special off hook (used for HAM radio)

        ATI0   request product code, formatted PPR, PP=prod., R=rev.
        ATI1   request ROM check sum

        ATL1   speaker volume low  (modem specific)
        ATL2   speaker volume medium  (modem specific)
        ATL3   speaker volume high  (modem specific)
        ATM0   speaker always off
        ATM1   speaker on except while carrier present
        ATM2   speaker always on
        ATM3   speaker on except while dialing and carrier present

        ATO    force modem into on-line state
        ATP    sets modem to default pulse dial

        ATQ0   modem returns result codes
        ATQ1   modem does not return result codes

        ATR    sets modem to answer mode after dialing out
        ATSn   where Sn is S register number 'n' (see registers below)
        ATT    sets modem to default tone dial

        ATV0   send numeric codes
        ATV1   send word result codes

        ATX0   basic result code set "CONNECT", no dial tone detect
        ATX1   extended result code set "CONNECT 1200", no dialtone detect
        ATX2   wait for dial tone, extended result codes
        ATX3   detect busy signal, extended result codes
        ATX4   wait for dial tone, detect busy, extended result codes

        ATZ    reset to power up condition

                    Hayes 2400 Compatible Modem Commands

        ATB0    CCITT V.22 at 1200 bps
        ATB1    BELL 212A at 1200 bps

        AT&C    DCD always on
        AT&C1   DCD on while carrier present

        AT&D    DTR ignored
        AT&D1   DTR fail disconnect enabled
        AT&D2   DTR fail disconnect enabled (auto answer off)
        AT&D3   DTR fail disconnect enabled (reset modem)

        AT&F    restore to factory configuration

        AT&G    no guard tone
        AT&G1   550 Hz guard tone
        AT&G2   1800 Hz guard tone

        AT&J    RJ11/RJ41S/RJ45 jack
        AT&J2   RJ12/RJ13 jack

        AT&L    regular phone line
        AT&L1   leased line

        AT&M    async operation
        AT&M1   async/sync operation
        AT&M2   sync auto dial
        AT&M3   sync manual dial

        AT&P    39/61 pulse make/break ratio
        AT&P1   33/67 pulse make/break ratio

        AT&T4   grant RDL test request
        AT&T5   deny RDL test request

        AT&W    write current registers to non-volatile memory

        AT&X    sync clock internal

        AT&X1   sync clock external
        AT&X2   sync clock slaved

        AT&Z    store dial command line

                      Hayes Compatible Modem Registers

        Not all modems support all of these registers and some modems have
        registers other than those listed here.  Also note, some are read only.

        to set a register use:          AT Sr=##  (cr)
        to read the register:           AT Sr?   (cr)

        Where "r" is the register and (cr) is a carriage return


      The following represent conventions used in the tables below:

        () indicates defaults for Smartmodem 1200
        ** indicates possible inconsistencies across modems


      Reg  Values        Register function

        S0   0-255    ring to answer on (0=don't answer)
        S1   0-255    ring count (clear after 8 sec) (read only)
        S2   0-255    escape char, normally "+", 128-255 disable escape
        S3   0-127    end of line character (0x0D/CR)
        S4   0-127    line feed character (0x0A/LF)
        S5   0-32,127 backspace character (0x08/BS)
        S6   2-255    pause before dialing in seconds (2)
        S7   1-255    wait for carrier in seconds (30)
        S8   0-255    pause for comma in dial string in seconds (2)
        S9   1-255    carrier detect response time in 1/10 second (6)
        S10  1-255    carrier loss delay in 1/10 second, 255=ignore CD (7)
        S11 50-255    touch tone dial speed, in milliseconds (70)
        S12 20-255    escape guard time, in 1/50 second,0=no delay (50)

        |7|6|5|4|3|2|1|0|  S13   power up async data format
         | | | | | | | +---- unused
         | | | | | | +----- result code, 0=basic, 1=extended
         | | | | | +------ parity, 0=disabled, 1=enabled
         | | | | +------- parity, 0=odd ,1=even
         | | | +-------- data bits, 0=7 bits, 1=8 bits
         | | +--------- undefined
         | +---------- buffer ovfw flag, 0=disabled,1=enabled
         +----------- 8th bit, 0=space,1=mark (8 bit only)

        |7|6|5|4|3|2|1|0|  S14   option register status data format
         | | | | | | | +---- unused **
         | | | | | | +----- local echo, 0=disabled, 1=enabled
         | | | | | +------ result codes, 0=enabled,1=disabled
         | | | | +------- result codes, 0=numeric,1=word
         | | | +-------- command recognition, 0=enable,1=disable
         | | +--------- dial method, 0=touch tone, 1=pulse
         | +---------- unused **
         +----------- 0=answer, 1=originate **

        S15           flag register **

        |7|6|5|4|3|2|1|0|  S16   test status
         | | | | | | | +---- analog loop, 0=inactive, 1=active
         | | | | | | +----- unused
         | | | | | +------ digital loop, 0=inactive, 1=active
         | | | | +------- remote req digital loop,0=inact.,1=active
         | | | +-------- remote digital loop,0=inact.,1=active
         | | +--------- self test RDL, 0=inactive, 1=active
         | +---------- self test analog loop,0=inactive,1=active
         +----------- unused

        S18 0-255     remote test timer in seconds

        |7|6|5|4|3|2|1|0|  S21   option status
         | | | | | | | +---- jack type, 0=RJ11,RJ41,RJ45,1=RJ12,RJ13
         | | | | | | +----- unused
         | | | | | +------ CTS state,  0=follows RTS, 1=forced on
         | | | +--------- DTR modem behavior (see below)
         | | +---------- DCD, 0=forced on, 1=follows carrier
         | +----------- DSR, 0=forced on, 1=behaves normally
         +------------ long space disconnect,0=disabled,1=enabled

      Bits
       43  DTR Modem Behavior Bits
         00  ignore DTR
         01  assume command state when DTR drops
         10  assume command state and disable auto-answer when DTR drops
         11  reset when DTR drops


        |7|6|5|4|3|2|1|0|  S22   option status
         | | | | | | +------ speaker volume, 01=low,10=med,11=high
         | | | | +--------- speaker setting (see below)
         | +-------------- X command in effect
         +--------------- make/break ratio, 0=39/61, 1=33/67

      Bits
       32  S22 Speaker Setting
         00  speaker always off
         01  speaker on until carrier detected
         10  speaker always on
         11  speaker off during dialing, then on until CD

      Bits
      654  S22 X Command in Effect
        100  X1 command in effect
        101  X2 command in effect
        110  X3 command in effect
        111  X4 command in effect


        |7|6|5|4|3|2|1|0|  S23   option status
         | | | | | | | +---- remote dig.loop request,0=denied,1=ok
         | | | | | +------- baud rate (see table)
         | | | | +-------- unused
         | | +----------- parity (see table)
         +-------------- guard tone setting

      Bits
       21  S23 Baud Rate Table
         00  0-300 bps
         01  600 bps
         10  1200 bps
         11  2400 bps

      Bits
       54  S23 Parity Setting
         00  even parity
         01  parity bit always 0
         10  odd parity
         11  parity bit always 1

      Bits
       76  S23 Guard Tone Setting
         00  no guard tones
         01  550 hz guard tone
         10  1800 hz guard tone

        S25 0-255     DTR detect delay in seconds (5)
        S26 0-255     RTS to CTS delay in milliseconds (1)

        |7|6|5|4|3|2|1|0|  S27   option status
         | | | | | | +------ synch/async mode (see table)
         | | | | | +------- phone line, 0= public, 1=leased
         | | | | +-------- unused
         | | +----------- clock type (see table)
         | +------------ protocol, 0=CCITT V.22, 1=Bell 212A
         +------------- unused

      Bits
       10  S27 Sync/Async mode
         00  asynchronous mode
         01  async/sync mode
         10  sync auto-dial
         11  sync manual dial

      Bits
       45  S27 Clock Type
         00  internal clock used
         01  external clock used
         10  slaved clock used

Online resources provided by: http://www.X-Hacker.org --- NG 2 HTML conversion by Dave Pearson