Take the 2-minute tour ×
Ask Ubuntu is a question and answer site for Ubuntu users and developers. It's 100% free, no registration required.

I just installed Ubuntu 12.10 on an ASUS X401U, and after installation there is no list of wireless connections. I didn't have that problem with an installation on HP. What I can do to enable Wifi?

07:00.0 Network controller [0280]: Ralink corp. Device [1814:3290]
share|improve this question
2  
This is the bug for support for this card, it might contain information that can help: bugs.launchpad.net/ubuntu/+source/linux/+bug/1049466 –  Jorge Castro Apr 8 '13 at 14:50
    
@JorgeCastro Nice bug report. I read all bug reports there. Will only add the ones that have less chance of creating a problem for the user. For example forcing the user to either change Ubuntu version or apply a kernel not meant for that particular version are bad in my opinion (I could kill a workable computer with that). I simply focused on using the official site for the drive and corrected issues related to that driver. At the end added some tips about the procedure. –  Luis Alvarado Apr 8 '13 at 15:57

2 Answers 2

up vote 26 down vote accepted
+300

There are several guides that speak of the same way. Guides like this source, this source or the bug report mention some procedures to get this Wireless card working on several types of laptops.

Some cases mention downgrading to 12.04 and then installing a specific 3.6 kernel version for it, others mention upgrading to 13.04 and installing the 3.9 kernel version. And even another case where it mentions the user to download the drivers from the official site and do a step by step guide on how to install it.

I will mention several ways of doing it, all of which involve downloading the driver, compiling it and making sure it works. It has been noted that in the 3.9 kernel version, the wireless card is working correctly, so in 13.04 with backports or 13.10 this issue should be resolved.

So here are several ways you can get your Ralink RT3290 wireless card working in 12.04 and above (Not all methods will work, so try to look for the one that works best for your computer):

Since your vendor id is 1814:3290 it means you have a Ralink RT3290 wireless card. For that case we (After connecting the wired cable):

  1. Connect a wired cable connection to the computer to have Internet connection for the moment while you do the steps below.

  2. Open a terminal and execute the following line to install everything needed to compile your very own wireless drivers:

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

Now, depending on how you wish to proceed, follow one of the guides below:

OFFICIAL SITE GUIDE

 1. Go to Mediatek and download the Ralink RT3290 Driver for Linux   

 2. Rename the file to 2012_0508_RT3290_Linux_STA_v2.6.0.0.tar.bz2 because Mediatek did a great job on making sure the file works correctly.

 3. Extract the file and it should create a folder named DPO_RT3290_LinuxSTA_V2600_20120508

 4. Go to DPO_RT3290_LinuxSTA_V2600_20120508/os/linux/ and edit the file config.mk

 5. On line 31 you should find the following variable:

  HAS_NATIVE_WPA_SUPPLICANT_SUPPORT=n

  change it to 

  HAS_NATIVE_WPA_SUPPLICANT_SUPPORT=y

  and save the file.

 6. Go to your main extracted folder (It should be the DPO_RT3290_LinuxSTA_V2600_20120508 folder) and type the following:

 make    

 sudo make install

 7. If everything compiled correctly do the following:     modprobe rt3290sta

 8. If step 7 runs without any problems, we add the module to the list of modules to loaded upon every boot:

        sudo gedit /etc/modules`

 and add a line at the end of the file that says rt3290sta. Save and exit.

DROPBOX GUIDE

(Not recommended, as you're downloading an untrusted tarball off of a Dropbox account.

  1. Download the source driver:

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

    and we then decompress the file

    tar -xvf DPO_RT3290_LinuxSTA_V2600_20120508.tar.gz
    
  2. Go inside the newly created folder:

    cd ~/DPO_RT3290_LinuxSTA_V2600_20120508
    

    and we start the compiling process

    make
    sudo make install
    
  3. We then test to see if the driver is correctly compiled and installed

    sudo modprobe rt3290sta
    
  4. If step 3 runs without any problems we then add the module to the list of modules to loaded upon every boot:

    sudo gedit /etc/modules
    

    and add a line at the bottom that says rt3290sta. Save and exit.

EXTRA GUIDE

Some users mention additional steps. This might or not apply to you. If you feel the system is not working, maybe one of the points below can help you along the way:

  • When opening the config.mk file, do not only change the HAS_NATIVE_WPA_SUPPLICANT to a value of y, but also do it with HAS_WPA_SUPPLICANT in case it has n. In my case it had y but it should be checked to make sure both WPA_SUPPLICANT are set to `y.

  • Blacklisting conflicting wireless drivers. Do the following:

    sudo gedit /etc/modprobe.d/blacklist.conf

    Add the following lines (Make sure they are not there in the first place):

    #Wireless drivers conflicting with rt3562sta
    blacklist rt2800pci
    blacklist rt2x00pci

  • Update initramfs. Do the following: sudo update-initramfs -u

  • If you have trouble compiling the driver on Ubuntu 13.04 or Ubuntu 13.10 (and perhaps later versions as well), then this may be because of a change to the linux kernel creating an incompatibility with the driver code. This can possibly be fixed by opening

    gedit os/linux/pci_main_dev.c

and adding the following after the "#include " near the top

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

then change the portion of the file which says

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

to

#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

This will hopefully solve the compiler error. Return to the DPO_RT3290_LinuxSTA_V2600_20120508 directory and follow the instructions as above.

share|improve this answer
    
this driver is dropping connection from time to time, and that is why I think it is not good. But it is still better then what is currently installed, since it at least work, and it provides good signal –  BЈовић Mar 1 at 18:19
    
@BЈовић thanks for feedback friend and yes, it drops connection from time to time. –  Luis Alvarado Mar 1 at 19:36
1  
Give me a couple of hours. At work atm. I will help you then friend –  Luis Alvarado Mar 22 at 19:06
1  
@SrinivasGollapudi I wrote to you a couple of hours ago to your email but in bounced. If you could send me your gmail account to luisalvarado@ubuntu.com that would be helpful so I can start with your problem. –  Luis Alvarado Mar 23 at 17:11
1  
I am so happy to be giving this upvote and comment on my wireless ^_^. Thanks a ton! –  Kshitij Banerjee Aug 16 at 7:05

For those of you which couldn't get WiFi to work even after following the above steps (including me), this is a simple and much welcome fix.

The problem is that the kernel has problems supporting the driver, fortunately, the latest stable kernel release fixes the bug and the WiFi works with the default drivers.

To download the 32-bit kernel packages

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

To download the 64-bit kernel packages

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

To install the packages

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

And that should do it. Enjoy the latest kernel built.

In case if you want to remove the kernel

sudo apt-get purge linux-image-3.12.0-* linux-headers-3.12.0-*
share|improve this answer
    
This works! I installed Ubuntu 13.10 on my new HP Envy j049tx (flipkart.com/…). Compiling the Ralink driver manually worked but started causing kernel panics. Once i upgraded the kernel it works without issues. Thanks! –  Adil Jan 2 at 18:21
    
The dropbox guide and updating the latest kernal from browsing kernel.ubuntu.com/~kernel-ppa/mainline works smooth now. –  Lalith B Mar 17 at 6:40

protected by Community Apr 27 '13 at 13:52

Thank you for your interest in this question. Because it has attracted low-quality answers, posting an answer now requires 10 reputation on this site.

Would you like to answer one of these unanswered questions instead?

Not the answer you're looking for? Browse other questions tagged or ask your own question.