OvisLink Evo-W54USB

De Cliss XXI
Révision datée du 30 janvier 2008 à 14:40 par imported>SylvainBeucler (→‎Les problèmes qui subsistent : une seule explication, le problème est le même en hotplug et coldplug)
Sauter à la navigation Sauter à la recherche
  • Carte WiFi 802.11g
  • Prix ~ 28 €

Pilote libre

Sur http://rt2x00.serialmonkey.com/wiki/index.php/Downloads (télécharger Legacy rt2570)

Le pilote s'installe très simplement sous Sarge; dans /usr/src/rt2570-cvs-2006100610/Module:

make
su -c "make install"

[Notez que je n'utilise pas "sudo" ici: le Makefile utilise $(PWD) qui est indéfini par sudo, ce qui produit une réaction en chaîne se soldant par la suppression de tous les modules noyaux (!).]

Il existe aussi un paquet source.

Sous Sarge, j'ai testé avec le noyau 2.6.17-2 de backports.org. Dans ce cas, installer aussi la version backports de wireless-tools. iwlist affiche un warning sans cela - ne prenons pas de risque :)

Au moment de tenter une détection réseau, penser à allumer la carte!

ifconfig rausb0 up
iwlist rausb0 scan

La suite sur WiFi.

dmesg dit:

RT25usb  Driver version 1.0.0

Les problèmes qui subsistent

Mon fichier /etc/network/interfaces est le suivant :

auto rausb0
iface rausb0 inet dhcp
wireless_essid   MonEssid
wireless_key     MaCle
wireless_channel 7
wireless_mode    managed

Le module rt2570 est chargé automatiquement:

$ lsmod | grep rt2570
rt2570                164960  0
usbcore               119364  5 rt2570,ehci_hcd,usbhid,uhci_hcd

mais l'interface rausb0 n'est pas active:

$ ifconfig -a | grep rausb0
--> Rien

La reconnaissance du device usb s'est cependant faite correctement:

$ dmesg
usb 5-4: new high speed USB device using ehci_hcd and address 3
usb 5-4: configuration #1 chosen from 1 choice
idVendor = 0x148f, idProduct = 0x2570
$ lsusb
Bus 005 Device 003: ID 148f:2570
$ iwconfig
rausb0    RT2500USB WLAN
          Link Quality:79  Signal level:208  Noise level:173
          Rx invalid nwid:0  invalid crypt:0  invalid misc:0

Mais les requêtes DHCP échouent:

$ ifup rausb0
Internet Systems Consortium DHCP Client V3.0.1
Copyright 2004 Internet Systems Consortium.
All rights reserved.
For info, please visit http://www.isc.org/products/DHCP
Listening on LPF/rausb0/00:08:a1:9f:e5:47
Sending on   LPF/rausb0/00:08:a1:9f:e5:47
Sending on   Socket/fallback
DHCPDISCOVER on rausb0 to 255.255.255.255 port 67 interval 3
DHCPDISCOVER on rausb0 to 255.255.255.255 port 67 interval 6
DHCPDISCOVER on rausb0 to 255.255.255.255 port 67 interval 8
DHCPDISCOVER on rausb0 to 255.255.255.255 port 67 interval 17
DHCPDISCOVER on rausb0 to 255.255.255.255 port 67 interval 8
DHCPDISCOVER on rausb0 to 255.255.255.255 port 67 interval 12
DHCPDISCOVER on rausb0 to 255.255.255.255 port 67 interval 7
No DHCPOFFERS received.
No working leases in persistent database - sleeping.

Ceci survient que ce soit avec un branchement à froid (avant d'allumer l'ordinateur) ou à chaud (une fois le système lancé).

Il donc faut l'activer manuellement:

$ ifconfig rausb0 up

et après seulement lancer la requête DHCP:

$ ifup rausb0
Internet Systems Consortium DHCP Client V3.0.4
Copyright 2004-2006 Internet Systems Consortium.
All rights reserved.
For info, please visit http://www.isc.org/sw/dhcp/

Listening on LPF/rausb0/00:08:a1:9f:e5:47
Sending on   LPF/rausb0/00:08:a1:9f:e5:47
Sending on   Socket/fallback
DHCPDISCOVER on rausb0 to 255.255.255.255 port 67 interval 4
DHCPDISCOVER on rausb0 to 255.255.255.255 port 67 interval 4
DHCPOFFER from 192.168.2.1
DHCPREQUEST on rausb0 to 255.255.255.255 port 67
DHCPACK from 192.168.2.1
bound to 192.168.2.140 -- renewal in 19648 seconds.


Un moyen pour automatiser, qui marche bien, mais qui n'est sans doute pas très propre, est d'écrire un petit script dans le répertoire /etc/network/if-pre-up.d. Voici le script que j'ai écrit dans ce répertoire. Ne pas oublier de rendre ce script exécutable ;-)

cat <<'EOF' > /etc/network/if-pre-up.d/rausb0
#!/bin/sh
if [ x"$IFACE" = x"rausb0" ]; then
  echo "Initializing WiFi card"
  ifconfig rausb0 up
  sleep 2
fi
EOF
chmod 755 /etc/network/if-pre-up.d/rausb0

La version propre doit propablement faire intervenir udev. Des suggestions? :)

Autres liens