Conexant Crypto F200 ADSL

From SlackWiki
Revision as of 03:23, 2 June 2009 by Erik (talk | contribs) (Copy from old)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.

Installation Guide for Crypto F200 0572:cb00 Conexant Systems (Rockwell), Inc. E-Tech ADSL Modem v2


This is a simple guide-howto for the installation of Crypto F200 ADSL modem (the one that comes with various ForthNet ADSL kits in Greece) on Slackware Linux. The following procedure was done on a Slackware 10.2 system (full installation) with kernel 2.6.17.1. The main guide that helped me setup my DSL connection is found in http://accessrunner.sourceforge.net .Excellent site - lots of usefull information . The reason for writting this guide is that some of the stuff on that site and a some howtos found on the net is out of date and a bit confusing. A lot of steps are not necessary when you use a new kernel like 2.6.17.1 . Having not set up a dsl modem on linux before I spent quite some time to figure out the new stuff from the old stuff - the things i had to do with 2.6.17.1 from the things i would have to do with an older kernel. In this guide I will just share with you what I figured out.


So there are 5 simple steps you have to follow.

1.Set up your new kernel so that it is capable of dealing with your Crypto Modem

2.Make sure hotplug is up to date (only if you have an old distro)

3.Grab your modem's windows drivers (tricky part you may have to use alternative drivers from other similar modems), locate CnxEtU.sys and by using the appropriate utility extract the modem´s firmware from it.

4.Setup your pppd by editing /etc/ppp/peers/adsl , /etc/ppp/pap-secrets and /etc/ppp/chap-secrets

5.Run pppd call adsl - You are on the net. Killall pppd to stop the internet connection.


1.Kernel configuration:(this was done in 2.6.17.1)

Networking -> Networking Options -> Asynchronus Transfer Mode (ATM) (EXPERIMENTAL) (ATM)

Device Drivers -> USB Support -> Support for Host-side USB (USB)

Device Drivers -> USB Support -> USB DSL modem support (USB_ATM)

Device Drivers -> USB Support -> USB DSL modem support -> Conexant AccessRunner USB suppport (USB_CXACRU)


2.Hotplug with firmware loader support utility must be available

In Slackware 10.2 hotplug is ready. /etc/rc.d/rc.hotplug is by default exexutable.


3.Extract the firmware from the files contained in the windows driver files.


All conexant access runner based adsl modems (crypto f200 is one of them) work like this: When you plug it in (usb) , your pc sends it its firmware without which the modem does not work (it is the state when the led is permanently off). After it gets the firmware the led starts blinking. It is now that it tries to synchronize with the adsl line. If it succeeds then the led stops blinking and everything works.

So the first thing we do is find the firmware for the modem.

Downlaod cxacru-fw tool (this is the program that extracts the firmware from the file found in windows driver) You can find it in http://accessrunner.sourceforge.net/firmware.shtml -> Obtaining firmware (cxacru-fw.bin) Build cxacru-fw.c by typing gcc cxacru-fw.c -o cxacru-fw

Extracting the firmware from the driver is easy: Locate CnxEtU.sys in windows driver files. Use cxacru-fw tool to extract the firmware: name it cxacru-fw.bin Place cxacru-fw.bin in /lib/firmware/ (/etc/rc.d/rc.hotplug grubs the firmware from there)

Check if your modem works: Check the LED on top of the modem (On not blinking) Check /var/log/messages (up) Check /proc/net/atm/cxacru:0 (Line Up)

If this works and the Led on top of the ADSL modem stops blinking a little after you plug it in then (you are lucky) go to step 4.


The Hardest part is to find the appropriate windows driver (the appropriate CnxEtU.sys file) as the cd that came with my Crypto F200 (with CnxEtU.sys 9/12/03) had a firmware that would not let the adsl modem synchronize. This is what happens when the modem does not synchronize:(look at /var/log/messages) Attempt to synchronize Fail Second attempt Nothing else

and the led on top of the adsl modem keeps blinking for ever.

What I did was to search for drivers for other adsl usb modems with the same chip as Crypto F200 had (conexant) and the same Vendor and Product ID (which you can get with lsusb (0572:cb00))

Here is a list (posted in http://accessrunner.sourceforge.net)

Conexant ADSL modem (Hasbani project)

  • AusLinx AL-2006

ACORP Sprinter@ADSL USB

  • Amigo HMX-CA85UR-K8
  • Digicom Michelangelo Usb C
  • Origo ASU 8000

Atlantis Pocket USB ADSL Modem (A01-AU2)

  • These are known to work

I was lucky . AusLinx AL-2006 Driver V099.061 had CnxEtU.sys with working firmware !!! (look at /var/log/messages)

Jun 25 00:16:27 Itmy kernel: usb 2-2: configuration #1 chosen from 1 choice Jun 25 00:16:29 Itmy kernel: cxacru 2-2:1.0: found firmware cxacru-fw.bin Jun 25 00:17:27 Itmy kernel: ATM dev 0: ADSL line: attempting to activate Jun 25 00:17:52 Itmy kernel: ATM dev 0: ADSL line: training Jun 25 00:17:57 Itmy kernel: ATM dev 0: ADSL line: channel analysis Jun 25 00:18:02 Itmy kernel: ATM dev 0: ADSL line: up (512 kb/s down | 128 kb/s up)


4.Final step: Setup pppd in order to connect to the internet.

-Load pppoatm module: Slackware:add pppoatm in /etc/modules.conf in other distros it may be in /etc/modules

-Set pppd options: Create /etc/ppp/peers/adsl Edit /etc/ppp/peers/adsl:

# General configuration options for PPPD:

lock

kdebug 1

defaultroute

noipdefault

holdoff 4

persist

maxfail 25

usepeerdns

passive

asyncmap 0

lcp-echo-interval 2

lcp-echo-failure 7

user put.your.username.here

plugin /usr/lib/pppd/2.4.4b1/pppoatm.so

8.35


Edit /etc/ppp/pap-secrets

"put.your.username.here" * "putyourpasswordhere" *

Edit /etc/ppp/chap-secrets

"put.your.username.here" * "putyourpasswordhere" *



5.Connect to the internet !!!

Start the connection pppd call adsl

If everything goes well you will see something like this: Plugin /usr/lib/pppd/2.4.4b1/pppoatm.so loaded. PPPoATM plugin_init PPPoATM setdevname_pppoatm - SUCCESS:8.35

Stop the connection killall pppd Link title