Installation et configuration de la clé Amarina 54Mbps Wireless USB Adapter sous Linux
Dans un précédent article, je vous avais expliqué comment j’avais installé et configuré Frugaware 1.3 (Haven) sur l’ordinateur de mon frère. Il me restait une dernière étape à expliquer, qui est, à mon humble avis, plutôt indépendante du modèle d’ordinateur ou de la distribution Linux : l’installation et la configuration de la clé USB Wifi de mon frère.
Il s’agit d’une clé de marque Amarina et de modèle Wireless Lan USB 54M 802.11G 54 Mbps (cf. page du produit).
Malheureusement, la clé n’est pas reconnue automatiquement sous Frugalware 1.3 (Haven) et il a fallu chercher longuement avant de pouvoir la faire fonctionner.
Comme souvent avec ce genre de produit, ce n’est pas vraiment la marque et le modèle du produit qui compte, mais la puce (chipset) qui est à l’intérieur.
La commande lsusb retourne la ligne suivante :
Bus 001 Device 002: ID 148f:2070 Ralink Technology, Corp.
Ceci laisse penser que la puce est une Ralink Technology 2070.
Mon frère et moi avons d’abord essayé d’utiliser le pilote ndiswrapper (pilote faisant office de sur-couche au dessus des pilotes Windows).
Pour cela, nous avions besoin des pilotes Windows. Le seul élément donné par le constructeur était un exécutable Windows (extension .exe). Nous avons cherché tous les moyens d’extraire les pilotes de cet exécutable. En vain… Nous avons finalement dû exécuter le fichier sur une machine Windows XP, ce qui revient à procéder à l’installation du pilote. Nous avons ainsi pu récupérer le pilote (pour cela, il suffit de chercher un fichier *.inf dans c:\\windows).
Nous avons alors utilisé le pilote (un fichier .inf et des fichiers associés dans un même répertoire) pour configurer ndiswrapper. Malheureusement, cela n’a rien donné. Je ne me souviens pas du problème exact mais je me rappelle qu’une erreur survenait lors de l’initialisation du périphérique.
Nous nous sommes rabattus sur l’installation du pilote natif pour Linux. Pour cela, nous avons suivi les instructions données sur une discussion du forum Ubuntu.
Etant donné que les instructions sont données un peu dans tous les sens, et qu’elles sont incomplètes pour les dernières versions du noyau, ou inadaptées pour Frugalware 1.3 (Haven), je me permets de les résumer :
1) Télécharger les sources du pilote nommé RT3070USB(RT307x) sur la page Support Linux du site web de Ralink Technology, ou via le lien proposé sur la discussion du forum Ubuntu.
2) Prendre les droits root.
su -
3) Installer les sources du noyau.
pacman-g2 -S kernel-headers kernel-source
4) Désarchiver le paquet téléchargé et se déplacer dans le répertoire créé.
tar jxvf /2009_0525_RT3070_Linux_STA_v2.1.1.0.bz2
cd 2009_0525_RT3070_Linux_STA_v2.1.1.0
5) Modifier le fichier os/linux/usb_main_dev.c pour ajouter la ligne
{USB_DEVICE(0x148F,0×2070)}, /* Ralink 2070L */
juste en dessous de la ligne
#ifdef RT3070
6) Télécharger le patch attaché à la discussion du forum Ubuntu, ou celui attaché à cet article, puis l’appliquer.
cd ..
gunzip /rt3070-2.6.31-compile.patch.gz
patch -p0 < /rt3070-2.6.31-compile.patch
cd 2009_0525_RT3070_Linux_STA_v2.1.1.0/
Ceci est valable pour un noyau de version supérieure ou égale à 2.6.31, ce qui est le cas Frugalware 1.3 (Haven).
7) Modifier le fichier include/iface/rtmp_usb.h afin de remplacer les mots-clés usb_buffer_alloc et usb_buffer_free respectivement par les mots-clés usb_alloc_coherent et usb_free_coherent.
Ceci est valable pour un noyau récent, ce qui est le cas de Frugalware 1.3 (Haven), qui présente le noyau 2.6.35.8.
8) Modifier le fichier os/linux/config.mk pour activer le support WPA (replacer n par y pour la propriété HAS_WPA_SUPPLICANT).
9) Lancer la compilation du pilote.
make
10) Installer le pilote.
make install
11) Charger le pilote.
modprobe rt3070sta
Si tout se passe bien, la clé USB Wifi devrait se mettre à clignoter. L’interface réseau ra0 devrait apparaitre sur la sortie de la commande suivante :
ifconfig -a
Enfin, les réseaux Wifi disponibles doivent pouvoir être listés :
iwlist ra0 scan
Il reste alors à configurer l’interface réseau en utilisant, par exemple, netconfig ou wicd. Pour une raison complètement inconnue, je n’ai pas réussi à faire fonctionner la clé Wifi avec une adresse IP dynamique (DHCP) mais c’est peut-être dû au routeur utilisé.
Malheureusement, je dois avouer que je ne suis pas sûr à 100% de la procédure. Avec mon frère, nous avons dû pas mal tâtonner pour arriver à nos fins. Si j’ai l’occasion, j’essaierai de reconfirmer la procédure.
Comme vous pouvez le constater, le nombre d’opérations à effectuer est assez important. Idéalement, il serait intéressant de faire un paquet Frugalware pour automatiser les instructions et faciliter l’installation du pilote.
Néanmoins, j’espère que cet article sera utile à quelqu’un. Comme d’habitude, n’hésitez pas à laisser un commentaire si vous avez une remarque ou une question.