12.10 - Ralink 3090 wireless connects but is slow and unstable on an Ideapad S205

23
2014-04
  • Oranges

    I am using the Lenovo Ideapad S205 and Ubuntu 12.10 (32bit). The netbook has a built in Ralink 3090 wireless card.

    The problem is: Wifi does actually work, but network speeds are extremly slow and unstable. I am runnnig on a 32.000 DSL connection and I only get about 50KB/s with my wireless in Ubuntu. To make things worse; it slows down my entire internet router and network connection, forcing me to reset the router in order to bring this situation back to normal speeds again. This issue does not happen on Windows 7.

    My question: How can I fix this? I read that the S205 @default uses the Open Source wireless driver for my chipset. How can I download and safely install the prop. drivers for my wireless chipset?

    Thank you for your time and support - I appreciate it.

    Oranges

  • Answers
  • Bruno Pereira

    Try using ndiswrapper to install Windows XP drivers (not the installer, the .inf files). That's how I use my Ralink wifi, since the driver present in Ubuntu also makes my connection too slow, unacceptably slow.

  • Bruno Pereira

    After hours of frustration, trying stuff mentioned in the wildest parts of the internet, reinstalling and trying to find an easy solution, I find this: https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1020081

    It seems I am not the only one with this bug/problem (see comment section in the link provided above).


  • Related Question

    How do I get a Ralink RT3060 wireless card working?
  • Hoerlle

    I am new to linux. I was using fedora and now switching to Ubuntu for a try. On Fedora my wireless network card was working OK from the OS install (I didnt had to do anything for it to work) On Ubuntu, with the lspci -v command, I get:

    Network controller: Ralink corp. RT3060 Wireless 802.11n 1T/1R
        Subsystem: Ralink corp. RT3060 Wireless 802.11n 1T/1R
        Flags: bus master, slow devsel, latency 64, IRQ 20
        Memory at fe9e0000 (32-bit, non-prefetchable) [size=64K]
        Capabilities: <access denied>
        Kernel driver in use: rt2800pci
        Kernel modules: rt2800pci
    

    But I am not able to find any wireless network. What to do now?

    Thanks


  • Related Answers
  • Jorge Castro

    For 11.10:

    There appears to be an issue with the RT3060 wireless card in 11.10 - it defaults to the 2800 kernel module which is incorrect.

    Connect via your fixed wired link and run:

    wget http://media.cdn.ubuntu-de.org/forum/attachments/2814031/angepasster-DPO_RT3562_3592_3062_LinuxSTA_V2.4.1.1_20101217.tar.gz
    tar xzvf angepasster-DPO_RT3562_3592_3062_LinuxSTA_V2.4.1.1_20101217.tar.gz
    

    Run the following (copy and paste) into a terminal - N.B. you'll need to do this each time there is a Kernel update.

    sudo apt-get install --reinstall linux-headers-generic build-essential dkms
    cd angepasster-DPO_RT3562_3592_3062_LinuxSTA_V2.4.1.1_20101217/
    sudo make
    sudo make install
    echo "blacklist rt2800pci" | sudo tee /etc/modprobe.d/blacklist-rt2800pci.conf
    sudo modprobe -rfv rt2800pci
    sudo modprobe -v rt3562sta
    

    This should make the wireless card work ok.

    If you have wireless drop-outs then you'll need to disable power-management

    gksudo gedit /usr/lib/pm-utils/power.d/wireless
    

    change this part:

    case $driver in
    ipw2100) iwpriv_ac="set_power 0"
    iwpriv_batt="set_power 5"
    iwconfig_ac="power on"
    iwconfig_batt="power on";;
    ipw3945)
    iwpriv_ac="set_power 6"
    iwpriv_batt="set_power 7";;
    iwl*) if [ -f "/sys/class/net/$1/device/power_level" ]; then
    iwlevel_ac=0
    iwlevel_batt=3
    else
    iwconfig_ac="power off"
    iwconfig_batt="power on"
    fi;;
    *) iwconfig_ac="power off"
    iwconfig_batt="power on";;
    esac
    

    to:

    case $driver in
            ipw2100) iwpriv_ac="set_power 0"
                iwpriv_batt="set_power 0"
                iwconfig_ac="power on"
                iwconfig_batt="power on";;
            ipw3945)
                iwpriv_ac="set_power 6"
                iwpriv_batt="set_power 6";;
            iwl*) if [ -f "/sys/class/net/$1/device/power_level" ]; then
                     iwlevel_ac=0
                     iwlevel_batt=0
                  else
                     iwconfig_ac="power off"
                     iwconfig_batt="power off"
                  fi;;
            *) iwconfig_ac="power off"
               iwconfig_batt="power off";;
        esac
    

    More information and possible wireless-N workarounds are described in the source of this answer.

  • izx

    For 12.04:

    • The only official support for the RT3060/3062/3562/2592 in Linux is experimental and may not be fully functional.
      • This is provided by the rt2800pci driver from the kernel.org/compat-wireless team
      • The driver is an independent effort and does not seem to use Ralink code

    Option 1. Try installing the latest compat-wireless backports package and see if it works

    • Click the below to install it via the Software Center:

      Install via the software center

    • Alternatively, open a terminal with Ctrl+Alt+T and paste:

      sudo apt-get install linux-backports-modules-cw-3.3-precise-generic
    • Once installation is complete, reboot and see if your wireless card works better. If not, follow option 2.

    Option 2. Build and install Ralink's own drivers

    1. Download them from Ralink's website.
    2. Save to your Downloads folder (default):

      enter image description here

    3. Open a terminal with Ctrl+Alt+T, and paste the following, line by line:

      sudo apt-get install linux-headers-$(uname -r) build-essential dkms
      cd Downloads
      tar -xzf DPO_RT3562_3592_3062_LinuxSTA_V2.4.1.1_20101217.tgz
      cd DPO_RT3562_3592_3062_LinuxSTA_V2.4.1.1_20101217
      WPA1=HAS_WPA_SUPPLICANT
      WPA2=HAS_NATIVE_WPA_SUPPLICANT
      sed -i -e "s/$WPA1=n/$WPA1=y/g" -e "s/$WPA2=n/$WPA2=y/g" os/linux/config.mk
      sudo make && sudo make install && sudo make clean
      cd ..
      
    4. Blacklist the built-in driver, and load the new one with:

      echo "blacklist rt2800pci" | sudo tee /etc/modprobe.d/blacklist-rt2800pci.conf
      sudo modprobe -rfv rt2800pci
      sudo modprobe -v rt3562sta
      
    5. Your RT3060 should now be functional. You can now open up the Downloads folder in the File Manager and delete the downloaded Ralink file/folder:

      enter image description here

  • izx

    One solution may be to upgrade to Ubuntu 12.04.

    My ralink wireless adapter works out of the box in Ubuntu 12.04, which has an RT3062 chipset.

    Although not released yet at the time of writing, Ubuntu 12.04 Beta 2 has proven itself quite stable in my experience, and certainly less of a hassle than having to install the patched driver every time there's a kernel update.