SpeedTouch USB ADSL HowTo for Fedora Core 2
This HowTo uses the
userspace SpeedTouch USB driver. It has been tested on an Alcatel green
manta SpeedTouch USB modem and on a bordeau Speedtouch 330. It should
be fine for the Thomson models
too. There is a chance it works for Smoothwall modems.
All operations must be
performed being root.
This HowTo is intended for PPPoA DSL connections. I could not yet get
PPPoE to operate. A chapter is dedicated to PPPoE.
If you download the updated FC2 kernel 2.6.7-1.494.2.2 your SpeedTouch
USB connection probably won't operate any more. You can download and
install that kernel but when you want to use the modem you will have to
boot on the old kernel.
A solution when using a different kernel is to erase the speedtch.ko
module (or prevent it be compiled. To find out occurences of that
module type this command as root:
find
/lib | grep speedtch
Traduzione italiana da Vittorio Sozzi: http://www.fedoraitalia.org/modules/wfsection/article.php?articleid=56
Installation
You need to get files:
- The microcode file(s) for the modem. Now this is a quite
complicated matter. The microcode you need depends on your type of
modem. Some modems have several different microcodes proposed.
Furthermore you can either get the microcode as one sole file or two
separate files. This page seems to propose the microcodes for all
SpeedTouch and Smoothwall modems: http://www.hystedjp.pwp.blueyonder.co.uk
and this page proposes some data too: http://linux-usb.sourceforge.net/SpeedTouch/download/index.html.
Whatever files you download or get from a Windows or Macintosh install,
you must
rename them. If you got the sole file, rename it to bootboth.eni and if
you got the two separate files rename them to boot1.eni and boot2.eni.
Please note I tried this all only with a generic Revision 0.00 green
manta
modem (best files for me were
KQD6P1.eni and KQD6P2.eni). Also note you don't need to get the
right boot files
immediately. The troubleshooting section at the end of this text
explains how you can
change them without re-installing.
Put these files (fc2_speedtouch_usb.tar.gz,
speedtouch-1.?.tar.gz (or .bz2) and bootboth.eni or boot1.eni and
boot2.eni)
inside (say) the /root
folder.
Open a terminal window (Taskbar
Menu -> System Tools -> Terminal) and
type this command (or use any
alternate
method to extract the file, for example right-clic on the file and ask
for extraction):
tar xzf
fc2_speedtouch_usb.tar.gz
That creates the fc2_speedtouch_usb folder inside the /root folder. Now
put the other files
inside that folder.
You can do that either by typing the following
commands inside a terminal window or by moving the files with the mouse.
mv
speedtouch-1.?.tar.* fc2_speedtouch_usb
mv
bootboth.eni
fc2_speedtouch_usb
or
mv boot1.eni
fc2_speedtouch_usb
mv boot2.eni
fc2_speedtouch_usb
(Maybe you
should make a backup copy of that fc2_speedtouch_usb folder containing
the additional files. You probably will use it again soon. Keep it as a
ready to use install tool.)
Using the terminal window (or
a new one), cd towards the fc2_speedtouch_usb folder and type
the install command:
cd
fc2_speedtouch_usb
./install
Once the flow of text ends all files will be installed. (If you wish, you can display that
install file inside a text editor, instead of executing it in the
terminal window. Then you can perform the commands it contains by hand.)
Now you still
need to tune two files:
- /etc/ppp/chap-secrets
- /etc/ppp/peers/adsl
Edit them using any suitable text editor (gedit, kwrite, nedit,
kedit, vi, emacs, mcedit...). If you like the terminal window simply
try these commands:
gedit
/etc/ppp/chap-secrets
gedit
/etc/ppp/peers/adsl
/etc/ppp/chap-secrets must contain your login and password the way
shown beneath. (Some
ADSL providers may request you rather do this with the
/etc/ppp/pap-secrets
file. If in doubt fill in your login and password
inside both files. Also these files may contain other login and
password
lines, for example your dial-up login and password. That's OK: simply
add a line for your ADSL login and password.)
#
Secrets for authentication using CHAP
# client
server secret
IP addresses
"yourlogin@YOURPROVIDER"
* "yourpassword" *
/etc/ppp/peers/adsl should contain your login too. You must also tune
the vpi and vci. In the example beneath the vpi is 8 and the vci is 35
which suits for my country. For other countries please consult for
example the page
http://linux-usb.sourceforge.net/SpeedTouch/faq/index.html#q12
or look
inside the data provided by your ADSL provider.
#########################################
# Userspace GPL Speedtouch USB
peer file#
#########################################
# Put your ISP login name here:
user "yourlogin@YOURPROVIDER"
# Adapt the vpi.vci couple to
your ISP/country settings:
pty "/usr/local/sbin/pppoa3 -e 1
-c -m 1 -vpi 8 -vci 35"
sync
noipdefault
noaccomp
nopcomp
noccp
novj
persist
holdoff 4
maxfail 25
usepeerdns
defaultroute
#debug
#kdebug 1
updetach
Once the files are installed and tuned you can start the ADSL
connection by typing
this command in a terminal window. If it doesn't succeed try restarting
your computer.
service
speedtouch_usb start
The modem LEDs should blink. A few seconds after they stopped
blinking your connection should be on. If not, most error messages are
stored
inside the file /var/log/speedtouch_usb.log so you can consult that
file
for clues.
Starting and stopping the ADSL connection
Your ADSL connection should start automatically each time
the system starts.
When the connection is on, the academic way to stop it is to type this
command (being root):
service
speedtouch_usb stop
The academic way to start the connection is to type this command:
service
speedtouch_usb start
My way to stop the connection is to type this:
killall pppd
To get it back on I type this (the
"adsl" parameter is the name of the file /etc/ppp/peers/adsl):
pppd call adsl
Restarting the connection not allways succeeds. Once it's stuck it
keeps stuck. I tried to figure out a way to solve that problem but I
haven't found yet. The USB system seems stuck. Then the only solution
is to restart the
computer.
Martin West provided a reconnection script. It is inside the
fc2_speedtouch_usb folder and is named check_adsl.sh
Tuning ADSL start at system boot-up
This can be done using a service configuration tool or by issuing the
two commands proposed beneath.
If you want the ADSL connection to no more start automatically at
system startup type this command:
service --level 5
speedtouch_usb off
If you want the ADSL connection to start back automatically at system
startup type this command:
service --level 5
speedtouch_usb on
Should the command to stop the automatic boot fail, maybe try
this:
service --level
0123456 speedtouch_usb off
Uninstalling
To get rid of all files installed, open a terminal window, cd towards
the fc2_speedtouch_usb folder and type the uninstall command:
cd
fc2_speedtouch_usb
./uninstall
This should remove all files that were installed. Only the
/etc/ppp/chap-secrets, /etc/ppp/pap-secrets and /etc/resolv.conf files
should remain unharmed. If you need to keep a copy of some files, say
the /etc/ppp/peers/adsl file, make a backup of them before uninstalling.
Troubleshooting
Did you fill in properly the /etc/ppp/chap-secrets and
/etc/ppp/peers/adsl files?
Did you try to write down your login and password inside the
/etc/ppp/pap-secrets file too?
Did you type your login with the full @PROVIDER? For example suppose my
login is atnoip93 and my provider is Planet Internet. My complete ADSL
login is atnoip93@PLANET
Is your hardware installed properly? Can you connect using another
operating system?
Search the /var/log/speedtouch_usb.log file for clues. Most error
messages are logged inside that file each time your machine tries to
connect. This is an example of /var/log/speedtouch_usb.log afther a
successful connection. Note the DNS data is a key to proper
functioning:
Using
interface ppp0
Connect: ppp0 <-->
/dev/pts/0
CHAP authentication succeeded:
CHAP authentication success, unit 8867
local IP address
81.11.178.48
remote IP address 81.11.176.1
primary DNS address
194.119.228.67
secondary DNS address
193.74.208.135
What if your ADSL provider does not provide automatic DNS
configuration? The system
I provide reads the /var/log/speedtouch_usb.log file to get the DNS
data and automatically fills that in inside the /etc/resolv.conf file.
That will not work if the DNS data is not automatically provided. The
solution is you fill the
/etc/resolv.conf file in yourself, using the DNS data from your
provider's papers. Maybe phone the helpdesk. This is how my
/etc/resolv.conf
file looks like:
nameserver
194.129.218.67
nameserver 193.73.200.135
You get no more connection since you installed a new kernel. Then
probably the drivers interfere with the speedtch kernel module. Try
either to re-compile the kernel without the SpeedTouch module (bottom
of USB configuration) or add this line inside the
/usr/local/sbin/speedtouch_usb_connect file, amongst the modprobe
lines: modprobe -r speedtch
If you're sure everything's OK but you keep having no connection, a
probable problem is you didn't get the right modem bootcodes (read the top of this HowTo).
So you will have to try out several different modem bootcodes till you
get the right ones. For example the Macintosh bootcode firmware.bin
does not operate for me. The bootcodes are located inside folder
/usr/local/share/speedtouch. Erase the existing ones and replace them
by other ones. But allways renaming them: either bootboth.eni if you're
using the standalone file or boot1.eni and boot2.eni if you're using
the two bootcodes system. There's no problem having both the
bootboth.eni, boot1.eni and boot2.eni files all three present inside
/usr/local/share/speedtouch but then the system will choose the
bootboth.eni file. (The
/usr/local/share/speedtouch folder contains a file named boot.v123.bin.
That is a first bootcode file. So if you believe you only got the
second bootcode ans miss the first bootcode, try renaming that
boot.v123.bin file to boot1.eni and the second of course to boot2.eni.
It worked for me.)
You get the ADSL connection but you're delved under error message when
using a console. Best solution I found was to use another set of
bootcodes. Once I used the KQD6P1.eni and KQD6P2.eni files (on my
Revision 0.00 green manta) I got far less problems. Just a a few error
messages at startup and that's all.
If you get a "bulk" message at startup you probably can avoid it by
adding the -s option to the two modem_run commands inside the
/usr/local/sbin/speedtouch_usb_connect file.
Once you find out the right tunings, maybe you should mirror them
inside your backup fc2_speedtouch_usb folder. That way you won't have
to do them again next time you install.
PPPoE
The /etc/ppp/peers/adsl file
installed is for PPPoA. I put inside the
fc2_speedtouch_usb folder a file named adsl-pppoe but it's ineffective.
The aim was you copy that adsl-pppoe
file towards the /etc/ppp/peers folder and rename it to adsl (thereby
deleting the existing adsl file). And edit that new
/etc/ppp/peers/adsl file to put your correct login. The only test I
could perform with that script is to check the system accepts it. When
I start a connection I get a behaviour similar to a PPP dial-up
modem but I get no connection.
These links may help you find clues:
http://www.hystedjp.pwp.blueyonder.co.uk
http://www.mail-archive.com/speedtouch@ml.free.fr/msg04203.html
Please tell me if
you got a working DSL connection with PPPoE.
Remarks for experts
The key to run the SpeedTouch USB driver on Fedora Core 2 is the
-e 1 option inside the /etc/ppp/peers/adsl file for the pty option. I
learned that in a mail by Philippe Elie on page http://www.mail-archive.com/speedtouch@ml.free.fr/msg05304.html
You will find additional data inside the
/usr/local/share/doc/speedtouch folder. Also you can type man pppoa3 or man pppd for
data.
Thanks to Vittorio Sozzi for testing on a 330 modem, translate in
Italian and report the problem with the kernel update. To
Piersandro Guerrera
for finding and solving a problem in the install script. To Martin West
for reporting the solution of erasing the speedtch.ko module, reporting
the speedtouch-1.3 package works fine provided the install script is
adapted and reporting this link:
http://www.oracle-base.com/articles/Misc/SpeedTouchUSBLinux.php