Modem Bewan ADSL USB/PCI ST (version gris et plat)


Permet d'installer et d'utiliser le modem et d'avoir d'info sur son état (bitrate, synchro, …).

Bien que fonctionnel, le modem a de pauvres performances sous linux (avec le pilote unicorn_0.9.3
Préférez un modem ethernet ou un routeur (avec firewall intégré) qui ne nécessitent pratiquement aucune manipulation.
En cas de problème voir si_le_modem_ne_fonctionne_pas, ne pas hésiter à parcourir Forum Infos sur modem Bewan Adsl USB et à poster sur le forum pour se faire aider (Décrivez précisement ou plus en détail le problème s'il vous plait).

Pour le modem bleu/vert, voir note(s)

Une autre méthode d'installation existe, voir tuto de rzr.online.fr avec paquets Debian et module-assistant.
  1. Fonction “sudo” activée (si non voir ajout sudo utilisateur),
  2. Compilateur gcc, les linux-headers via synaptic ou par
    sudo apt-get install linux-headers-$(uname -r)
    sudo apt-get install build-essential 
  3. usbutils (via synaptic),
  4. ppp (installé par défaut) (via synaptic)
  5. Essayer de récupérer, par quelque moyen que ce soit (retourner à Windows®, par un autre ordi, par un pote, …) le dernier pilote pilote unicorn 0.9.3 (ou ici) au moment où ces lignes sont écrites ce tutoriel se base uniquement sur cette version 0.9.3 du pilote.
  6. Du temps pour lire et effectuer les manipulations décrites ci dessous, et une bonne dose de self-control 8-)

remarque: les paquets gcc et linux headers sont copiés de base sur le disque dur, pour les installer, il suffit donc de les sélectionner dans synaptic et de les installer. Il n'y a donc pas besoin de les télécharger. Pour les autres, vous les trouverez sur le site packages.ubuntu.com. Pour éviter d'avoir à gérer les dépendances, vous pouvez également les sélectionner dans synaptic et lancer Fichier>Générer script de téléchargement, ce qui vous fournira la liste des liens vers les paquets à télécharger, avec leurs dépendances. Une fois ceci effectué, copiez les paquets dans /var/cache/archives en tant que root (gksudo nautilus) et effectuez l'installation avec synaptic.

Pour être plus à l'aise aves la ligne de commande, vous pouvez lire learn_unix_in_10_minutes

Décompactage, configuration (plutôt adaptation) et compilation du pilote

Décompactage

Après avoir téléchargé le pilote Unicorn (lien ci-dessus), en ligne de commande, ,décompactez le fichier et placez-vous dans le répertoire unicorn. Pour cela, ouvrez une console, et recopiez la commande :

tar xzvf A1012-A1006-A904-A888-A983-0.9.3.tgz && cd unicorn

Adaptation du pilote pour Ubuntu

Les fichiers Makefile ne sont pas adaptés pour Ubuntu Dapper, pas de panique, il y juste quelques lignes à modifier.8-)

Adaptation du Makefile dans unicorn_usb

Allez dans le dossier unicorn_usb (unicorn_pci si vous utiliser le modèle PCI) par :

cd unicorn_usb

et modifiez le Makefile (de unicorn/unicorn_usb)

Remplacez la ligne par
KERNEL_SOURCES=/usr/src/linux KERNEL_SOURCES=/usr/src/linux-headers-`uname -r`/

NB : ce sont des ` (AltGr+è, puis espace) et non des ' (apostrophe touche 4)

Adaptation du Makefile dans unicorn

Revenez dans le répertoire unicorn (répertoire parent) par :

cd ..
le '..' signifie répertoire parent (=hiérarchiquement supérieur)

et adaptez le Makefile (de unicorn),

Remplacez les lignes par
# path to kernel sources and headers (must correspond to running kernel)
KERNEL_SOURCES=/usr/src/linux
# path to kernel sources and headers (must correspond to running kernel)
KERNEL_SOURCES=/usr/src/linux-headers-`uname -r`/

NB : ce sont des ` (AltGr+è, puis espace) et non des ' (apostrophe touche 4)

Compilation du pilote unicorn pour Ubuntu

Ensuite, passez en root (ou superutilisateur) par :

$ sudo -s
password: (entrer le mot de passe superutilisateur)
Le root (ou superutilisateur) a tous les droits et peut corrompre le système. A utiliser avec prudence.

et compilez (en étant root) les modules du pilote (unicorn_usb_atm, unicorn_usb_eth, unicorn_pci_atm, unicorn_pci_eth) par :

make modules

Si la compilation se passe bien, les modules ont été créés dans les répertoires du pilote, copiez le module correspondant au type de modem dans le kernel, par exemple :

cp ./unicorn_usb/unicorn_usb_atm.ko /lib/modules/`uname -r`/

./unicorn_usb/unicorn_usb_atm.ko étant pour le modèle USB. ./unicorn_pci/unicorn_pci_atm.ko pour le modèle PCI.


Mettez à jour les dépendances entre modules :

depmod -ae

Ajout des modules à la Blacklist

Les modules doivent être ajoutés à la Blacklist (liste des modules qui ne se chargent pas au démarrage) afin d'éviter une mauvaise synchronisation du modem au démarrage. Éditez le fichier /etc/modprobe.d/blacklist

Ajoutez les lignes

# unicorn (bewan adsl st) makes ANSI modulation
blacklist unicorn_usb_atm
blacklist unicorn_usb_eth

Enlevez le mot blacklist pour la version Breezy

Configuration de la connexion internet (ppp)

chap-secrets et pap-secrets

Afin de prendre en compte les identifiants de connexion, modifiez les fichiers /etc/ppp/chap-secrets et /etc/ppp/pap-secrets et ajoutez, à la fin, les identifiants de la forme :

'tonlogin' * 'password' * 

avec le login (du type euxxxxxxx@tele2.fr) et le password donnés par le fournisseur d'accès à internet (FAI).

options ppp (/etc/ppp/options)

Ajoutez à la fin de /etc/ppp/options les lignes suivantes :

lock
ipparam ppp0
noipdefault
noauth
default-asyncmap
defaultroute
hide-password
noaccomp
noccp
nobsdcomp
nodeflate
nopcomp
novj
novjccomp
lcp-echo-interval 20
lcp-echo-failure 3
#mtu 1500
#mru 1500
sync
persist
maxfail 0
#plugin /usr/lib/pppd/2.4.3/pppoatm.so 8.35
user tonlogin
usepeerdns

en remplaçant tonlogin par celui correspondant (du type euxxxxxxx@tele2.fr)

DNS server FAI (/etc/resolv.conf)

Éditez /etc/resolv.conf par :

Ajoutez, à la fin, les DNS primaire et secondaire du FAI, du style :

nameserver xxx.xxx.xxx.xxx
nameserver yyy.yyy.yyy.yyy
search wanadoo.fr

Ces donnée doivent être données avec les identifiants de connexion.

script unicorn-pppotam

Dans le pilote, un script unicorn-pppoatm existe déjà mais ne convient pas pour Ubuntu. Donc, nous allons créer /usr/bin/unicorn-pppoatm.

Je vous mets mon script ici, vous pouvez faire un copier-coller (:!: Attention aux "end-of-line" (fin de ligne) elles doivent être du type UNIX), il inclut des modifications dont nous verrons l'utilité par la suite.

#!/bin/sh
# Attention : script modifié pour ubuntu
# 18/08/06
 
# Source function library.
#. /etc/rc.d/init.d/functions
. /usr/share/initramfs-tools/scripts/functions
 
# set to correct product (USB or PCI)
#UNICORN="unicorn_pci_atm"
UNICORN="unicorn_usb_atm"
 
# default VPI, VCI and encapsulation
VPI=8
VCI=35
 
# ANSI=1,G.lite=2,MULTI=3,G.dmt=4,
MODULATION=4
 
# pppd version actuelle
PPPD="/usr/sbin/pppd"
# Mettre ci dessous ce que renvoie la commande : slocate pppoatm|grep pppd
PLUGIN="/usr/lib/pppd/2.4.4b1/pppoatm.so"
 
RETVAL=0
 
stop() {
    echo demande arret PPPD
    killall pppd >/dev/null 2>&1
    echo demande decharge module unicorn_usb_atm
    /sbin/modprobe -fr $UNICORN >/dev/null 2>&1
}
 
start() {
    echo charge module pppoatm
    /sbin/modprobe pppoatm
    [ ! "$?" = 0 ] && return $?
    echo charge unicorn_usb_atm
    /sbin/modprobe -v $UNICORN ActivationMode=$MODULATION >/dev/null 2>&1
    [ ! "$?" = 0 ] && return $?
    echo debut pause
    sleep 10
    echo fin pause
}
 
connect() {
    echo Lancement ou Relancement de la connexion
    killall pppd >/dev/null 2>&1
    $PPPD plugin $PLUGIN $VPI.$VCI
    [ ! "$?" = 0 ] && return $?
    return 0
}
 
echo -n "$1 $UNICORN $PROTOCOL $VPI.$VCI $ENCAPS"
 
case "$1" in
    stop)
        stop
        ;;
 
    start)
        start
        connect
        ;;
 
    restart)
        stop
        sleep 10
        start
        connect
        ;;
 
    connect)
        connect
        ;;
 
    *)
        echo $"Usage: $0 {start|stop|restart|connect}"
        exit 1
esac
 
RETVAL=$?
if [ $RETVAL = 0 ]; then
    echo success
else
    echo failure
fi
echo
exit $RETVAL

Adaptez-le en fonction :

  • du modem : USB ou PCI,
  • des VPI.VCI : 8.35 en général pour la France, se renseigner auprès du FAI ou ici
  • de la modulation : 4 (G.dmt) en général pour la France,
  • de la version (du répertoire plus exatcement) du plugin pppd qui change souvent à chaque mise à jour du noyau. Pour le savoir (c'est écrit dans le script), tapez la commande : slocate pppoatm|grep pppd (d'après une base de données) ou find /usr/lib/pppd/ -name pppoatm.so (qui effectue une recherche "directe")

NB : Ces paramètre se trouvent vers le haut du script unicorn-pppoatm

Il faut le rendre exécutable, tapez dans une console, toujours en root :

chmod u+x /usr/bin/unicorn-pppoatm

:-P Ubuntu est maintenant préparé à recevoir le modem. Félicitations 8-)
Le modem ne s'allume pas ? Rassurez-vous, jusque là c'est normal. À l'utilisation, il s'allumera.

Le script unicorn-pppoatm ci-dessus (modifié, personnalisé) permet de :

lancer la connexion dans une console, en root, tapez
unicorn-pppoatm start


> Les modules propres au modem se charge, le modem doit s'allumer Led verte "pwr" allumée , et se synchroniser Led rouge "sync" clignote, puis s'éteint et Led verte "link" s'allume.
> Une dizaine de secondes après, avec le pppd, la connexion s'établit. Tapez ifconfig dans une console si vous voulez vous assurer que la connexion est établie. Vous devez avoir une réponse du genre

ppp0      Lien encap:Protocole Point-à-Point
           ...
arrêter la connexion en root, tapez
unicorn-pppoatm stop
relancer la connexion en root, tapez <code>unicorn-pppoatm restart</code> Pour des raisons encore inconnues, cette commande ne marche pas comme il le faut. Préférez
unicorn-pppoatm stop

puis

unicorn-pppoatm start
reconnecter en root, tapez
unicorn-pppoatm connect


Ce qui permet l'identification avec le FAI dans le cas où le modem n'a pas eu le temps de se synchroniser. Symptômes : pas de surf et ifconfig ne donne pas ppp0.

Admirer internet, ubuntu, ses documentations et sa communauté. ^_^

NB : Les paragraphes ci dessous ne sont pas indispensables au fonctionnement du modem

:!: Etape expérimentale pour le moment

Si vous souhaitez que le modem se connecte au démarrage de Ubuntu (ou si comme moi, vous en avez assez de taper sudo unicorn-pppoatm start dans une console, à chaque démarrage), tapez, en root, les commandes :

ln -s /usr/bin/unicorn-pppoatm /etc/init.d/adsl
update-rc.d adsl defaults

(Merci Bugage) ;-)

Note : Après cette manipulation, le démarrage de Ubuntu est un peu plus long.

Changement de noyau

Après une mise à jour

D'une version 2.6.15.25 à 2.6.15.26

D'après les dernières mis-à-jour du noyau, je pense qu'il suffit de recopier le module par la commande (en root), en supposant qu'on est resté dans le répertoire unicorn (là où vous avez compilé le pilote1) ) :

sudo cp ./unicorn_usb/unicorn_usb_atm.ko /lib/modules/`uname -r`/

./unicorn_usb/unicorn_usb_atm.ko étant pour le modèle USB. ./unicorn_pci/unicorn_pci_atm.ko pour le modèle PCI.2)

et de mettre à jour les dépendances entre modules :

sudo depmod -ae

Le modem peut fonctionner ainsi, mais si vous voulez ajouter des applications supplémentaires pour être informé de l'état du modem. Le plus simple est d'installer le paquet unicorn de ubuntu.

Pour cela, activez les dépôts multiverse (référez-vous à universe_et_multiverse ), installez le paquet unicorn par synaptic ou par la commande, en root :

apt-get install unicorn

Ce paquet unicorn installe :

  • bewan_adsl_status : interface graphique comme sous windows©, pour les opérations préférez la ligne de commande (voir Utilisation ci dessous)
  • unicorntest : Permet de tester les commandes envoyées au modem
  • unicorn_status : dans une console, affiche des informations en mode texte sur le modem (débits, marge de bruits, rapport signal/bruit, puissances, temps écoulé, modulation, …)
  • oam_ping : permet de tester des paramètres VPI VCI

Identifier le problème :

  1. Erreurs lors de la compilation (make modules) : les "pointeurs" (ou includes du même style que KERNEL_SOURCE dans les makefile ou autres) sont peut-être incorrects ou autres problèmes (edgy par ex). Venez en parler sur le forum (bien sûr par un autre moyen :-)).
  2. Le modem ne s'allume pas (panne la plus facile à résoudre :-) )
    1. à quel moment, à quel commande des erreurs sont générées ?
      1. message du genre /usr/bin/unicorn-pppoatm:/bin/sh^M:bad interprter:No such file or directory, vérifiez que le srcipt est au format unix (pour avoir les "fins de ligne" (End of Line) appropriés 3).
    2. la console me renvoit des caractères bizzares ? Problème de config ppp
  3. Le modem s'allume, mais ne synchronise pas ? Début du miracle :-)
    1. Pas branché sur la ligne adsl, ou l'adsl pas encore activé par le FAI.
    2. Mauvaise configuration dans unicorn-pppoatm : Récupérez les bonnes valeurs de VPI VCI, modulation, …
    3. la console me renvoit des caractères bizzares ? Problème de config ppp
  4. Le modem s'allume, se synchronise, mais pas de connexion ? Déjà Bravo :-) pour la synchro et encore un petit effort :
    1. La connexion est-elle établie ? pour vérifier cela, tapez
      ifconfig

      vous devez avoir ppp0, sinon le modem n'a sûrement pas eu le temps de se synchroniser avant l'identification sur le DSLAM, donc un

      sudo unicorn-pppoatm connect

      devrait établir la connexion.

    2. La connexion est bien établie, mais toujours pas de surf ? Grrrrr !
      1. essayer http://193.252.96.3 : site de FranceTelecom pour vérifier si la connexion est vraiment établie. Ça marche aussi et exclusivement avec comme identifiant 'adsl@adsl' et motdepasse 'test' ou 'adsl' 4).
      2. Peut-être mauvais MTU et/ou MRU, essayez avec MTU 1500 et/ou MTU 1500 dans /etc/ppp/options
      3. Peut-être que la résolution des noms de domaine DNS n'est pas opérationnelle
  5. Le problème peut venir d'ailleurs : par ex http://forum.ubuntu-fr.org/viewtopic.php?pid=423064#p423064 pour un soucis de périphérique USB

En tous cas, faites un dmesg, unicorn_status (si composant installé), ifconfig, lsmod et envoyez aussi les erreurs qui vous paraissent suspectes dans le forum.

:!: Ne divulguez pas vos identifiants, mot de passe, adresse ip (si ip fixe), numéro de carte bleu, … :!:

Type de modem

Il existe 2 types de modem bewan adsl usb :

  • le bleu/vert assez design, qui normalement pose moins de problème. Je donne un lien https://forum.ubuntu-fr.org/viewtopic.php?id=2037
  • le gris et plat (et moche :-D), qui fonctionne presque, après avoir fait le parcours du combattant, mais il fonctionne!

Compatibilité Gutsy

Remarques

Ce modem fonctionne, mais n'est pas encore à la perfection. Comme le disent certains dans les forums :

Le mieux, c'est de changer de modem. Prendre un ethernet si possible.

En effet, le upload (chemin montant) de ce modem n'est pas encore au point. Des erreurs FEC (Farward Error Correction) sont trop nombreuses, ce qui aboutit à une déconnexion de la part du DSLAM (modem distant) au bout d'un certain temps (de 30 min à 8h). Problème non réglé pour l'instant. Le surf est possible, les téléchargements sont assez correctes, et le partage, le webmail… sont fortement dégradés. Pour relancer la connexion : dans une console, en root, tapez

unicorn-pppoatm stop

, attendez 5 à 15 minutes, et

unicorn-pppoatm start

Confort d'utilisation 1

Pour éviter de devoir taper u n i c o r n - p p p o a t m (très irritant à la longue), je vous suggère de créer un lien vers ce fichier par, en root :

cd /usr/bin
ln -s ./unicorn-pppoatm adsl

Ainsi, pour se connecter, taper, en root :

adsl start

. Le lien est plus pratique que l'alias pour pouvoir éditer ce script

gksudo gedit /usr/bin/adsl

Sinon, si vous voulez que le modem se connecte au démarrage de Ubuntu, allez à ici.

A voir aussi la possibilité de faire fonctionner ce modem par le pilote windows grâce à vmplayer 5).

Sources supplémentaires

Chez qui le modem fonctionne ou a fonctionné

Voilà des ubunteros qui ont gravé leur pseudos dans l'histoire et qui mérite une médaille :-D (Par ordre alphabétique): Azkato, Bugage, FestinMWM, rzr.online.fr, Superkaloab, The_mon, … Si chez vous, le modem fonctionne, laissez un petit mot sur https://forum.ubuntu-fr.org/viewtopic.php?id=43150 :-)


Contributeurs : FestinMWM


1)
en suivant ce tuto, le chemin du pilote doit être ~/unicorn, donc au préalable une commande cd ~/unicorn le ~ indique le répertoire home de l'utilisateur actuel (par ex. /home/utilisateur
2)
Pour la culture, le ./ dans le chemin signifie 'répertoire actuel' et le ../ signifie 'répertoire parent'
4)
source : doc du modem bewan adsl usb st sous Windows®
5)
l'usb semble contraignant dans ce cas de machine virtuel
  • modem_adsl_bewan.txt
  • Dernière modification: Le 11/09/2022, 11:55
  • par moths-art