TransWikia.com

Installing Broadcom Wireless Drivers

Ask Ubuntu Asked by Fer1805 on January 20, 2021

I’m having serious problems installing the Broadcom drivers for Ubuntu. It worked perfectly on my previous version, but now, it is impossible.

What are the steps to install Broadcom wireless drivers for a BCM43xx card?

I’m a user with no advance knowledge in Linux, so I would need clear explanations on how to make, compile, etc.


lspci -vnn | grep Network showed:

Broadcom Corporation BCM4322 802.11a/b/g/n Wireless LAN Controller [14e4:432b] 

iwconfig showed:

lo        no wireless extensions.
eth0      no wireless extensions.

NOTE: Answer below is updated every time new information is added and confirmed working.

43 Answers

Good news. With fresh 18.04 on my laptop with a broadcom wifi ("third party wifi" checkbox not checked during install), it show "no wifi adapter found make sure you have a wifi adapter plugged and turned on"

Turns out if I reinstall and check the "install third party software for graphics and wifi" checkbox (by default it's not checked), then it installs bcmwl-kernel-source and it "just worked" for me (latitude e6230) Installing the ubuntu-restricted-addons after the fact didn't seem enough. FWIW :)

Answered by rogerdpack on January 20, 2021

I solved problem on HP Pavilion g6 with Broadcom 4313 (14e4:4727 rev 1) by removing blacklist on bcma and brcmsmac

Instructions

Install drivers and firmware

sudo apt-get install broadcom-sta-common linux-firmware

Remove blacklist by editing /etc/modprobe.d/broadcom-sta-common.conf (e.g. commenting lines) :

blacklist b43
blacklist b43legacy
blacklist b44
#blacklist bcma
blacklist brcm80211
#blacklist brcmsmac
blacklist ssb
install wl /sbin/modprobe --ignore-install wl $CMDLINE_OPTS

The example above may differ from your original file

Backup the original file

Answered by lauhub on January 20, 2021

I first thought I would edit Luis Alvarado's excellent answer (see his post on september 7th, 2011), because when I followed the steps, it appeared the package that is indicated in the table (see his post) for my PCI.ID does not actually correspond.

In fact, my PCI.ID is 14e4:4727, which, according to the table, requires the installation of the package bcmwl-kernel-source. This package was perviously installed on my computer, but the Wifi wasn't working (no detection of any wireless network, since the upgrade to Ubuntu 16.04). I instead tried to install the firmware-b43-installer following Luis Alvarado's answer (using firmware-b43-installer is an alternative already pointed out in his post), and it worked !

So, in case it helps someone else in the same case as me, here is the necessary information :

  • Output of the lspci -nn -d 14e4: command :

    02:00.0 Network controller [0280]: Broadcom Limited BCM4313 802.11bgn Wireless Network Adapter [14e4:4727] (rev 01)
    
  • The steps I followed :

    1. Purge the bcmwl-kernel-source package :

      sudo apt-get purge bcmwl-kernel-source
      
    2. Run the following commands (see Luis Alvarado's answer for details) :

      sudo apt-get update
      sudo update-pciids
      
    3. Install the firmware-b43-installer package and not the bcmwl-kernel-source package (contrary to what is advised in the table for 14e4:4727 rev 01) :

      sudo apt-get install firmware-b43-installer`
      
    4. Reboot:

      sudo reboot
      

And now the Wifi should work !

Thanks a lot Luis Alvarado !

Answered by Giuseppe on January 20, 2021

Special case: BCM43142 & AR8161 on Dell Vostro 3460

The Intel4000 graphic in my case needs at least kernel 3.6 (for 64-bit: 1,2,3,4). There the needed kernel headers for the Broadcom adapter are included. But the problem is that before installing the kernel, you need to install the build-essential, and this is differing between Ubuntu release versions and window managers. You also need to install the dkms if not already available, too, which is a bit tricky without an Internet connection. So here comes a hint for other noobs like me that I grabbed from here:

  • Install your ...buntu of choice (Linux Mint also works) on a machine where you can access the Internet out-of-the-box (for example, on USB and visit a good, old friend with some easter eggs ;)

  • There you sudo apt-get install build-essential dkms

  • Go to /var/cache/apt/archives (at this location apt automatically stores all your installed packages per default.) Now copy all deb's into a folder, for example, called "BUILD-ESSE" on your USB stick.

  • Now you easily can copy this folder on your Vostro and install those debs via sudo dpkg -i BUILD-ESSE/*.deb.

Answered by elf12 on January 20, 2021

Make sure you're not having an unresolved linux-headers dependency, cf. After upgrading to Ubuntu 12.04, my Broadcom STA Wireless driver is not working, otherwise install them.

Answered by Jim Rogers on January 20, 2021

As I've found out, to systemize this a little, there are four driver families available:

  1. open-source b43 from the the [b43m project][1] that is available in [Linux kernel][2],
  2. open-source brcmsmac/brcmfmac, also availalble in [kernel][3]
  3. Windows libs via [ndiswrapper][4], and
  4. [Broadcom][5]'s own linux [libs (STA)][6]

These links also provide reference to the drivers and lists with chipsets supported.

To be clear with referencing the different IDs, make sure to consult the STA link above prior to reading on, and comprare to yours via:

lspci -nn | grep Network | grep "[....:....]"

Here's an example for 4313 (from link #6):

BRCM Product Name   |   PCI Vendor ID | PCI Product ID  |  Dell Device ID

4313 2.4 Ghz      |  0x14e4 | 0x4727 |      Dell 1501

Other than the driver, you also need the firmware, firmware-b43-installer.

The description below has been applied to the STA driver but has been written before this.

Although Ubuntu is meant to be versatile, beautiful, and easy to use for everyone, packages still are prone to dependency faults. Look, installing drivers and other system stuff, it's reasonable to get as verbose a feedback as possible, i.e., do this manually or semi-manually (apt-get), avoid those GUI installers.

I've been experiencing the same issues with my 4313. Let me offer a blunt and partly non-analytical solution:

  1. Remove everything of STA that you have

    sudo apt-get purge bcmwl-kernel-source broadcom-sta-common broadcom-sta-source
    
  2. Install that again manually:

    sudo apt-get install bcmwl-kernel-source broadcom-sta-common broadcom-sta-source
    
  3. Read the output. I've been having a nice double-liner:

    Building for architecture x86_64 Module build for the currently running kernel was skipped since the kernel source for this kernel does not seem to be installed.

In such case, which I assume happens quite often, since (1) The inherent dependency isn't resolved and (2) There's a break in the wl interface upon upgrades (which may involve a kernel update), in such case, you should simply do the following two steps and I assume you don't need to reinstall the WiFi driver sources:

  1. Check you current kernel version as follows (third entry):

    uname -r
    
  2. Install the appropriate linux-headers, which in my case is:

    sudo apt-get install linux-headers-**generic**
    

After this command you should see (as this has been deferred upon incapacity to compile during the installation procedure of the STA WiFi driver source files):

Setting up linux-headers-3.5.0-17-generic (3.5.0-17.28) ...
Examining /etc/kernel/header_postinst.d.
run-parts: executing /etc/kernel/header_postinst.d/dkms 3.5.0-17-generic /boot/vmlinuz-3.5.0-17-generic
 * Running DKMS auto installation service for kernel 3.5.0-17-generic                                                                                                                    
 *  bcmwl (5.100.82.112+bdcom)...                                                                                                                                                        bcmwl (5.100.82.112+bdcom): Installing module...

I'm not sure whether the guys responsible for packages would get to see this. Still, having used Gentoo for years, I've got used to its verbosity and which may seem unnecessary coloring and formatting of output. You guys should add formatting and colors to your apt-get routine, it's so much easier, especially for novice users, to understand what may have gone wrong. And add the headers dependency, you could remove them afterwards--and surely you'd have to rebuild the module upon kernel change.

I hope this helps, and I'm cautious of generalizing the above path to resolve the mass issue. Just give it a try, if it works, awesome, if it doesn't there are so many more solutions offered which are notably more analytical and proficient.

I've also stumbled upon these answers (with a check

lspci -nn | grep Network

For pci.id 14er:4727--which holds in my case): Wireless does not work anymore after software update with Ubuntu 12.10 on a Dell Latitude E6230 and How do I get an Acer Npilfy 802.11 (BCM43225) wireless card working? who refers to the former.

And I've also missed the fact that Ubuntu offers a link in the packages to the currently installed and running kernel and headers version in order to avoid defining the kernel version.

Answered by Jim Rogers on January 20, 2021

After several hours of trial and error I finally found a solution for "Debian Wheezy (testing)" !! - I think it should work similar on other distributions too. The main problem was the driver brcm80211 (provided by package "firmware-brcm80211") - now I use the driver wl provided by the package "broadcom-sta-dkms" and everything works !

Instructions:

add

deb http://ftp.us.debian.org/debian wheezy main contrib non-free

to

/etc/apt/sources.list

then do

apt-get update

afterwards do

apt-get install broadcom-sta-dkms

now unload conflicting modules

modprobe -r b44 b43 b43legacy ssb brcmsmac

please note: your existing WLAN connection will terminate doing this!

load wl module with

modprobe wl

verify your WLAN chip is working:

iwconfig

configure your WLAN interface as usual - finished! :)

(source: http://wiki.debian.org/wl)

Answered by User on January 20, 2021

Sometimes, the Additional Drivers Utility will fail to install a Broadcom STA Wireless Driver. When that happens, first check if your card is indeed supported by the STA driver, and to do that, open a terminal window (ctrl-alt-t) and run

lspci -nn | grep -i BCM

The output will include the wireless card model, make sure it is among the models listed below.

Broadcom wireless cards supported by the STA driver:

BCM4311, BCM4312, BCM4313, BCM4321, BCM4322, BCM43224, BCM43225, BCM43227, BCM43228

If the card is supported, try installing the driver manually. Open a terminal window (ctrl-alt-t), and run

sudo apt-get install bcmwl-kernel-source

You may need to reboot at this point.

Answered by mikewhatever on January 20, 2021

There is a much easier way of solving this problem. The trick is the order in which you install proprietary drivers. The Broadcom driver MUST be installed FIRST before any others.

Example I have a HP TX2-1050ED with Broadcom B43 and ATI Raedon graphics.

I enabled the ATI Raedon driver first then the Broadcom driver this lead to the errors mentioned above.

When I uninstalled the ATI driver then installed the Broadcom driver and reboot. I had wireless. Then I installed the ATI driver and now both work.

This is actually a bug in Jockey as Jockey should resolve the driver conflict for you.

So in short. Broadcom First, then other drivers.

Answered by Kat Amsterdam on January 20, 2021

The issue with your wifi is that you are using the one forced by Ubuntu, but that does not work. Run the following commands to get the Wifi properly working:

Press Ctrl+Alt+T

sudo apt-get update
sudo apt-get install firmware-b43-installer
sudo reboot

After you reboot. Your Wi-Fi should work as intended.

Answered by Petronilla Escarabajo on January 20, 2021

I had the same problem. b43 and bcmwl didn't work for me. b43 worked but the speed was always below 10kBps.

The open source bcma driver works fine.

sudo rmmod wl
sudo modprobe bcma
sudo reboot

This did the trick for me.

Answered by user83116 on January 20, 2021

What worked for me for my Broadcom bcm4313 on Asus Eee PC Seashell 1015PEM with Ubuntu 12.04:

  • don't use restricted drivers
  • add "blacklist bcma" to /etc/modprobe.d/blacklist.conf
  • sudo modprobe brcmsmac
  • add brcmsmac to /etc/modules
  • reboot

Answered by Sean F on January 20, 2021

In the case where either the blacklist.conf or apt-get re-install for b43 Broadcom didn't work, it may simply be because the default wireless config still hasn't been enabled properly for WPA/WPA2.

Network folder, wireless and select Options ubuntu 12.04:

  • ipv6 tab - just keep the method as automatic and uncheck the 'Require IPv6 addressing...'
  • ipv4 tab - method should be automatic (DHCP) and check the 'Require IPv4 addressing...'
  • wireless tab - force device mac address to lock connection to the permanent mac address of the laptop

Answered by james on January 20, 2021

For people having a Dell Vostro 1320 (or similar) and experiencing a notification in the wireless menu about a turned off wireless, this is what helped me.

The dell_laptop module was interfering with rfkill and telling it incorrectly that the hardware switch is off. This can be fixed by blacklisting the dell_laptop module. Open the file /etc/modprobe.d/blacklist.conf with your favorite editor with superuser permissions, e.g. press ALT+F2 and type

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

or in a Terminal:

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

At the end of the file ad the following like (preferably with a comment):

# dell_laptop communicates wrong hw switch state to rfkill 
blacklist dell_laptop 

Don't forget to save the file. After blacklisting the module this way it will not be loaded during future system startups. Reboot your machine. Wireless should work now.

reference: http://launchpad.net/bugs/701259

Answered by Andre on January 20, 2021

I have a b43 card and have been using Ubuntu with it since 9.04, I've used the same method to get it working since. It involves some command line usage but believe me it's worth it.

To begin with,if you already have b43-fwcutter installed, you need to reinstall it, please run:

sudo apt-get remove b43-fwcutter

I assume you know the type model of your wireless card. This method does not use the Additionals Drivers way.

After you've uninstalled b43-fwcutter reboot your computer. NB if you've no access to a wired network on your machine you will need to download the b43-fwcutter package manually from here, as well as your card's driver from here. My card is the 4311 so I download the broadcom-wl-4-150-10.5.tar.bz2.

Once you have reinstalled b43-fwcutter either by running sudo apt-get install b43-fwcutter or by using the .deb file you'd have gotten from the quoted website.

You need to extract your firmware from the tarball. Run command;

tar -xvjf broadcom-wl-4-150-10.5.tar.bz2

You may need to change the filename to reflect what you downloaded from the driver site, or just use tar -xvjf broadcom*. Then run

cd broadcom-wl-4.150.10.5/driver
sudo b43-fwcutter -w /lib/firmware wl_apsta_mimo.o

Now reboot and everything should work fine!

Answered by boywithaxe on January 20, 2021

For anyone else who is getting the "wireless is disabled by hardware switch -a" message under wireless (you'll see it by clicking on the icon) - and it's "hard block", that may work in any model (that is working for me in netgear "wireless USB adapter", haven't checked the others, but it may work).

First check if it hard-blocked. Run in terminal (Ctrl + Alt + T):

sudo rfkill list

If it is, first run this to unblock:

sudo rfkill unblock all

Then I shutdown my PC, disconnected it from electricity and opened its left door. I removed the cycled battery and hit the power-button 20 long and short presses to reset the BIOS.

Then I returned the battery and connected the PC to electricity. I turned on the PC and set the BIOS (also for things like no diskette and boot pririty) in the Wake-on-LAN category where it says something on PME to enabled.

I pressed F10 to save settings and restarted. After all this, the system was ready--desktop and its files. I waited for a while and the Wi-Fi was responding again.

That have already worked for me four times (it may happen any time you are forcing a shutdown or disconnecting the Wi-Fi).

I hope that it would be of help to someone too (:

Answered by yinon on January 20, 2021

I had the same problem with my Acer TravelMate 8172 and its Broadcom 4357 controller on Ubuntu 12.04. I had tried several solutions posted on the web for other Broadcom devices but they didn't work. andybleaden's solution above worked for me.

Following Andy's instructions, first I removed and reinstalled the Broadcom drivers with:

sudo apt-get purge bcmwl-kernel-source
sudo apt-get install bcmwl-kernel-source

After that, I executed

sudo modprobe -r b43 ssb wl
sudo modprobe wl 

to enable the wireless card.

Unfortunately, the wireless card is off whenever I reboot, so I created a script with the above two modprobe commands to execute whenever I reboot. This will have to do until Ubuntu 12.04 is updated with a fix.

Answered by pvillela on January 20, 2021

I used user 'bkratz' solution on http://ubuntuforums.org/showthread.php?t=1928241 and it worked for me.


Run these:

sudo apt-get install --reinstall bcmwl-kernel-source broadcom-sta-common broadcom-sta-source
echo "blacklist brcmsmac" | sudo tee -a /etc/modprobe.d/blacklist.conf    
echo "blacklist bcma" | sudo tee -a /etc/modprobe.d/blacklist.conf

The first makes sure that the sta driver is in place, the second and third blacklist the two drivers brcmsmac and bcma which clash with the correct sta driver. Copy/paste or make sure your typing is correct!

The last step is to go to 'Additional drivers' and enable the driver.

Answered by Thomas on January 20, 2021

Just installing the additional drivers, it works in my Dell Vostro 3500.

I did the following steps:

  1. sudo apt-get remove bcmwl-kernel-source

  2. Then re install the additional drivers given below. I activated it.

This package contains Broadcom 802.11 Linux STA wireless driver for use with Broadcom's BCM4311-, BCM4312-, BCM4313-, BCM4321-, BCM4322-, BCM43224-, BCM43225-, BCM43227- and BCM43228-based hardware.

Answered by hari sharma on January 20, 2021

This is a common problem to Broadcom wireless chip.

Run the following in the terminal:

sudo apt-get remove --purge bcmwl-kernel-source

If the command run successfully try to switch on wireless (with the hardware key).

If it doesn't work or the command failed saying there is no such module, then you could try opening a terminal and type

dmesg | grep b43

If you see lines like:

[   17.453421] b43-phy0 ERROR: Firmware file "b43/ucode15.fw" not found
[   17.453427] b43-phy0 ERROR: Firmware file "b43-open/ucode15.fw" not found
[   17.453432] b43-phy0 ERROR: You must go to http://wireless.kernel.org/en/users/Drivers/b43#devicefirmware and download the correct firmware for this driver version. Please carefully read all instructions on this website.
[   17.680077] b43-phy0: Loading firmware version 478.104 (2008-07-01 00:50:23)
[   17.993040] b43-phy0: Radio hardware status changed to DISABLED

Then you probably are lacking the firmware for the broadcom card. Open Software Center, search and install the following packages,

  • b43-fwcutter
  • firmware-b43-lpphy-installerer

Reboot once. Now the wireless should work.

Answered by Web-E on January 20, 2021

I had the same problem yesterday (Dell Latitude D530 w/broadcom 4311).

I did:

sudo apt-get install firmware-b43-installer

That was that until the next reboot. Now I had to find out how to re-enable it but now the problem lies somewhere else.

Answered by JoGo on January 20, 2021

I had the same problem and I have solved it by adding

blacklist acer_wmi

to /etc/modprobe.d/blacklist.conf

A restart later wireless worked.

(this was taken from http://ubuntuforums.org/showpost.php?p=11006092&postcount=2)

Answered by Alex on January 20, 2021

I have a HP Pavilion dv6000.

I had this issue while installing Ubuntu 11.10 (Oneiric Ocelot), and the post b43 - No Internet access helped me a lot.

Specially when you don't have a wired network available on your laptop. All you need is a pendrive with Ubuntu 11.10 (Oneiric Ocelot) and two files which you can download from a computer with Internet connection (copy them to your pendrive):

  1. http://downloads.openwrt.org/sources/wl_apsta-3.130.20.0.o
  2. http://mirror2.openwrt.org/sources/broadcom-wl-4.150.10.5.tar.bz2

Follow the instructions on the site I mention above, and don't forget to restart your computer (I skipped step 4 - it worked after the restart).

Answered by czerasz on January 20, 2021

Drivers for the 4313

Let's just enumerate the driver for Broadcom chipsets and how they work with the 4313:

  • Broadcom STA. Suggested by additional drivers. Old. Awful. Absolute junk. Skip it. If you've already installed it, remove it.

  • b43-fwcutter. Lots of people see "Broadcom" and jump on this but it's not compatible with the 4313 (which is newer). If you've installed it, purge it.

  • ndiswrapper. Even more flaky than the STA driver. I managed to get it working for about 10 minutes before everything imploded.

  • brcm80211 aka brcmsmac. This is a (relatively) new driver that was recently added to Ubuntu (since the driver was added to the kernel). This should work well and (in recent version of Ubuntu, Natty and Oneiric) should "Just work". This is the droid you're looking for. Use this driver for the 4313.

    If you're not running Natty or Oneiric, your kernel probably won't have this driver. You need to be running at least 2.6.27 and I'd recommend 2.6.28 as the bare minimum (you can check what you're on by running uname -r).

    If you're behind on versions, I'd suggest the upgrade but for a quick fix, you can take a look at the mainline kernels and try one of those. Installing kernel packages is rarely a risky thing because you can usually just fall back to an old one using the grub boot screen.

You know you're probably on the right driver if you run lsmod | grep brc and you see brcm80211 or brcmsmac in the output.

Blacklisting your way to success

If you're not seeing that, something else has been loaded in and you need to blacklist that. If you can see what has been loaded, great, edit /etc/modprobe.d/blacklist.conf and start adding lines like:

blacklist b43
blacklist b43legacy
blacklist bcma
blacklist ndiswrapper

You obviously need to be careful if you have another wireless device that might be using a conflicting driver as if you blacklist it, you'll break that one too :)

Answered by Oli on January 20, 2021

The Broadcom STA drivers worked OK for me, and I have the same Broadcom card in my Dell. The slow Internet connection I felt was during powersave mode. Here are the list of Broadcom drivers available. I have been using the opensource driver since then, and I recommend it over the STA drivers.

People say it is not available for Ubuntu 10.10 (Maverick Meerkat), so you need to install it manually. Ask Ubuntu question Broadcom STA driver doesn't work well with BCM4313 provides information on installing it manually OR you can may be use the Debian builds.

Answered by sagarchalise on January 20, 2021

Had the same slow connection issue with Ubuntu 11.04 and a HP Mini 5103 laptop which comes with Broadcom 4313. After having tried many suggestions, disabling the Broadcom STA Wireless Driver from Additional Drivers window fixed the issue for me.

Answered by Maine on January 20, 2021

BCM4311 for my DV6000 is not working with the STA driver nor with the b43 driver. With b43 the LED always stays orange (WLAN disabled).

With rfkill I can see:

1: hp-wifi: Wireless LAN
    Soft blocked: no
    Hard blocked: no

With the STA driver I can search the network, but the connection never finishes. The system worked fine with Ubuntu 10.10 (Maverick Meerkat) (x86) - now I am using Ubuntu 11.10 (Oneiric Ocelot) beta 2 (x64).

dmesg shines some light on the error:

s/Drivers/b43#devicefirmware and download the correct firmware for this driver version. > Please carefully read all instructions on this website.

[ 367.927967] b43-phy0 ERROR: Firmware file "b43/ucode13.fw" not found
[ 367.927981] b43-phy0 ERROR: Firmware file "b43-open/ucode13.fw" not found
[ 367.927989] b43-phy0 ERROR: You must go to http://wireless.kernel.org/en/users/Drivers/b43#devicefirmware and download the correct firmware for this driver v

It seems like the firmware files are missing from the Linux drivers(?). I got the LED back to blue (WLAN is enabled) and scanning is working with:

sudo apt-get install firmware-b43-installer

This was from the site http://linuxwireless.org/en/users/Drivers/b43.

Now the WLAN network is working for me (doublecheck for the WPA2 password was required :-) ).

Answered by Manu Kemppainen on January 20, 2021

0. Introduction and Background

This answer is based on an extensive research done by various Ubuntu users that worked together in almost all issues related to Broadcom. Special thanks to chili555 who helped in the Ubuntu forums and on this site with many questions related to Wireless devices and to others who have contributed through E-Mail, chats, IRC and more in testing various drivers with several of the most popular Broadcom Wireless cards (Huge Thanks to Chili555 really. This guy knows his stuff).

In total we wanted to offer an answer that could be easy to follow and covered most Broadcom Cards / Drivers. After you follow this guide, you will NEED to test your wireless connection for at least 2 hours (I actually recommend 8 hours) with another device in either Ad-Hoc Mode, Infrastructure Mode or Both. Common problems that will be solved (Apart from drivers not installing) are:

  • Connections timeout after several minutes or hours
  • Stops searching for other devices (Does not see any other device)
  • Keeps asking for password even on cases where AP does not have any
  • Stops any receiving/transmitting traffic (Needs reboot to temporarily fix)
  • Crashes system with dmesg errors in log (Link 1 Below)
  • System freezes completely (You can only press Reboot/Power button) (Link 1 Below)
  • Creates huge log reports trying to correctly configure or connect
  • Fails when installed via Additional Drivers / Additional Hardware (Link 3 Below)
  • Connects and disconnects continuously every X amount of seconds
  • Appears connected on Network Manager but does not receive Internet
  • Tries to connect many times without correctly finishing connection
  • Takes too long to connect
  • After upgrading from a previous version (eg: 12.04 to 12.10) it stops working
  • Wireless card does not turn on, enable or disable (Link 2 Below)
  • Wireless card blocked by hardware
  • More problems found in Launchpad, Ubuntu Forum and Askubuntu

Link 1 - https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1060268
Link 2 - https://bugs.launchpad.net/ubuntu/+source/bcmwl/+bug/732677
Link 3 - Gives an error similar to "Sorry, installation of this driver failed."

So with that in mind, the following is what we have right now which is simplified in just 3 steps:

1. Knowing what Broadcom Wireless Card you have

There are dozens of Broadcom wireless cards and more seem to appear every day. The key to finding the correct driver for any network card is what is known as the PCI ID (PCI.ID). To find out which PCI.ID you have, we proceed to opening the terminal by pressing CTRL+ALT+T (It should open a window with a blank background) and inside this terminal we run the following command:

lspci -nn -d 14e4:

You will get something like the following if you have a Broadcom Wireless Adapter (The ID 14e4 used in the example above in most cases is a Broadcom Wireless Card):

Broadcom Corporation BCM4306 802.11bgn Wireless Network Adapter [14e4:4320] (rev 03)

The PCI.ID in this example is 14e4:4320 as seen inside the Brackets [...]. In some cases you will also need the revision version (if it appears) for some special cases. In this case, the revision version is rev 03 as shown inside the Parentheses (...) at the end. So what you will need after this search is:

[14e4:4320] (rev 03)

With this new information you can look in the table below and select the appropriate method to install your driver. For example, In this case, since you have the 14e4:4320 rev 03, if we go down the list to the one that shows the exact same PCI.ID you will see that in the columns for Ubuntu 18.04 or 20.04 it shows the firmware-b43-installer package driver. This means that you will only have to install this particular package since it appears in all Ubuntu version columns.

NOTE - Before proceeding, if you have previously installed any drivers, have blacklisted or uncommented any driver files or configuration files or have done any changes whatsoever to the system to make the drivers work in previous attempts, you will need to undo them in order to follow this guide. We assume you are doing this from scratch and have not changed any configuration files, modules or drivers in the system in any way (apart from updating the system). This includes any installations using apt-get, aptitude, synaptic, dpkg, software center or manual compilation and installation of the packages. The system has to start from scratch in order for this to work and to avoid any conflicts that may appear if earlier work was done.

For example, if you have previously installed the bcmwl-kernel-source package, you will need to remove it by using the purge method:

sudo apt-get purge bcmwl-kernel-source

2. Preparing the System

If you have just installed Ubuntu, you will need to build an index of available packages before we can install your driver if you have not done so already:

sudo apt update

I would even go so further as to update the Ubuntu list of PCI.IDs:

sudo update-pciids

Just in case the ID of a particular new Broadcom Device you are using has just appeared.

Now using the PCI.ID you found in the steps above, we then search in the list below to find the matching PCI.ID and the method to install the driver associated with it in a simple and correct way. The terminal will be used to avoid any GUI related issues. This applies with all cases, except as noted. The installation procedure is done only via terminal and also while connected to the internet with a temporary wired ethernet connection or USB modem or any means possible that can give your PC, for the time, Internet access. After you find in the list below the correct package we then proceed with the installation.

3. Installing the Package (online)

Assuming you used the PCI.ID 14e4:4320 rev 03 as found in your search above, and then looked at the table below and found that the correct package to install is the firmware-b43-installer (Specific to Broadcom) and the linux-firmware (Carries over Broadcom related drivers along with other types of drivers), we then proceed to simply install this package in the terminal:

sudo apt install firmware-b43-installer

sudo apt install linux-firmware

and then reboot

sudo reboot

The format to install is pretty simple, it's just:

sudo apt install <PACKAGE_NAME>

In the example above, the PACKAGE_NAME is firmware-b43-installer.

BROADCOM WIRELESS TABLE (Updated Oct 29, 2020)

PCI.ID              18.04 LTS                        20.04+
------------------------------------------------------------------------------------
14e4:0576           Special Case #1                   UNKNOWN      
14e4:165f           UNKNOWN                           UNKNOWN
14e4:1713           firmware-b43-installer            firmware-b43-installer / linux-firmware      
14e4:4301           firmware-b43-installer            firmware-b43-installer / linux-firmware      
14e4:4306           firmware-b43-installer            firmware-b43-installer / linux-firmware      
14e4:4306 rev 02    firmware-b43-installer            firmware-b43-installer / linux-firmware      
14e4:4306 rev 03    firmware-b43-installer            firmware-b43-installer / linux-firmware      
14e4:4307           firmware-b43-installer            firmware-b43-installer / linux-firmware      
14e4:4311           firmware-b43-installer            firmware-b43-installer / linux-firmware      
14e4:4311 rev 01    firmware-b43-installer            firmware-b43-installer / linux-firmware      
14e4:4312           firmware-b43-installer            firmware-b43-installer / linux-firmware      
14e4:4313           firmware-b43-installer            firmware-b43-installer / linux-firmware              
14e4:4315           firmware-b43-installer            firmware-b43-installer / linux-firmware      
14e4:4315 rev 01    firmware-b43-installer            firmware-b43-installer / linux-firmware
14e4:4318           firmware-b43-installer            firmware-b43-installer / linux-firmware               
14e4:4318 rev 02    firmware-b43-installer            firmware-b43-installer / linux-firmware               
14e4:4319           firmware-b43-installer            firmware-b43-installer / linux-firmware              
14e4:4320 rev 02    firmware-b43-installer            firmware-b43-installer / linux-firmware              
14e4:4320 rev 03    firmware-b43-installer            firmware-b43-installer / linux-firmware           
14e4:4321           firmware-b43-installer            firmware-b43-installer / linux-firmware  
14e4:4324           firmware-b43-installer            firmware-b43-installer / linux-firmware       
14e4:4325           firmware-b43-installer            firmware-b43-installer / linux-firmware      
14e4:4328           firmware-b43-installer            firmware-b43-installer / linux-firmware
14e4:4328 rev 03    bcmwl-kernel-source               bcmwl-kernel-source      
14e4:4329           bcmwl-kernel-source               bcmwl-kernel-source        
14e4:432a           bcmwl-kernel-source               bcmwl-kernel-source        
14e4:432b           bcmwl-kernel-source               bcmwl-kernel-source        
14e4:432c           bcmwl-kernel-source               bcmwl-kernel-source        
14e4:432d           bcmwl-kernel-source               bcmwl-kernel-source       
14e4:4331           firmware-b43-installer            firmware-b43-installer / linux-firmware          
14e4:4335           firmware-b43-installer            firmware-b43-installer / linux-firmware      
14e4:4350           firmware-b43-installer            firmware-b43-installer / linux-firmware  
14e4:4353           Special Case #1                   UNKNOWN        
14e4:4353 rev 01    Special Case #1                   UNKNOWN                 
14e4:4357           Special Case #1                   UNKNOWN        
14e4:4358           bcmwl-kernel-source               bcmwl-kernel-source
14e4:4359           firmware-b43-installer            firmware-b43-installer / linux-firmware       
14e4:4360           firmware-b43-installer            firmware-b43-installer / linux-firmware    
14e4:4365           firmware-b43-installer            firmware-b43-installer / linux-firmware      
14e4:4365 rev 01    bcmwl-kernel-source               bcmwl-kernel-source      
14e4:43a0           bcmwl-kernel-source               bcmwl-kernel-source
14e4:43ae rev 02    UNKNOWN                           UNKNOWN     
14e4:43b1           bcmwl-kernel-source               bcmwl-kernel-source        
14e4:43b1 rev 03    bcmwl-kernel-source               bcmwl-kernel-source              
14e4:43c3 rev 04    UNKNOWN                           firmware-b43-installer / linux-firmware / Special Case #2                     
14e4:4727           bcmwl-kernel-source               bcmwl-kernel-source        
14e4:4727 rev 01    Special Case #1                   Special Case #1        
14e4:a962           firmware-b43-installer            firmware-b43-installer / linux-firmware      
------------------------------------------------------------------------------------

For All cases, always install the linux-firmware package. This will always be up-to-date with the latest Broadcom drivers along with other binary files that could be needed depending on the driver PCIID.

Special Case #1 - Uses bcma and brcmsmac driver combination. Required firmware is installed by default in the package linux-firmware.

Special Case #2 - For the ASUS PCE-AC88 AC3100 the steps are:

  1. Download This file and after extracting it, put it in /lib/firmware/brcm
    sudo cp brcmfmac4366c-pcie.bin /lib/firmware/brcm/brcmfmac4366c-pcie.bin
  2. Then sudo nano /etc/rc.local add modprobe brcmfmac and save
  3. sudo reboot

In hardware like the Lenovo S10-2, if your wireless card gets stuck trying to connect to an SSID (keeps trying to connect), then the alternative to get it working would be to install the bcmwl-kernel-source package (Remove any other installed packages related to it). Read the Debugging section below for more information regarding this wireless device.

IMPORTANT NOTE - After September 2014, if you follow this answer and still you have problems installing the correct driver, please try the firmware-b43-installer package and the linux-firmware package and notify us via comments. There were some changes and some drivers will only work with this package. Remember to have a clean system before installing it:

sudo apt install firmware-b43-installer

sudo apt install linux-firmware

In some particular cases, after installing the firmware-b43-installer you need to remove the b43 module, enable it again and even proceed to unblock with rfkill:

 sudo modprobe -r b43
 sudo modprobe b43    
 sudo rfkill unblock all  

If you have a Broadcom card that has a different pci.id, please ask a new question. Once solved, the solution will be added to this howto.

4. Installing the Package (offline)

4.1 Installing firmware-b43-installer

To install firmware-b43-installer offline see this answer.

4.2 Installing bcmwl-kernel-source

For cases where you need to install bcmwl-kernel-source but you are offline, here is an excellent answer about it. But basically follow this steps:

  1. Search for the package in the Ubuntu Package Repositories
  2. Make sure you select the correct architecture (32-Bit, 64-Bit, etc..)
  3. Download package and dependency packages related to it on the same folder.
  4. When you have all packages needed (and their dependencies), proceed on going to the folder that has all packages and run sudo dpkg -i *.deb. This will install all packages in that folder. If it gives any errors, read the error and follow the steps it mentions.

To give an example, after going to point 1 mentioned above, If you had the Broadcom 14e4:43a0, you would search for the bcmwl-kernel-source package and after selecting the corresponding Ubuntu version (In my case 16.04 or Xenial) I would land on the following page:

http://packages.ubuntu.com/xenial/bcmwl-kernel-source

On this page I would select the corresponding architecture (32 or 64) but would also need to download the 3 package dependencies mentioned on that page as seen in the following image:

enter image description here

After downloading all packages and dependencies, you can proceed on copying all packages to a single folder and running the dpkg command as mentioned on step 4 above.

NOTE

In some computers, before performing the commands, you will need to deactivate the Secure Boot Options in your BIOS. This applies for cases, for example, where the bcmwl-kernel-source is already installed but the driver does not yet work. You can do a reinstall like so, or disable Secure Boot by going to your BIOS Setup:

sudo apt-get install --reinstall bcmwl-kernel-source

DEBUGGING

The following information is additional material to read about solving various issues related to Wireless Management and conflicts with other Network devices. Know that it some cases you need to have an updated Kernel version, since each new version of the Kernel introduces either new Network drivers, improvements over existing drivers or solves bugs regarding them.

Before reading the points mentioned below, be sure to have all repositories enabled on your Ubuntu system. To check, run on the terminal software-properties-gtk and make sure all options on the Ubuntu Software Tab are enabled.

  • Make sure the Wireless card is not hardware disabled. For example on some laptops you need to press Fn + F2

  • To configure your wireless devices through the terminal I recommend How to connect and disconnect to a network manually in terminal?

  • If your connection drops every so often some users have suggested to set IPv6 to Ignore. Just go to Network Manager (The network icon on the top panel). Click on it then select Edit Settings. Then go to the Wireless connection you are using, select it. Now go to the last Tab in there that mentions IPv6 Settings. In the Method field select Ignore.

  • If your laptop does not detect your wireless card some users have mentioned that using rfkill unblock all will solve the problem. Others simply turned the WiFi switch on their laptops off and then on again (Physical switch available on this laptops). For more information about rfkill please read rf kill unblock all DOES NOT WORK!

  • If you are getting b43-phy0 ERROR: Fatal DMA error / b43-phy0 warning: Forced PIO do the following:

      sudo rmmod b43     
      sudo modprobe b43 pio=0 qos=0  
    

If it works then add it to you RC files so it is executed every time you boot. You can change PIO to 1 if you need to it.

  • If you are having a Required key not available when installing a DKMS module (Like Nvidia, Broadcom or others) you can go to Pilot's Answer Here

  • If your wireless card see/not see the router and gets stuck in an endless "Trying to connect (Try 1/3)" loop the solution might be proper configuration of your router or wireless SSID device.

For all Wireless cards in general, it is very important to also take into consideration the network devices you are using (Routers, Switches, Wireless Channels and Wireless Bands, etc..). With this information you will be able to evaluate better what the source of the problem could be when you arrive at a dead end. An example would be the Lenovo S10-2 which uses the 14e4:4315 rev 01 PCIID. Even after installing the correct driver the user would end up in a "trying to connect" loop. It would see the wireless SSID but when trying to connect to it, it would enter an reconnecting loop.

The solution was that this particular wireless device did not support 40 Mhz channels nor does it support 802.11N. The router in that case was actually broadcasting with a forced 40 Mhz and on WiFi-N only. When the router was set to Auto mode and 20/40 Mhz Channel, the wireless card worked correctly. This is a case scenario that also repeats in other cases, so a proper evaluation of the network equipment would help a lot.

For cases where you get repeated:

ERROR @wl_cfg80211_get_station : Wrong Mac address...

when doing a dmesg and your wireless connection drops often (Several times an hour or a day), the issue here might be that you are inside a wireless signal that is used as a Wireless Bridge (2 Routers sharing the same SSID and connection). This can happen with modern Routers that have the ability to extend the wireless connection by offering the same SSID. your wireless connection might drop because you might be between both routers and the signal strength between both is almost the same.

If your connection drops very often, it means you are almost in the middle of both router devices. To lower or eliminate the dropping rate of your wireless device, try to position yourself where your wireless card can see only one router or at least one of the routers has a higher signal strength than the other one.

There are also some techniques to force the wireless device to only connect to a specific router by setting the BSSID to the MAC Address of the router you wish to connect to. This will force your wireless device to ONLY connect to it.

enter image description here

Secure Boot Issues

On some specific scenarios, installing the drivers, be it in offline mode through various DEB packages or through apt-get with internet access, will not work if Secure Boot is not disabled.

This is because the access needed is denied by Secure Boot so the drivers will look like they are installed correctly when in fact the did not. So for VERY specific cases, you will need to temporarily disable Secure Boot in order for the drivers to work.

Linux Firmware Update

On other cases looking for and installing the latest Linux Firmware would solve the issue. Either solving minor problems that were happening with a working card or making the card work for the first time.

Answered by Luis Alvarado on January 20, 2021

I always recommend removing and reinstalling the broadcom drivers using your terminal

In a terminal type the following command

sudo apt-get purge bcmwl-kernel-source

then

sudo apt-get install bcmwl-kernel-source

This will then rebuild your driver.

Let us know how you get on

You can either restart your pc or if this is a pain type the following commands in the terminal which will 'switch on' your wireless

sudo modprobe -r b43 ssb wl

then

sudo modprobe wl 

Answered by andybleaden on January 20, 2021

I had the same problem and found the solution. Run the following command and reboot the machine. This worked for me.

echo 'options acer_wmi wireless=1' | sudo tee /etc/modprobe.d/acer_wmi.conf

Answered by Eren on January 20, 2021

I have a Dell inspiron 6000 BCM4318 wireless LAN Controller I managed to solve this using synaptic package manager

Here I : First I uninstalled bcmwl-kernel-source Then installed firmware-b43-installer and b43-fwcutter which rebuilt the wifi drivers

I then had to restart

Answered by rohit kelkar on January 20, 2021

"Installer Package for firmware for the b34 driver" installation package worked well for me on a HP Pavilion DV5000

Answered by jdalink on January 20, 2021

This is what worked for me:

  1. Install firmware-b43-installer (+ b43fwcutter automatically added in Synaptic)
  2. Uninstall the bcm-kernel-source package using Synaptic
  3. Remove the original Wireless STA driver from Additional Drivers
  4. Reboot

Step #3 was a key step for me. If you don't remove original Wireless STA driver, you'll run into problems.

Answered by Wahyaohni on January 20, 2021

Dell Inspiron E1505, the following steps (alone), worked for me. I had to undo the extra steps of editing the blacklist file.

  • open the 'Synaptic Package Manager' and search for 'bcm'

  • uninstall the bcmwl-kernel-source package

  • make sure that the firmware-b43-installer and the b43-fwcutter packages are installed

  • reboot

Answered by user17025 on January 20, 2021

I installed Ubuntu 11.04 from scratch on a Dell Latitude 131L with Broadcom bcm4311. The Proprietary driver Broadcom STA was installed by default and Fn+F2 that was the only thing that I had to use to enable Wifi in 10.04; in 10.10 it didn't work. I found this page and tried a few things:

  • removed the Proprietary driver in Hardware drivers under System->Administration->Additional Drivers: sudo apt-get install --reinstall bcmwl-kernel-source and removed the line in blacklist.conf.
  • added the driver in System->Administration->Additional drivers
  • reboot.

This did not work.

  1. After this I added the line in /etc/modprobe.d/blacklist.conf again: replaced by b43 and ssb. Blacklist bcm43xx.
  2. Removed the proprietary driver from system->administration->hardware drivers
  3. After a reboot, the wifi works!

My guess is that only the steps in 1-3 are needed.

Answered by Jacob on January 20, 2021

Thanks for your valuable response.

This problem was solved by the following steps:

  1. I removed the Broadcom STA wireless driver from Additional Drivers.
  2. Type bcm in Ubuntu Software Center,
  3. Install "Installer Package for firmware for the b34 driver" (firmware-b43-installer)

Now it's working wirelessly. You don't need to follow the above steps. Install the "B43 driver" for wireless.

Answered by Silambarasan on January 20, 2021

Install the package bcmwl-kernel-source

Answered by StandardUnity on January 20, 2021

I fixed my problem with the Broadcom bcm4311 drivers.

Steps I took for fixing this problem (I stole this method from nm_geo on ubuntu forums):

(You may need to install synaptic or your favorite package manager.)

  • Uninstall the bcmwl-kernel-source package by issuing the following command on a terminal:

    sudo apt-get remove bcmwl-kernel-source
    
  • Make sure that the firmware-b43-installer and the b43-fwcutter packages are installed (of course you will need internet by others means):

    sudo apt-get install firmware-b43-installer b43-fwcutter
    
  • Type into a terminal:

    cat /etc/modprobe.d/* | egrep 'bcm'
    

    (You may want to copy this) and see if the term 'blacklist bcm43xx' is there.

  • If it is, type cd /etc/modprobe.d/ and then sudo gedit blacklist.conf

    Put a # in front of the line: blacklist bcm43xx

    Then save the file (I was getting error messages in the terminal about not being able to save, but it actually did save properly).

  • Reboot

After I did the above the wireless had to be unblocked by rfkill: How to unblock something listed in rfkill?

Answered by KiLLeRfriend on January 20, 2021

Good news. Based on the info you've provided in the comments, you have a network card supported by the proprietary Broadcom driver.

First, make sure you've ran sudo apt-get update from the terminal. Then go to "Additional Drivers." You can find it by opening the dash (click the upper-right corner) and typing drivers.

Is the Broadcom non-free driver turned on there? If not, try to enable it and restart your system. If that doesn't work, try to reinstall the drivers (just to get online once) manually. Here are instructions for manual installation: http://wireless.kernel.org/en/users/Drivers/b43

You may need to rmmod old or bad drivers. Good luck, but know that it can be done! :)

Answered by MarkovCh1 on January 20, 2021

Install the firmware-b43-installer package. First uninstall the proprietary driver from 'additional drivers".

Then in a terminal, execute:

sudo apt-get install firmware-b43-installer

just after reboot, works beautifully for me.

Answered by mif on January 20, 2021

Make sure your wireless adapter is not disabled. You can check it by running:

rfkill list

To enable wireless adapters, run:

sudo rfkill unblock wifi

Answered by user15594 on January 20, 2021

I found the light wouldn't come on when I switched it to the op position. A utility you can try is rfkill to get it to come on. You have to do this every time you reboot.

sudo rfkill unblock all

Answered by Jim Richards on January 20, 2021

Finally I've solved the problem myself, but I'm not sure how. I was about to compile the driver with the source from broadcom.com and instructions provided in http://www.broadcom.com/docs/linux_sta/README.txt, but at this step of the instructions

On Ubuntu, you will need headers and tools. Try these commands:
# apt-get install build-essential linux-headers-generic
# apt-get build-dep linux

build essential and headers were already installed. I just ran the sudo apt-get build-dep linux command and, Voilá!, after one reboot my connection started running at its normal speed.

I'm not sure of what I've done. I guess it builds kernel or driver dependencies (or both). The BCM driver needed this step and the jockey self-configuration omitted it for some reason.

Anyway, it is fixed.

Answered by Ataraxio Panzetta on January 20, 2021

Add your own answers!

Ask a Question

Get help from others!

© 2024 TransWikia.com. All rights reserved. Sites we Love: PCI Database, UKBizDB, Menu Kuliner, Sharing RPP