Modem Questions Answered:

  • Initialization strings
  • Com port speeds
  • Misc. information
    Initialization Strings
      q: What is an initialization string?
      a: An initialization string is a command sent to a modem
         that affects its Active Profile.
      q: What is an Active Profile?
      a: An Active Profile is a list of settings that the modem
         is currently using.  These settings range from the
         mundane, like Tone or Pulse dial, to the arcane,
         like Enable Trellis Encoding.
      q: Who cares?
      a: It depends.  If your modem is working fine, no one.
         But if you are trying to Tone dial on a line that
         only supports Pulse, you could change your Active
         Profile by typing "atp" and pressing return.  The
         "p" stands for "pulse."  The "at" stands for
         "attention" and tells the modem you wish to
         "tell" it something.  If you type "at" by itself and
         press return the modem should respond with "OK."
      q: What's a good Initialization String?
      a: Here are a few:
         "atz" - equivilant to turning the modem off, and
                 back on again.  Reloads the Active Profile
                 from the modem's RAM.
         "at&f;" - "fetches" the factory default settings
                 from the modem's ROM and writes it to the
                 modem's RAM.  This is a stronger reset than
                 "atz."  Sometimes a modem's RAM can become
                 scrambled or changed, either on purpose or
                 by accident.  "atz" will load the profile
                 from this hypothetically misconfigured RAM.
                 "at&f;" will load the profile from the modem's
                 ROM, so the modem will be configured as the
                 manufacturer intended for a default.
         Click here for some modem specific init 
         strings that work well for Interport connections.
    Communication Port Speeds
      q: What should I set the speed at in my communications
      a: Ah...tricky...
         Most modern modems use what's called Data Compression,
         either MNP5 or V.42bis.  The idea is that by squishing
         down data, like putting trash in a compactor, it takes
         less time to transmit over the phone line.  The modem
         handles this automatically.  Because of this, it's a
         good idea to set your speed as high as possible.  But,
         (of course), it's not as simple as setting it to the
         highest number you can think of.
         Your Serial Port is like a faucet.  It only opens so
         far.  The water company can send huge ammounts of water
         to you, but you can only fill a bucket as fast as your
         faucet will allow.  Some serial ports handle more
         "water" than others.
      q: Get to the point.  What should I set my speed to?
      a: You need to check something first.  If you have an
         external modem on a:       
           At DOS type "MSD".
           You are now in Microsoft Diagnostics.
           Press "c" for Communications.
           You should see a list of your comm ports.
           Check the comm port you are using for your modem.
           Check what type of UART you have.
           Use this chart - 
             8250 - the snail of UARTs.  19200 is the highest
                    speed you can use.  Anything above that
                    will get garbage from your modem, and
                    cause you a world of headaches.
             16450 - this is Joe UART, as is commonly found
                    in PC's.  57600 is its upper speed, but
                    sometimes errors occur at this speed. 
                    To be safe, use 38400.
             16550 - currently, the cheetah of UARTs, and
                    supports speeds up to 115200.  See below for
                    setting up Windows for this kind of UART.
           The world of Mac serial ports (called the Modem and
           Printer port) is an odd one.  This is what I've learned 
           from Apple:
             Old (SE, Classic, etc.):        19200
             Mac II, 68020 Macs:             38400
             68030 Macs:                     38400 (some 57600)
             68040 Macs:                     57600
             Power Macs:                    115200 (some 230400)
             Powerbooks:                     19200  external
                            (see below for internal modems)
           If this chart doesn't help, try 1-800-SOS-APPLE and sit on
           hold for a while.  They are very friendly and helpful.
         INTERNAL MODEM (Mac or PC):
           You should be able to set your port speed for 57600 if it's a 
           14.4K modem, or 115200 if it's a 28.8K modem.  But it's always 
           best to check with the modem manufacturer.  Also, see below for 
           setting Windows for high data communication speeds.
           In order for Windows to be able to utilize high speed serial 
           connections, I recommend that you change your system.ini 
           file and add (or modify) the following:
           (n) is your com port (i.e. Com2FIFO=1)
           These settings allow windows to utilize the buffer (fancy word
           for storage - like a reservoir) in this UART more efficiantly.
           You can edit the system.ini file using notepad.  It resides in
           C:\WINDOWS directory.  Please be careful not to change anything
           else, unless you know what you're doing.  I also recommend that
           you save a backup of it first (i.e system.inh, or system.old).
    Misc information
      q: What in the world is a UART?
      a: Stands for Universal Asynchronous Receiver Transmitter.
         Handles the transfer of information to and from your
         serial port.  Need to know more?  Read a book.  Try 
         checking under 'Serial Communications' in the computer
         section of your local bookstore.
      q: What is FIFO?
      a: Stands for First in First Out.  Think of the line at the grocery
         store.  The first person in line gets helped (and thus gets out)
         first.  Same idea.  Except in a FIFO Buffer you can't take cuts.
      q: What's all this 'v.something' stuff?  What does it mean?
      a: Once upon a time there was a committee called the CCITT that 
         created international standards for data communications.
         Now they're called the ITU.  All these 'v-dot' things are
         standards.  Here are some:
          v.32    - the standard for 9600 full duplex Data Communications
          v.32bis - the standard for 14.4K Data Comm.
          v.32ter - the standard for 19.2K 
          v.34    - the standard for 28.8K
         Most of these standards include intermediate speeds as well.
         That's why you might get a 24K connection with a 28.8K modem.
         They connect at the highest speed the phone line will allow.
         To confuse us, the ITU sets standards for other aspects besides
         data speeds.  For example:    
          v.42    - the standard for ARQ error correction
          v.42bis - the standard for LAPM data compression
          v.17    - the standard for half-duplex 14.4K fax comm.     
         So you might have a modem that's a V.34 with V.42bis.  Confused?
         Hey, if it's a fax/data modem it would support V.34 with V.42bis 
         data communications, and V.17 Group III Class 2 fax.  That, and
         'Non-deterministic finite-state automata' make great conversation 
      q: Don't you have anything better to do than to think about modems?
      a: Hey.  Be nice.