:: Installing/configuring Conexant based modem on RH 9.0 ::
HOME

Click Here for Comparison Chart for different VPN solutions


Installing/configuring Conexant based modem on RH 9.0
  1. Below I describe the steps that I followed to install/configure the modem that came with my T-2240 e-machine.
  2. It is necessary to determine the make and model of the modem. You can do that using the command:
         #>lspci -vvv
         --SNIP--
         02:0b.0 Communication controller: Conexant HSF 56k HSFi Modem (rev 01)
                 Subsystem: Mac System Co Ltd: Unknown device 8d8b
                 Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR+ FastB2B+
                 Status: Cap+ 66Mhz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- SERR- 
         --SNIP--
         
  3. From the above output, you can see that your modem is based on the conexant chipset. linuxant.org maintains the driver for these modems on linux. It also hosts a useful utility listmodem.sh, which can be used to find more information about the modem. This helps in selecting the right driver to make your modem work:
           shashank@hulk:~/temp> ./listmodem.sh
           =============================================================
           =                  RESULT OF MODEM QUERY                    =
           =============================================================
    
           MODEM #1:
             PCI CONFIGURATION INFORMATION READ:
                Vendor Id         : 14F1
                Device Id         : 2F00
                Revision Id       : 1
                Sub Vendor Id     : 155D
                Sub Device Id     : 8D8B
    
             DEDUCED INFORMATION:
                Vendor Name       : CONEXANT
                Device Name       : HSFi Data/Fax
                Modem Type        : HSF
                Download Site     : http://www.mbsi.ca/cnxtlindrv/
           
  4. The drivers for this particular modem are available both as a source rpm as well as binary rpm's. Before downloading the binary rpm's, determine your system architecture using the command rpm -q --qf '%{ARCH}\n' kernel and your kernel version using the command uname -r.
    I downloaded the binary rpm's for the i686 architecture and kernel version 2.4.20-8 and installed it using the command rpm -ivh hsflinmodem-verison.rpm.

    If you are using a stock linux kernel, you may have to rebuild the RPM from source (command: rpmbuild --rebuild hsflinmodem*.src.rpm and install it using rpm -ivh hsflinmodem-verison.rpm.

    Note the last few lines spit out by the above process. These tell you the device name that was allocated to your modem.
           --SNIP--
           Your HSF modem should now be accessible as /dev/ttySHSF0
           or through the symbolic link /dev/modem.
           --SNIP--
           
  5. The best way to test your modem is to use Wvdial, which comes installed with RH 9.0 systems (by default). If you are using this for the first time, then first execute the /usr/bin/wvdialconf script that comes with this software. This will properly configure the modem:
         [shashank@hulk temp]# /usr/bin/wvdialconf /etc/wvdial.conf
         Scanning your serial ports for a modem.
    
         Port Scan<*1>: Scanning ttySHSF0 first, /dev/modem is a link to it.
         ttySHSF0<*1>: ATQ0 V1 E1 -- OK
         ttySHSF0<*1>: ATQ0 V1 E1 Z -- OK
         ttySHSF0<*1>: ATQ0 V1 E1 S0=0 -- OK
         ttySHSF0<*1>: ATQ0 V1 E1 S0=0 &C1 -- OK
         ttySHSF0<*1>: ATQ0 V1 E1 S0=0 &C1 &D2 -- OK
         ttySHSF0<*1>: ATQ0 V1 E1 S0=0 &C1 &D2 +FCLASS=0 -- OK
         ttySHSF0<*1>: Modem Identifier: ATI -- 56000
         ttySHSF0<*1>: Speed 4800: AT -- OK
         ttySHSF0<*1>: Speed 9600: AT -- OK
         ttySHSF0<*1>: Speed 19200: AT -- OK
         ttySHSF0<*1>: Speed 38400: AT -- OK
         ttySHSF0<*1>: Speed 57600: AT -- OK
         ttySHSF0<*1>: Speed 115200: AT -- OK
         ttySHSF0<*1>: Max speed is 115200; that should be safe.
         ttySHSF0<*1>: ATQ0 V1 E1 S0=0 &C1 &D2 +FCLASS=0 -- OK
    
         Found a modem on /dev/ttySHSF0, using link /dev/modem in config.
         Modem configuration written to /etc/wvdial.conf.
         ttySHSF0: Speed 115200; init "ATQ0 V1 E1 S0=0 &C1 &D2 +FCLASS=0"
         
  6. Now edit the /etc/wvdial.conf file to insert the phone number/user account/password of your ISP as indicated below:
           [Dialer Defaults]
           Modem = /dev/modem
           Baud = 115200
           Init1 = ATZ
           Init2 = ATQ0 V1 E1 S0=0 &C1 &D2 +FCLASS=0
           ISDN = 0
           Modem Type = Analog Modem
           Phone = 123-4567
           Username = shashank
           Password = abcdefgh
           
  7. Connect to your ISP using wvdial command.
  8. Alternately you can even use minicom to configure the modem. Start minicom (command: minicom) and go to the help screen by pressing the CNTL-a z keys (Be patient for the help screen to come up. Sometimes it takes a few seconds). Then select option "O" to configure minicom to use the /dev/modem device.
  9. Dialing out with minicom is a pain. But it is very useful to test the Basic and Extended AT command set, which is the standard language to communicate with modems.
Configuring your RH 9.0 system to act as a Dial-in server
  1. I am assuming that you have properly configured your modem, as described in the above steps, to dial-out. Now I will explain below, how can u configure it to allow you (or other's) to dial-into your server.
  2. A quick search on google will tell you that mgetty+sendfax is the best way to do just that.
  3. If mgetty is not present on your system, grab an rpm from rpmfind.net and install it.
  4. You will have to configure some files to make mgetty work. I will discuss each of them below:
  5. Restart the init process using the command: kill -HUP 1. (there is no need to reboot the PC)
  6. Even though the modems are high speed, I only get 33 Kbps. The main reason for this can be obtained by reading the folllowing thread on google.

Comments and corrections are appreciated and can be sent to papers@mia.ece.uic.edu. Click here for ©opyright information.