web-dev-qa-db-fra.com

Comment faire fonctionner une carte sans fil Ralink RT3290?

Je viens d'installer Ubuntu 12.10 sur un ASUS X401U, et après l'installation, il n'y a pas de liste de connexions sans fil. Je n'ai pas eu ce problème avec une installation sur HP. Que puis-je faire pour activer le Wifi?

07:00.0 Network controller [0280]: Ralink corp. Device [1814:3290]
24
user130110

Il y a plusieurs guides qui parlent de la même manière. Des guides tels que cette source , cette source ou rapport de bogue mentionnent certaines procédures permettant à cette carte sans fil de fonctionner sur plusieurs types d'ordinateurs portables.

Certains cas mentionnent la mise à niveau vers 12.04, puis l'installation d'une version de noyau 3.6 spécifique, d'autres, la mise à niveau vers 13.04 et l'installation de la version 3.9. Et même un autre cas où il est mentionné à l'utilisateur de télécharger les pilotes du site officiel et de faire un guide étape par étape sur la façon de l'installer.

Je vais mentionner plusieurs façons de le faire, qui impliquent toutes le téléchargement du pilote, sa compilation et son fonctionnement. Il a été noté que dans la version 3.9 du noyau, la carte sans fil fonctionne correctement. Par conséquent, dans 13.04 avec rétroportages ou 13.10, ce problème devrait être résolu.

Il existe donc différentes manières de faire fonctionner votre carte sans fil Ralink RT3290 à partir de 12.04 (toutes les méthodes ne fonctionneront pas, essayez donc de choisir celle qui convient le mieux à votre ordinateur):

Puisque votre identifiant de fournisseur est 1814: 3290 , cela signifie que vous avez une carte sans fil Ralink RT3290. Pour ce cas, nous (après avoir connecté le câble filaire):

  1. Connectez une connexion câblée à l'ordinateur pour disposer d'une connexion Internet pour le moment tout en effectuant les étapes ci-dessous.

  2. Ouvrez un terminal et exécutez la ligne suivante pour installer tout le nécessaire à la compilation de vos propres pilotes sans fil:

    Sudo apt-get update && Sudo apt-get install build-essential linux-headers-generic
    

Maintenant, selon la façon dont vous souhaitez procéder, suivez l'un des guides ci-dessous:

PILOTES NON OFFICIELS POUR Kernel 4.X

Si ce qui précède ne fonctionne pas pour vous sur Kernels 4.X, la solution que j'ai pu tester à la suite de cette source était

Veuillez télécharger le pilote mis à jour ( merci à Jim Colaco ) à partir de ici ou ici . Cela a été testé sur Ubuntu 16.04 et 16.10.

Sudo tar -xvf rt3290sta-2.6.0.0.dkms.tar -C /usr/src
Sudo dkms install -m rt3290sta -v 2.6.0.0 --force
Sudo reboot

Maintenant, dans certains cas, vous devrez activer l'interface pour le pilote sans fil (car l'interface ne s'ouvrira pas automatiquement), puis redémarrer le service réseau. Quelque chose comme ça:

Sudo ifconfig WIRELESSCARD up
Sudo service network-manager restart

Donc, un exemple serait:

Sudo ifconfig eno1 up
Sudo service network-manager restart

Je recommande de placer ces 2 lignes dans /etc/rc.local au-dessus de la ligne "exit 0" afin que l'interface s'affiche automatiquement.

GUIDE OFFICIEL DU SITE

  1. Allez sur Mediatek et téléchargez le Pilote Ralink RT3290 pour Linux MediaTek a fait du bon travail en déplaçant le lien pour le télécharger et en ne disposant pas de redirection. Voici le nouveau lien pour tous micrologiciel téléchargeable mais devinez quoi, ils ont supprimé RT3290. Allez médiatek;)

    Merci aux autres personnes qui ont également rencontré le problème et partagé leurs sources, voici une liste de tous les liens de téléchargement disponibles que vous pouvez utiliser pendant que Mediatek décide d’aider Linux et de s’ouvrir:

  2. Renommez le fichier en 2012_0508_RT3290_Linux_STA_v2.6.0.0.tar.bz2 car Mediatek a parfaitement réussi à s’assurer que le fichier fonctionne correctement.

  3. Extrayez le fichier et créez un dossier nommé DPO_RT3290_LinuxSTA_V2600_20120508

  4. Allez à DPO_RT3290_LinuxSTA_V2600_20120508/os/linux/ et éditez le fichier config.mk

  5. À la ligne 31, vous devriez trouver la variable HAS_NATIVE_WPA_SUPPLICANT_SUPPORT=n. Le changer en

    HAS_NATIVE_WPA_SUPPLICANT_SUPPORT=y
    

    et enregistrez le fichier.

  6. Allez dans votre dossier extrait principal (il devrait s'agir du dossier DPO_RT3290_LinuxSTA_V2600_20120508) et tapez:

    make
    Sudo make install
    
  7. Si tout est correctement compilé, procédez comme suit:

    modprobe rt3290sta
    
  8. Si l'étape 7 fonctionne sans problème, nous ajoutons le module à la liste des modules à charger à chaque démarrage:

    Sudo -H gedit /etc/modules
    

    et ajoutez une ligne à la fin du fichier qui dit rt3290sta. Sauvegarder et quitter.

DROPBOX GUIDE

(Non recommandé, car vous téléchargez une archive non approuvée à partir d'un compte Dropbox.

  1. Téléchargez le pilote source:

    wget http://dl.dropbox.com/u/11876059/DPO_RT3290_LinuxSTA_V2600_20120508.tar.gz
    

    et on décompresse ensuite le fichier

    tar -xvf DPO_RT3290_LinuxSTA_V2600_20120508.tar.gz
    
  2. Allez dans le dossier nouvellement créé:

    cd ~/DPO_RT3290_LinuxSTA_V2600_20120508
    

    et nous commençons le processus de compilation

    make
    Sudo make install
    
  3. Nous testons ensuite pour voir si le pilote est correctement compilé et installé

    Sudo modprobe rt3290sta
    
  4. Si l'étape 3 se déroule sans problème, nous ajoutons ensuite le module à la liste des modules à charger à chaque démarrage:

    Sudo -H gedit /etc/modules
    

    et ajoutez une ligne en bas qui dit rt3290sta. Sauvegarder et quitter.

GUIDE SUPPLÉMENTAIRE

Certains utilisateurs mentionnent des étapes supplémentaires. Cela peut ou non s'appliquer à vous. Si vous estimez que le système ne fonctionne pas, l'un des points ci-dessous peut vous aider:

  • Lorsque vous ouvrez le fichier config.mk, modifiez non seulement le HAS_NATIVE_WPA_SUPPLICANT avec la valeur y, mais faites-le également avec HAS_WPA_SUPPLICANT au cas où il aurait n. Dans mon cas, il avait y , mais il convient de vérifier si les deux WPA_SUPPLICANT sont définis sur `y.

  • Mettre en liste noire les pilotes sans fil en conflit. Faites ce qui suit:

    Sudo -H gedit /etc/modprobe.d/blacklist.conf
    

    Ajoutez les lignes suivantes (assurez-vous qu'elles ne sont pas présentes à la première place):

    #Wireless drivers conflicting with rt3562sta  
    blacklist rt2800pci  
    blacklist rt2x00pci
    
  • Mettre à jour initramfs: Sudo update-initramfs -u

  • Si vous ne parvenez pas à compiler le pilote sous Ubuntu 13.04 ou Ubuntu 13.10 (et peut-être aussi dans les versions ultérieures), cela peut être dû à une modification du noyau Linux qui crée une incompatibilité avec le code du pilote. Cela peut éventuellement être corrigé en ouvrant

    gedit os/linux/pci_main_dev.c
    

    et en ajoutant ce qui suit après le "#include" près du sommet

    #if LINUX_VERSION_CODE >= KERNEL_VERSION(3,8,0)
    #define __devexit
    #define __devinit
    #define __devinitdata
    #endif
    

    puis changez la partie du fichier qui dit

    #if LINUX_VERSION_CODE >= 0x20412 
    remove:     __devexit_p(rt2860_remove_one), 
    #else 
    remove:     __devexit(rt2860_remove_one), 
    #endif 
    

    à

    #if LINUX_VERSION_CODE >= KERNEL_VERSION(3,8,0)
    remove:     rt2860_remove_one,
    #else
    #if LINUX_VERSION_CODE >= 0x20412 
    remove:     __devexit_p(rt2860_remove_one), 
    #else 
    remove:     __devexit(rt2860_remove_one), 
    #endif 
    #endif
    

J'espère que cela résoudra l'erreur du compilateur. Retournez dans le répertoire DPO_RT3290_LinuxSTA_V2600_20120508 et suivez les instructions ci-dessus.

34
Luis Alvarado

Pour ceux d’entre vous qui ne peuvent pas utiliser le WiFi même après avoir suivi les étapes ci-dessus (y compris moi), c’est une solution simple et bienvenue.

Le problème est que le noyau a des problèmes pour prendre en charge le pilote. Heureusement, la dernière version stable du noyau corrige le bogue et le WiFi fonctionne avec les pilotes par défaut.

Pour télécharger les packages de noyau 32 bits

wget http://kernel.ubuntu.com/~kernel-ppa/mainline/v3.12-saucy/linux-headers-3.12.0-031200-generic_3.12.0-031200.201311031935_i386.deb
wget http://kernel.ubuntu.com/~kernel-ppa/mainline/v3.12-saucy/linux-headers-3.12.0-031200_3.12.0-031200.201311031935_all.deb
wget http://kernel.ubuntu.com/~kernel-ppa/mainline/v3.12-saucy/linux-image-3.12.0-031200-generic_3.12.0-031200.201311031935_i386.deb

Pour télécharger les packages du noyau 64 bits

wget http://kernel.ubuntu.com/~kernel-ppa/mainline/v3.12-saucy/linux-headers-3.12.0-031200-generic_3.12.0-031200.201311031935_AMD64.deb
wget http://kernel.ubuntu.com/~kernel-ppa/mainline/v3.12-saucy/linux-headers-3.12.0-031200_3.12.0-031200.201311031935_all.deb
wget http://kernel.ubuntu.com/~kernel-ppa/mainline/v3.12-saucy/linux-image-3.12.0-031200-generic_3.12.0-031200.201311031935_AMD64.deb

Pour installer les packages

Sudo dpkg -i linux-headers-3.12.0-*.deb linux-image-3.12.0-*.deb
Sudo update-grub
Sudo reboot

Et cela devrait le faire.

Au cas où vous voudriez enlever le noyau

Sudo apt-get purge linux-image-3.12.0-* linux-headers-3.12.0-*
4
pushpreet