10 years ago
This HOW TO describes enabling support for WiFi devices based on Broadcom 4311/4312/4313/4321/4322/43224/43225 chipsets - using Broadcom's hybrid device driver - on Debian systems. This tutorial was prepared shortly after the release of LMDE 201009 and draws heavily on THIS Debian Wiki page.
Support of these chipsets is possible using a driver (wl) made available by the vendor, which includes a binary-only component targeted for the x86 or x86-64 architecture. All supported devices are listed at the end of this page. This is a "non-free" driver.
The BCM4313, BCM43224 and BCM43225 chipsets are alternatively supported by the brcm80211 driver.
And as of 9 Sept 2010 Broadcom announced the ....
initial release of a fully-open Linux driver for it's latest generation of 11n chipsets. The driver, while still a work in progress... supports multiple current chips (BCM4313, BCM43224, BCM43225) as well as providing a framework for supporting additional chips in the future
NOTE: (2011/2/23) The following has been observed specifically for the BCM4313 chipset (Device ID 14E4:4727) but may apply to other chipsets which were updated from providing 802.11b/g to 802.11b/g/n support. The b/g version of BCM 4313 has been supported since version 22.214.171.124 of the driver, currently available in the Debian testing non-free repositories. Support for the b/g/n revision of BCM 4313 requires use of driver version 126.96.36.199 or newer, which is not currently available in the repositories. You will need to use installation method 3, see below.
NOTE 2: (2011/3/6) Version 188.8.131.52-1 of Broadcom-STA is now available in the LMDE repositories. Installation method 1 should work for newer wifi cards.
Debian Testing Officially supported DFSG-compatible Software with Non-free Dependencies Non-DFSG-compatible Software should be present and selected, select it if not currently enabled.
If the "non-free" repository was not present, add it to to /etc/apt/sources.list Open the file with
gksudo gedit /etc/apt/sources.list
and add these lines at the end of the file
# Debian Testing (currently Wheezy)
deb http://ftp.us.debian.org/debian testing main contrib non-free
save and close.
Updated to reflect testing repositories instead of Squeeze repositories.
2. The remainder of the installation process will be performed as the root user in a terminal. Open a terminal, type su, press
3. Update the list of available packages. Install the module-assistant and wireless-tools packages:
apt-get install module-assistant wireless-tools
4. Build and install a broadcom-sta-modules-* package for your system, using Module-Assistant:
m-a a-i broadcom-sta
The "a-i" stands for "auto-install," meaning "download the module source, compile it for the current kernel and install it".
5. Blacklist the brcm80211 module, to prevent it conflicting for support of BCM4313, BCM43224 and BCM43225 devices:
echo blacklist brcm80211 >> /etc/modprobe.d/broadcom-sta-common.conf
6. Rebuild your initial ramdisk, to blacklist modules defined at /etc/modprobe.d/broadcom-sta-common.conf within initramfs:
update-initramfs -u -k $(uname -r)
7. Unload conflicting modules:
modprobe -r b44 b43 b43legacy ssb brcm80211
8. Load the wl module:
9. Verify your device has an available interface:
10. Configure your wireless interface as appropriate.
11. Exit the root terminal:
A script to automate the above process was written and posted HERE in the Linux Mint Forum by Gramps50. The script is at the end of the post.
To install from source see the Broadcom Linux STA page. See the README.txt file first.
See bugs reported on Debian's broadcom-sta.
The following list is based on the alias fields of modinfo wl as of driver version 184.108.40.206:
PCI: 14E4:4311 Broadcom Corporation BCM4311 802.11b/g WLAN
PCI: 14E4:4312 Broadcom Corporation BCM4312 802.11a/b/g
PCI: 14E4:4313 Broadcom Corporation BCM4311 802.11a
PCI: 14E4:4315 Broadcom Corporation BCM4312 802.11b/g LP-PHY
PCI: 14E4:4328 Broadcom Corporation BCM4321 802.11a/b/g/n
PCI: 14E4:4329 Broadcom Corporation BCM4321 802.11b/g/n
PCI: 14E4:432A Broadcom Corporation BCM4321
PCI: 14E4:432B Broadcom Corporation BCM4322 802.11a/b/g/n Wireless LAN Controller
PCI: 14E4:432C Broadcom Corporation BCM4322 802.11b/g/n
PCI: 14E4:432D Broadcom Corporation BCM4322 802.11a/b/g/n
PCI: 14E4:4353 Broadcom Corporation BCM43224 802.11a/b/g/n
PCI: 14E4:4357 Broadcom Corporation BCM43225 802.11b/g/n
PCI: 14E4:4727 Broadcom Corporation BCM4313 802.11b/g LP-PHY supported since driver ver 220.127.116.11,
PCI: 14E4:4727 Broadcom Corporation BCM4313 802.11b/g/n Wireless LAN Controller now supported as of 1/11/2011, use driver version 18.104.22.168 or newer
To find the Device ID's of Broadcom cards on your machine do:
lspci -n | grep 14e4
THIS page explains how to identify a PCI device.
1. If the wl driver loads but doesn't seem to do anything: the ssb module may be the cause. Sometimes blacklisting ssb may not be enough to prevent it from loading and it loads anyway. (This is mostly seen on Ubuntu/Debian systems). From HERE
Check to see if ssb, wl or b43 is loaded:
lsmod | grep "b43\|ssb\|wl"
If any of these are installed, remove them:
sudo rmmod b4
sudo rmmod ssb
sudo rmmod wl
Back up the current boot ramfs and generate a new one.
sudo cp /boot/initrd.img-`uname -r` /path/to/somewheresafe
sudo update-initramfs -u
2. The driver fails to load at boot.
Perform this command in a terminal
sudo echo wl >> /etc/modules
If that alone does not allow the driver to load when the system is booted, create a file
and add the line
install wl /bin/true
The driver should load upon reboot.
Note that "If the file /etc/modprobe.conf exists, all contents of /etc/modprobe.d/ are ignored by default."
Debian wiki on broadcom-sta installation and enabling the wl driver
Installation Script by Gramps50 to automate installing the wl driver, from the Linux Mint Forums
How To use a WiFI interface from the Debian Wiki
Broadcom STA driver - download page with README.txt
Bugs in source package broadcom-sta Debian Bug Reports
How To Identify PCI like Devices from the Debian Wiki
This worked for me (after rebooting)!
Adapter: Broadcom Corporation BCM4313 802.11bgn Wireless Network Adapter (rev 01)
OS: Linux Mint 17 Cinnamon 64-bit, 3.13.0-24-generic
Netbook: Acer Aspire One 722-0473
to me,it is not working on my hp compaq 6510b laptop in your that method.
my os is the latest LMDE 201403 x64.
my wl is broadcom 4311 chipset.
Simple go to Menu/Software Manager/Edit(On top bar)/Software Sources/Additional Drivers/ and check Using Broadcom...... and press Apply no need to use Terminal :)
But you need other internet connection active!
I have a laptop with a BCM43228 chipset.
I found a driver here:
I found also this:
Can anybody give me a tip to make it work please ??
I wanted to verify this works for Debian Squeeze with LXDE. Thank you so much for the perfect step-by-step tutorial.
THank you very much! finally wireless get fuction.
laptop dell inspiron 14, peppermint os,26.32-22-generic, broadcom 14e4:4727
METHOD 1 IS THE BEST.......
There's similar tutorial that didn't work for me (on DELL Inspiron 1545 laptop with broadcom 4312 wireless), but this one worked like a charm! Thanks!
Worked like a charm. Thank you for taking the time to write this up.
Thank you from a Linux Newbie.
I was on Linuxmint 9 - everything worked but looking here in the forums came across LMDE and wanted to try it out.
LMDE seems to be better, quicker and my lappie seems to run cooler compared to Linux mint 9.
Got my wireless working but must have done something wrong as I have lost my wired connection - maybe I used the wrong method.
Will now try to get wired working again. If I can, I think I will stick to LMDE.
Should have looked in "known Problems"
Any one know if this has been fixed in the last 2 months? (Noticed that this tutorial was last updated 2 months ago).
Great instructions, cheers!
Just a note: my laptop kept disconnecting (broadcom 4313) even having turned off power management. However having changing the router wireless channel from "auto" to (I chose) 08, there have been no more disconnections.
Thank you! very great article, really eye-friendly
Thank you so much!
This is exactly the info I was looking for, and the how-to is thorough and easy to follow.
So nice to go wireless again. :D
Worked as documented.
However, for those using "sudo":
echo blacklist brcm80211 >> /etc/modprobe.d/broadcom-sta-common.conf
"blacklist brcm80211" can be added by editing in nano.
This is an excellent tutorial dawgdoc.