How To config Boca modem...
The Linux Webring:
[ Previous | Next | Home | Random | List ]
Linux Configuration for the Internet Connection

0. Prehistory. Boca modem was in Linux INcompatibility List

David Welton wrote that PnP Boca Modem is incompatibily  with Linux
If this reference hasn't worked search "Linux INCompatibility List Welton"
on the Dejanews in the mode of old archive. It must be the letter #3 form 97/08/20.

1. If you have Plag&Play modem
  1.1    If you have PnP ( Plag&Play modem ) ,for example Boca V.34 PnP
      which works well in Windows95 and we have a problem in Linux
      download and install the package isapnp.
      This package is copyright P.J.H.Fox (
      and it is destinated  for free use. I use it. This tool have solved the problem
      of my PnP modem Boca V.34. in my Linux system.

  1.2    To install this package you need to execute
         make install
      ( before I deleted the line with -DNEEDNANOSLEEP )
      It makes a) pnpdump, isapnp in /sbin
               b) some manuals man
               c) may by other things, see Makefile
       See file INSTALL of the package isapnptool
  1.3    pnpdump > /etc/isapnp.conf
      This is the configuration file for isapnp.
      One can see man isapnp.conf, man isapnp, man pnpdump ...
      It makes template for configuring.
      Important: This tool sees Boca Modem ( see this conf ).

2. Linux build-in program setserial

     2.1  Setserial is a program designed to set and/or report the
      configuration information associated with a  serial  port.
      This information includes what I/O port and IRQ a particu-
      lar serial port is using, and whether or not the break key
      should  be interpreted as the Secure Attention Key, and so
        During the normal bootup process, only COM ports  1-4  are
      initialized,  using  the default I/O ports and IRQ values,
      as listed below.  In order to  initialize  any  additional
      serial  ports,  or  to  change the COM 1-4 ports to a non-
      standard configuration, the  setserial  program  should be
      used.   Typically  it  is called from an rc.serial script,
      which is usually run out of /etc/rc.local.

   2.2 Setseril options
        If you use -v  setserial will print additional status
      output when the Linux system is booting.
        The device argument  or  arguments  specifies  the  serial
      device  which  should  be  configured or interrogated.  It
      will usually have the following form: /dev/cua[0-3].
        Why uart 16550A ?
        The option uart is used to set the UART type (port type).
      The permitted types are  none,  8250,  16450,  16550,  and
      16550A.  Since the 8250 and 16450 UARTS do not have
      FIFO's, and since  the  original  16550  have  bugs which  make
      the FIFO's unusable, the FIFO will only  be used on chips
      identified as 16550A UARTs.


3. Check isapnp and setserial
   3.1  Do command isapnp /etc/isapnp.conf.
      It checks errors,
      And if it's OK then you get about such as
       "Board 1 has Identity 5f 00 07 92 9a 02 03 49 0a:
        BRI0302 Serial No 496282 [checksum 5f]"

   3.2   setserial -v /dev/cua1 uart 16550A
      /dev/cua1, UART: 16550A, Port: 0x02f8, IRQ: 3

4. Place isapnp and setserial in the /etc/rc.local

      To call the package isapnp and the program setserial while
      the Linux boot set the next lines in  /etc/rc.d/rc.local

      if [ -x /sbin/isapnp ]; then
          /sbin/isapnp /etc/isapnp.conf
          if [ -x /bin/setserial ]; then
             /bin/setserial -v /dev/cua1 uart 16550A

         The program setserial is the Linux build-in command
      and has to be used even you haven't PnP modem.

5. Use minicom to check if the modem keeps alive

    For most systems, reasonable defaults are already compiled in.

    5.1  Ctrl-A Go to the minicom menu
         Select O and go to the menu

             Filenames and paths
             File transfer protocols
             Serial port setup
             Modem and dialing
             Screen and keyboard
             Save setup as dfl
             Save setup as..

    5.2     Select "Serial port setup"
         Your set must be about this

             A - Serial Device         : /dev/cua1
             B - Lockfile Location     : /var/lock
             C - Callin Program        :
             D - Callout Program       :
             E -    Baud/Par/Bits      : 19200 8N1
             F - Hardware Flow Control : Yes
             G - Software Flow Control : No

    5.3    Ctrl-A Go to the minicom menu
        Select D and do Dial

        You must hear your modem.

6. Nameserver configuration in the /etc/resolv.conf

# Local domain server, for example "euronet"
domain euronet
# nameserver "IP-adress1", This is the domain name server 1
# nameserver "IP-adress2", This is the domain name server 2

    Note, that the namesrver order is very important. The main
nameserver must be placed first.

7. Establish ppp connection. Typical ppp-on script

   You must establish the ppp ( Point-to-Point protocol ) connection
Typical ppp-on script /usr/sbin/ppp-on

# Script to initiate a ppp connection. This is the first part of the
# pair of scripts. This is not a secure pair of scripts as the codes
# are visible with the 'ps' command.  However, it is simple.
# These are the parameters. Change as needed.
LOCAL_IP=        # Local IP address if known. Dynamic =
REMOTE_IP=       # Remote IP address if desired. Normally
NETMASK=   # The proper netmask if needed
# Export them so that they will be available at 'ppp-on-dialer' time.
exec /usr/sbin/pppd debug lock modem crtscts /dev/ttyS1 115200 \
        asyncmap 20A0000 escape FF kdebug 4 $LOCAL_IP:$REMOTE_IP \
        noipdefault netmask $NETMASK defaultroute connect $DIALER_SCRIPT

8. Typical chat script /etc/ppp/ppp-on-dialer

# This is part 2 of the ppp-on script. It will perform the connection
# protocol for the desired connection.
# !!! Note, the chat is very sensitive to odd characters.
# !!! Don't insert comments after exec line 

exec /usr/sbin/chat -v                                  \
        TIMEOUT         3                               \
        ABORT           '\nBUSY\r'                      \
        ABORT           '\nNO ANSWER\r'                 \
        ABORT           '\nRINGING\r\n\r\nRINGING\r'    \
        ''              \rAT                            \
        'OK-+++\c-OK'   ATH0                            \
        TIMEOUT         30                              \
        OK              ATDT5733855                     \
        CONNECT         ''                              \
        name:           your_loginname                  \
        assword:        your_password 

9. Unbelievable. I have Linux connection to Internet

 9.1 I have run /usr/sbin/ppp-on, I hear my modem and the connection
   is established. Check it by ping or ftp. We can now to launch
   your browser Netscape or whatever.

 9.2 When I changed speed to 115920 baud ( instead of 19200 ) in /usr/sbin/ppp-on
   the connection was established well!

 9.3 Don't forget to do ppp-off at the end of session.
   When I have run /usr/sbin/ppp-off
   the connection was down and pppd was immediately dropped.

  NAMTEK, Inc.
  Maintained by Rafael Stekolshchik
   Imagined Cities