INTRODUCTION
------------
This software is a driver for the Apache(R) ADSL-USB modem, model AB-DSL/C,
manufactured by Apache MicroPeripherals, Inc. (http://www.apache-micro.com).
The apache-adsl-c.jpg file, included in tgis package, shows a picture of this
modem. This modem is (or used to be) supplied for free by Actcom. The
manufacturer of this modem (Apache MicroPeripherals, but actually the
chipset manufacturer is Conexant) provides support only for Windows operating
systems. This driver allows using this modem under Linux operating systems.
MAIN FEATURES
-------------
-fully user-space solution -- no kernel patching and/or compilation is
necessary
-only the PPPoA VC/MUX protocol is supported
REQUIREMENTS
------------
-linux kernel with USB and PPP support (hopefully most distros will do)
-libusb-0.1.7 which can be downloaded from http://libusb.sf.net or
from the same site you downloaded this package
-reasonable amount of memory, disk space and CPU speed
COMPILING
---------
1. If libusb is not installed on your system, install it before installing
the driver. Follow the instructions in that package (for the impatient
./configure; make; make install will do the job)
2. Unpack the tarball
3. cd adsl-up-0.1
4. Edit Makefile and adjust the INSTALL_DIR variable to point to the place
where you want the software to be installed.
5. make
6. make install (probably you need to be root to do that)
RUNNING
-------
1. Edit (probably as root) the startadsl script from the installation directory
and adjust the USER variable
2. Edit the /etc/ppp/options file and make it look like the options.sample
file provided with this package
3. Create a file named /etc/ppp/pap-secrets like the pap-secrets.sample file
provided with this package. Adjust the username and password accordingly.
Change the permissions of the file so that only root can access it.
4. Set up the DNS. As root:
a) cd /etc
b) rm resolv.conf
c) ln -s ppp/resolv.conf .
(Don't worry if /etc/ppp/resolv.conf does not exist yet -- it will be created
as soon as pppd starts working)
5. Make sure the modem is connected.
6. As root, start the driver, using the startadsl script. This immediately
launches the adsl-up executable, which should go through the following stages:
a) Scan the USB bus and find the modem
b) Download the firmware on the modem. After this stage the Ready LED
on the modem will blink.
c) Set up some configuration registers.
d) Attempt to bring the line up. This stage takes the longest time.
During this stage, you will see the READY and LINK LEDs blinking.
The current line status displayed every second. When the line status
is read as UP for 5 times consecutively, it is assumed that the line
is up, and execution continues from the next step. Otherwise the
attempts to bring the line up are repeated.
e) If we reached this stage, the LINK LED should light continuously.
At this stage pppd is launched. The notty option is passed
automatically to pppd. All the command line options which follow
the -vci option are passed unchanged to pppd.
f) Two threads are created, one transferring data from the modem to
the pppd, while the other thread transferring data in the other
direction
g) The main thread goes in an infinite loop, checking the line status
every second. The output on the screen should be similar to stage d).
Leave the current window alone, until you want to bring the connection down.
At this stage you're supposed to be connected. In another window, issue the
following command:
/sbin/ifconfig -a
You should see an output like the following:
...
ppp0 Link encap:Point-to-Point Protocol
inet addr:192.117.103.188 P-t-P:192.114.47.251 Mask:255.255.255.255
UP POINTOPOINT RUNNING NOARP MULTICAST MTU:1500 Metric:1
RX packets:6 errors:0 dropped:0 overruns:0 frame:0
TX packets:6 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:3
RX bytes:220 (220.0 b) TX bytes:294 (294.0 b)
...
Try to ping the local and the remote addresses. If this works, check whether
the DNS is working OK by issuing a command like:
host
If this also works, what can I say!? Start a browser, or whatever TCP/IP
application you want and enjoy the ride.
SHUTTING DOWN
-------------
To shut down the driver, hit Ctrl-C in the Window where the driver runs.
After that, unplug the modem, wait a few seconds, and replug it. If you
don't do this, pppd won't always exit. I do understand that this is ugly.
Some future version will fix this.
FEEDBACK WANTED
---------------
The current version of the driver is 0.1. This means that the code is far
from being mature, but it should be usable. Therefore, your feedback is
of utmost importance for the future development of the software. Please
send requests, problems, comments, encouragement letters, flames, etc.
to emild@cs.technion.ac.il
THANKS
------
I wish to thank Benoit Papillaut for his Windows USB sniffer
http://benoit.papillault.free.fr/usbsnoop/index.en.php
Without this software, writing this driver would have been
close to impossible. Thanks to Johannes Erdfelt,
and Thomas Sailer, for libusb. This
library greatly simplifies the communication with USB devices.
I also wish to thank the Haifa Linux Club (http://www.haifux.org)
for their encouragement. Thanks to the open standards of the
Internet and let's hope that they will remain like this.