How do I get the Broadcom BCM4313 wireless working on an Asus 1015PX?

I installed Ubuntu 11.10 on my Asus 1015PX which is certified by Canonical. My WiFi is not working. I read about the BCM4313 troubles and tried

  • https://help.ubuntu.com/community/WifiDocs/Driver/bcm43xx
  • http://www.broadcom.com/support/802.11/linux_sta.php
  • I already tried everything in the thread Broadcom BCM4313 working, but terribly slow but nothing worked for me.

and others but nothing helped.

Can anyone give a detailed description point-by-point what he did to get this thing working on an Asus 1015PX?


The BCM4313 broadcom wireless card is compatible with the open source brcm80211 driver directly included in the standard kernel or the proprietary broadcom-wl driver that can be installed from the Additional Drivers in Ubuntu. At any point of time, you should only have one of the drivers installed and trying to use it simultaneously will only result in the drivers conflicting each other.

It should be also noted that broadcom-wl has been causing more problems than resolving them and you should probably avoid them altogether if possible.

To answer your problem, I have used the steps provided in this forums thread. This method is more like a workaround for the problem rather than a permanent fix to the issue.

First of all, blacklist the wl, brcm80211 and b43 modules and all its dependencies.

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

After opening the file, add the following to it:

blacklist mac80211
blacklist brcm80211
blacklist cfg80211
blacklist wl
blacklist lib80211_crypt_tkip
blacklist lib80211
blacklist b43

And then, edit the rc.local file:

gksudo gedit /etc/rc.local

And add the following above exit 0:

modprobe brcm80211

This will ensure that the brcm80211 driver module is loaded at the end of the boot process. You might need to call update-initramfs -u to ensure that your changes will be effective after a reboot.


I should probably add the fact that I have BCM4313 wireless driver in my system and I have used these procedures to get it working properly.


References:

  1. https://wiki.archlinux.org/index.php/Broadcom_wireless
  2. http://linuxwireless.org/en/users/Drivers/b43
  3. http://linuxwireless.org/en/users/Drivers/brcm80211
  4. http://ubuntuforums.org/showthread.php?t=1783272

I have a HP Pavilion dm4 with a BCM4313. I also had a lot of problems to get it to work in a normal, reliable way. Here is how I finally did solve my problems.

  1. After installing 11.10 64-bit wireless was working but in a very slow,unreliable way based on the brcmsmac driver in kernel 3.0.0.12-generic. Please take note about the following: The brcmsmac driver was not present in the 11.04 release and the STA driver was working fine in release 11.04. Logically I started to suspect the brcmsmac driver.Before resolving my wifi problems I first installed all updates including the 3.0.0.14-generic kernel. I don't know if this is really necessary in order to make the steps below work.

  2. Blacklist the bcma and brcmsmac as follows

    Open the Terminal (Ctrl+Alt+T) and run this command:

    gksu gedit /etc/modprobe.d/blacklist
    

    Add the following lines to this file:

    blacklist bcma
    blacklist brcmsmac
    

    Save the file and close the text editor.

  3. Install the STA driver via the "Additional drivers" app. Please remind that you might need to do this via a wired connection since I do believe that blacklisting breaks your brmsmac based wifi connection. Maybe you also need to restart your laptop/netbook after installing the STA driver. I don't remember...

  4. Try to connect to your wifi network.

I hope this will work for you. Nowadays my wifi connection is fast and reliable.


Other people had some trouble with your wifi card; here is another question that it's supposed to be solved:

WiFi is not enabled in Network Manager with a BCM4313

Here is another question that explains the possible drivers for your hardware and how they work:

How do I get my Broadcom BCM4313 working correctly?


Please check:

lspci -nn

Is it's pci.id 14e4:4727?
If so, this may be helpful:

sudo apt-get install linux-headers-generic
sudo apt-get install --reinstall bcmwl-kernel-source 
sudo modprobe wl