Introduction
************

Description
===========

EciAdsl est un driver Linux libre pour connecter votre ordinateur à internet, si vous avez un modem ADSL USB basé sur un chipset Globespan.

D'autres systèmes d'exploitation comme *BSD sont en développement (contactez les auteurs pour plus d'information, see Auteurs / Support.)

La page d'accueil du driver EciAdsl est ici :

http://eciadsl.flashtux.org

Une liste des modems supportés est disponible sur cette page :

http://eciadsl.flashtux.org/modems.php?supported=yes

Pré-requis
==========

Programmes
----------

Pour installer le driver EciAdsl, vous devez posséder les programmes suivants :

  * un système GNU/Linux (architecture x86) avec les outils standards (les MDK9/RH8/très récente/exotique peuvent avoir des problèmes (résolvables), BSD et autres systèmes ne sont pas encore officiellement supportés).

  * support matériel USB 1.1

  * noyau Linux 2.4.x (>=2.4.18-pre3 ou <2.4.18-pre3+patch N_HDLC pour avoir la reconnexion automatique pppd, ce qui est recommandé)

  * support USB (sous forme de modules) :

       - support USB

       - "USB preliminary fs"

       - votre "HUB USB controller" EN MODULE

       - pas de module DABUSB

  * support PPP (y compris le package pppd usermode >=2.4.0)

  * installation par les sources: outils de développement standards (sources Linux dans /usr/src/linux, outils GNU comme gcc>=2.91.66, GNU make, etc.)

  * modem USB (avec puce GlobeSpan *seulement*)

  * bash (>=2.x.x)

  * facultatif : tcl/tk >= 8.x.x, perl

  * droits root (au moins pour l'installation)

Noyau
-----

Si vous avez la dernière version de Mandrake/Redhat avec le noyau par défaut, vous pouvez sauter ce chapitre.

Selon votre distribution, des options peuvent manquer dans votre noyau. Si eciadsl-doctor détecte des options manquantes, alors vous devez recompiler votre noyau.

Vous DEVEZ inclure ces options (``*'' signifie ``dans le noyau'', ``M'' signifie ``en module''):

USB support --->

  <M> Support for USB

  [ ]   USB verbose debug messages

  --- Miscellaneous USB options

  [*]   Preliminary USB device filesystem

  [ ]   Enforce USB bandwidth allocation (EXPERIMENTAL)

  [ ]   Long timeout for slow-responding devices (some MGE Ellipse UPSes)

  --- USB Host Controller Drivers

  < >   EHCI HCD (USB 2.0) support (EXPERIMENTAL)

  <M>   UHCI (Intel PIIX4, VIA, ...) support

  <M>   UHCI Alternate Driver (JE) support

  <M>   OHCI (Compaq, iMacs, OPTi, SiS, ALi, ...) support

  ..

  --- USB Multimedia devices

  ..

  < >   DABUSB driver

  ..

Character devices --->

  ..

  [*] Non-standard serial port support

  <M>   HDLC line discipline support

  ..

Network device support --->

  ..

  <M> PPP (point-to-point protocol) support

  [ ] PPP multilink support (EXPERIMENTAL)

  [ ] PPP filtering

  <M> PPP support for async serial ports

  <M> PPP support for sync tty ports

  <M> PPP Deflate compression

  <M> PPP BSD-Compress compression

  < > PPP over Ethernet (EXPERIMENTAL)

  < > PPP over ATM (EXPERIMENTAL)

Installation
************

Suppression de dabusb
=====================

Si le modem est allumé au démarrage de Linux, alors vous devez supprimer dabusb.

Sinon, vous pouvez sauter ce chapitre.

A priori, hotplug est le coupable. Il détecte votre modem comme étant un périphérique audio, et charge le module dabusb afin d'activer le support pour ce périphérique.

Si /etc/hotplug/blacklist est présent, éditez-le et ajoutez-y une ligne contenant le mot 'dabusb' (sans les quotes). Redémarrez Linux.

Si vous ne pouvez pas trouver ce fichier alors que hotplug est bien installé et activé, il doit y avoir d'autres moyens de le configurer. Le cas échéant, appliquez la méthode suivante (c'est bourrin mais bon) :

  * Démarrez votre machine Linux avec votre modem débranché

  * Vous pouvez supprimer le module dabusb de votre système en utilisant eciadsl-config-tk ou eciadsl-config-text.

     Vous pouvez aussi directement appeler eciadsl-remove-dabusb (dans /usr/local/bin par défaut).

     Ou encore, manuellement, tapez la commande suivante :

     modprobe -r dabusb && rm -f $(modprobe -l | grep dabusb) && depmod -a

Si le noyau a été compilé à la main, n'oubliez pas de retirer dabusb de la configuration du noyau.

Installation du driver
======================

Téléchargez la dernière version stable du package usermode (code source ou un package correspondant à votre distribution) sur cette page :

http://eciadsl.flashtux.org/download.php

Selon le package que vous avez pris, tapez une de ces commandes :

  * Sources (.tar.gz): tar xvzf /path/eciadsl-usermode-x.y.tar.gz

  * Sources (.tar.bz2): tar xvjf /path/eciadsl-usermode-x.y.tar.bz2

  * RedHat/Mandrake (.rpm): rpm -i /path/eciadsl-usermode-x.y-1.i386.rpm

  * Debian (.deb): dpkg -i /path/eciadsl-usermode_x.y-1_i386.deb

  * Slackware (.tgz): installpkg /path/eciadsl-usermode-x.y-i386-1.tgz

  * Gentoo (.ebuild):

     voir http://doc.gentoofr.org/Members/BeTa/eciadsl-gentoo-howto/view

où x.y est la version (par exemple 0.8)

Compilation
===========

Si vous avez installé un package spécifique à votre distribution (Redhat/Mandrake, Debian, Slackware, Gentoo), vous pouvez sauter cette étape.

Tapez ceci dans une console ou un terminal :

./configure

make

En "root": make install

Tapez ./configure --help pour voir la liste des options disponibles. Si le driver doit être installé dans un autre répertoire de base que celui par défaut (/usr/local), utilisez l'option --prefix, par exemple --prefix=/opt.

Les fichiers de configuration du driver peuvent eux aussi être installés ailleurs que dans le répertoire par défaut (/etc/eciadsl). Utilisez pour cela les options --conf-prefix (par défaut: /) et --conf-dir (par défaut: etc/eciadsl). Par exemple:

--conf-prefix=/opt --conf-dir=etc/eciadsl

ou --conf-prefix=/opt/eciadsl --conf-dir=etc

Attention, l'option --etc-prefix (par défault: /, le répertoire est donc /etc) est utilisée pour accéder aux fichiers de configuration de pppd et à resolv.conf notamment ! N'utiliser donc --etc-prefix qu'en sachant exactement ce que cela implique.

D'autres options sont disponibles, ./configure --help vous renseignera sur ce point.

Configuration
*************

Outil de configuration
======================

  * Si Tcl/Tk est installé sur votre système, vous pouvez lancer la configuration graphique :

     eciadsl-config-tk

     Entrez tous les paramètres sans cocher ``Change synch .bin file''.

  * Sinon, lancez la configuration en mode texte :

     eciadsl-config-text

     Suivez simplement les étapes pour configurer le driver.

Détail des paramètres
=====================

user
     Nom d'utilisateur fourni par votre fournisseur

     Par exemple : username@clubadsl1

password
     Mot de passe fourni par votre fournisseur.

VPI
     Premier numéro du ``numéro composé''

     Par exemple si vous ``composez'' 8,35 avec le driver Windows, alors votre VPI est 8.

VCI
     Second numéro du ``numéro composé''

     Par exemple si vous ``composez'' 8,35 avec le driver Windows, alors votre VCI est 35.

Provider DNS
     Cochez la case ``Update provider DNS'' et choisissez votre fournisseur dans la liste.

     Si votre fournisseur n'est pas dans la liste, entrez manuellement les serveurs DNS dans les champs en dessous de la liste.

     Si vous ne connaissez pas vos serveurs DNS, lisez cette question de la FAQ :

     http://eciadsl.flashtux.org/faq.php#1.6

Modem
     Sélectionnez votre modem dans la liste.

     Si votre modem n'est pas dans la liste, vérifiez sur la page des modems :

     http://eciadsl.flashtux.org/modems.php

     - Si votre modem est ``non supporté'', le driver ne fonctionnera jamais avec votre modem (merci de ne pas demander de support aux développeurs, vous devez chercher un autre driver).

     - Si votre modem est ``peut-être supporté'', alors contactez les développeurs pour plus de détails. See Auteurs / Support.

Modem chipset
     [la valeur est positionnée automatiquement en choisissant le modèle de modem].

     Si vous avez un doute, consultez la page des modems :

     http://eciadsl.flashtux.org/modems.php?lang=fr

Alt synch
     [la valeur est positionnée automatiquement en choisissant le modèle de modem].

     C'est l'interface alt utilisée pour l'USB par eciadsl pour communiquer avec le modem durant la phase de synchronisation.

     Les valeurs courantes sont : 4 pour GS7070 (anciens chipsets de modems) - 5 ou 0 pour les chipsets GS7470 (nouveaux chipsets)

     Si vous avez un doute, consultez la page des modems :

     http://eciadsl.flashtux.org/modems.php?lang=fr

Alt pppoeci
     [la valeur est positionnée automatiquement en choisissant le modèle de modem].

     C'est l'interface alt utilisée pour l'USB par eciadsl pour communiquer avec le modem durant la phase pppoeci.

     Les valeurs courantes sont : 4 pour GS7070 (anciens chipsets de modems) - 1 ou 0 pour les chipsets GS7470 (nouveaux chipsets)

     Si vous avez un doute, consultez la page des modems :

     http://eciadsl.flashtux.org/modems.php?lang=fr

Synch .bin file
     Cochez cette option seulement si eciadsl-start échoue sur la synchronisation.

PPP mode
     - Pour les utilisateurs en France, choisissez le mode PPP par défaut (VCM_RFC2364).

     - Pour les autres utilisateurs, vérifiez le mode que votre fournisseur vous impose.

     Regardez cette question de la FAQ :

     http://eciadsl.flashtux.org/faq.php#5.4

DHCP
     Cochez ceci seulement si votre fournisseur utilise DHCP.

     Si vous ne savez pas, laissez cette option non cochée.

Static IP
     Cochez cette option seulement si vous avez une adresse IP statique.

     Si c'est le cas, entrez votre adresse IP et la passerelle en dessous.

     Si vous ne savez pas, laissez cette option non cochée.

Connexion
*********

Eciadsl-start
=============

Pour vous connecter á internet, tapez cette commande en utilisateur root :

eciadsl-start | tee log.txt

Problème de synchronisation
---------------------------

Si vous avez des problèmes de synchronisation (eciadsl-synch timeout/erreur ou lcp timeouts après la synchro), alors suivez les instructions ci-dessous :

  * Téléchargez le package des .bin de synchro ici :

     http://eciadsl.flashtux.org/download.php?view=sync

  * Décompressez le dans /etc/eciadsl (en root) :

     cd /etc/eciadsl && tar xvzf /path/eciadsl-synch_bin.tar.gz

  * Lancez eciadsl-config-tk ou eciadsl-config-text et choisissez un autre fichier .bin

  * Eteignez le modem : soit avec modprobe -r usb-uhci (or usb-ohci), soit en débranchant/rebranchant le modem (cable USB).

  * Lancez eciadsl-start à nouveau.

     Si vous avez toujours des problèmes de synchronisation, alors essayez un autre fichier .bin

     Important : vous pouvez essayer TOUS les fichiers .bin de synchro, peu importe l'endroit et le fournisseur avec lequel le .bin a été fait.

     Si aucun fichier .bin ne fonctionne, alors vous devrez créer votre propre fichier .bin sous Windows. See Creation du fichier .bin de synchro.

Pour les autres problèmes avec eciadsl-start, veuillez consulter la FAQ :

http://eciadsl.flashtux.org/faq.php

Utilisateurs de PPPoE
---------------------

Si vous utilisez PPPoE, vous devez configurer et utiliser un client PPPoE standard comme rp-pppoe (http://www.roaringpenguin.com/pppoe) pour connecter votre modem ADSL via tap0.

Autres scripts
==============

eciadsl-probe-device
--------------------

Utilisez ce script si eciadsl-start ne trouve pas votre modem. Ce script recherche le VendorID/ProductID (VID/PID) de votre modem et les affiche. Pour plus de détails, contactez-nous. See Auteurs / Support.

eciadsl-doctor
--------------

Utilisez ce script si eciadsl-start échoue avec un autre problème que ``Modem not found'' ou de synchronisation.

eciadsl-probe-synch
-------------------

Utilisez ce script (avec l'option --usb-init) pour tester automatiquement tous les fichiers .bin, si vous avez des problèmes de synchronisation.

Création du fichier .bin de synchro
***********************************

Si vous avez des problèmes de synchronisation et que vous avez essayé tous les fichiers .bin sans succès, alors vous devez créer votre propre fichier .bin sous Windows.

Sinon, vous pouvez sauter ce chapitre.

Driver Eci Windows
==================

[Sautez cette section si votre modem a un chipset GS7470, VOUS DEVEZ
UTILISER VOTRE PROPRE DRIVER WINDOWS.

Si vous avez un doute, vérifiez votre chipset de modem ici : http://eciadsl.flashtux.org/modems.php?lang=fr].

Téléchargement
--------------

Téléchargez le driver Windows Eci version 1.06 (sinon le .bin ne fonctionnera pas sous Linux) :

http://eciadsl.flashtux.org/download/eci_drv_106_win.zip

Modification du driver
----------------------

Si votre modem n'a pas les mêmes VID/PID que ceux-ci, vous devez modifier deux fichiers dans le driver Eci Windows :

- VID1/PID1: 0547/2131, VID2/PID2: 0915/8000

- VID1/PID1: 0915/0001, VID2/PID2: 0915/0002

Pour vérifier vos VID/PID, consultez cette page :

http://eciadsl.flashtux.org/modems.php.

Les modifications à faire :

- fichier gafwload.inf, ligne 24 :

ExcludeFromSelect = USB\VID_0547&PID_2131

remplacez 0547 par votre VID1 et 2131 par votre PID1

- fichier gafwload.inf, ligne 30 :

%GSILOAD.DeviceDescAnchor% = GSIUSBLDRANCHOR, USB\VID_0547&PID_2131

remplacez 0547 par votre VID1 et 2131 par votre PID1

- fichier gwausb.inf, ligne 34 :

ExcludeFromSelect = USB\VID_0915&PID_8000

remplacez 0915 par votre VID2 et 8000 par votre PID2

- fichier gwausb.inf, ligne 42 :

%ADSLUSB.DeviceDesc%  = ADSLUSB.gspnDefault,    USB\VID_0915&PID_8000

remplacez 0915 par votre VID2 et 8000 par votre PID2

- fichier gwausb.inf, ligne 58 :

HKR, Ndi, DeviceID, 0, "USB\VID_0915&PID_8000"

remplacez 0915 par votre VID2 et 8000 par votre PID2

Installation
------------

Lancez setup.exe et suivez les instructions.

Sniffeur USB
============

Téléchargez et installez la dernière version du sniffeur USB ici :

http://benoit.papillault.free.fr/usbsnoop/

La documentation de Snoopy (le sniffeur USB) est disponible ici :

http://benoit.papillault.free.fr/usbsnoop/doc.php

Sniff des paquets USB sous Windows
==================================

Désactivez la connexion automatique à internet et débranchez tous les périphériques USB (sauf le modem).

Démarrez le sniffeur et installez le filtre sur le ``Wan modem'' ; débranchez et rebranchez le modem.

Dès que les lumières rouges et vertes sont fixes, désinstallez le filtre.

Les paquets sniffés devraient se trouver dans le fichier C:\WINxxx\usbsnoop.log

Redémarrez sous Linux.

Conversion du log vers le .bin sous Linux
=========================================

Montez la partition Windows contenant le log usbsnoop pour le copier où vous le souhaitez.

Tapez cette commande :

eciadsl-vendor-device.pl usbsnoop.log -chipset=#VOTRE_CHIPSET_MODEM#

remplacez #VOTRE_CHIPSET_MODEM# par votre chipset de modem (GS7070 ou GS7470).

Pour l'aide, tapez cette commande : eciadsl-vendor-device.pl -h

Ce script perl analyse le fichier log et génère un nouveau fichier bin (ce script est fourni avec le package usermode).

Tapez cette commande :

mv #FICHIER_BIN_CREE# /etc/eciadsl/my_synch.bin

substitute #FICHIER_BIN_CREE with bin file name created.

et lancez eciadsl-config-text pour utiliser ce fichier .bin.

Lancez eciadsl-start...

...et croisez les doigts :-)

Auteurs / Support
*****************

Auteurs
=======

Le driver EciAdsl est écrit par :

  * FlashCode <flashcode AT flashtux.org>

  * Jean-Sébastien Valette <jeanseb.valette AT free.fr>

  * Benoit Papillault <benoit.papillault AT free.fr>

  * Crevetor <crevetor AT caramail.com>

  * Laurent Wandrebeck (low) <wandre.l AT free.fr>

Obtenir du support
==================

Avant de faire appel au support, assurez-vous d'avoir lu entièrement la documentation et la FAQ fournies avec le driver (regardez dans /usr/local/doc/eciadsl, les fichiers README.fr, INSTALL.fr et TROUBLESHOOTING.fr).

  * Support via IRC:

     - serveur : irc.freenode.net

     - canal : #eci

  * Forum EciAdsl: http://eciadsl.sf.net/scripts/forum

  * Support avec la mailing list :

     - pour souscrire, envoyez un mail à eci-request@ml.free.fr avec "subscribe" comme sujet

     - pour envoyer un mail à toutes les personnes inscrites, envoyez votre mail à eci@ml.free.fr

     - pour vous désinscrire, envoyez un mail à eci-request@ml.free.fr avec "unsubscribe" comme sujet

     Grâce à ZeGuigui, les archives de la mailing list sont disponibles ici :

     http://liste.eci.free.fr

  * Page de support EciAdsl :

     http://eciadsl.flashtux.org/support.php