SDB:Modem Test

Şuraya atla: kullan, ara


Version: 6.3

Request:

Modem tests to get exactly the information that must be included in a support request regarding modem and wvdial problems. Because of the complexity of the (error) messages, it is much easier to handle such support requests via e-mail than via phone.

As it is possible to save the (error) messages on floppy disk, you can use any desired method to send the e-mail.

Procedure:

Prerequisite:

First, make sure the modem is supported by Linux.

Any modem and any ISDN terminal adapter to use in the usual manner with Linux must be able to "understand" the AT commands directly, not through a driver emulation.
See the support database article "SDB:WinModems and Linux and select "View the entire table".
Internal PCI modems should be shown as "Serial Controller" in the output of the command lspci. If it is shown as "Communication Controller", the PCI modem normally does not understand the AT commands. In case of doubt, ask the manufacturer whether the modem hardware understands AT commands.

  • USB modems and USB ISDN terminal adapters additionally need to comply with the USB CDC ACM (Universal Serial Bus Communication Device Class Abstract Control Model) specification. In case of doubt, ask the manufacturer whether the modem hardware matches the ACM specification.

For any ISDN terminal adapter, a special AT command is additionally needed for initialization (the init string). Normally, ask the manufacturer for the correct init string.

Also needed is information like

  • Exact model and manufacturer name and which type of modem it is (external modem using the serial port, USB modem, internal ISA, ISAPnP, or PCI modem)
  • The type of the connection (which serial port, USB directly connected to the computer or via USB hub)
  • The SuSE Linux version and the type of installation (completely new install, update, standard system or manually selected packages, kernel version)

wvdial messages and the proper messages out of /var/log/messages are essential.

Test to get the wvdial messages and the proper messages out of /var/log/messages:

Do the following (as user root)
1.
Set a tag in /var/log/messages using
  echo "MODEM-TEST" | logger
2.
Test whether the connection will be established using
  wvdial 2>&1 | tee /tmp/info.txt
respectively
  wvdial Providers_name 2>&1 | tee /tmp/info.txt
3.
If the connection was not closed automatically because
of an error, wait at least 10 seconds then close
the connection by pressing
  [Ctrl]+[C]
4.
Get the messages out of /var/log/messages using
  tail -n 100 /var/log/messages |
    grep -A 100 "MODEM-TEST" >>/tmp/info.txt
(enter all in one single line with a space in between)
5.
Insert the contents of the file /tmp/info.txt (it is ASCII text)
directly into the mail.
If you do not use Linux to send the mail do as follows:
5a)
Recode the file for DOS/Windows using
  recode lat1..ibmpc /tmp/info.txt
or recode the file for MAC using
  recode lat1..mac /tmp/info.txt1
5b)
Save it to floppy disk using
  mount /floppy
  cp /tmp/info.txt /floppy/
  umount /floppy
5c)
Insert the content of the file info.txt from the floppy disk
directly into the mail.

A fundamental modem test:

If it is an internal modem, make the modem known to the kernel using an appropriate setserial command. Otherwise, the kernel cannot access the modem.

Try the following modem test.
  /dev/ttyS0 is the device for the first serial port
  /dev/ttyS1 is the device for the second serial port
  /dev/ttyACM0 is the device for an USB modem
  /dev/ttyS2 is normally used for internal modems
             via a setserial command
Use the device to which your modem is connected.
Here, for example, /dev/ttyS0 is used.
1.
As user root, open two terminal windows under
the graphical user interface using
  xterm &
and
  xterm &
2.
In the first terminal window, enter
  cat /dev/ttyS0
so everything that comes from /dev/ttyS0 (from the modem)
is printed here
3.
In the second terminal window, enter
  echo "AT" >/dev/ttyS0
or
  echo -e "AT\r" >/dev/ttyS0
or
  echo -en "AT\r" >/dev/ttyS0
so you send "AT" to /dev/ttyS0 (to the modem)
and, if the modem is accessible and understands
AT commands, it will respond by sending one "OK"
or by sending "OK" continuously.
4.
In the first terminal window, you should see
  OK
which indicates that your modem works.
An alternative fundamental modem test:
Using
  wvdialconf /dev/null 2>&1 | tee /tmp/info2.txt
all normally used modem devices will be tested and
the output is saved to the file modem2.out which
you can additionally insert directly into your
mail according to step 5. above.

Special information:

1.
Use
  echo "ATZ" >/dev/ttyS0
to reset the modem to  default and use
  echo "AT&F" >/dev/ttyS0
to reset the modem to factory settings.
Sometimes you may need this to get a modem
working that has totally mixed up settings.
2.
A USB modem must be shown in the output of
  cat /proc/bus/usb/devices
Otherwise the kernel does not recognize
a modem connected to the USB and the
modem is not accessible.
If it is not shown, use
  lsmod
to display the kernel modules actually loaded.
If there is no kernel module "acm" listed, use
  modprobe acm
to load this kernel module.
If the kernel module "acm" is loaded but the
USB modem is not shown in /proc/bus/usb/devices
it may help to disconnect the modem from the USB
and reconnect it.
If it is still not shown in /proc/bus/usb/devices
the modem probably does not comply with the ACM specification.
3.
If the modem is accessible (it responds to "AT"
or "ATZ" by sending "OK") after the above-mentioned test
 to get the wvdial messages but
there are no sections in /var/log/messages with
"pppd"-messages containing the words
"LCP", "PAP" or "CHAP", "CCP" and "IPCP"
your modem cable is probably not connected correctly.
In contrast to the "fundamental modem test"
wvdial or pppd needs a fully featured
modem cable.
If it works using another operating system
this does not prove that the modem cable
is fully featured.
In case of doubt, ask the manufacturer whether the
modem cable is fully featured.

<keyword>modem,wvdial,test,workflow</keyword>