HOWTO Get Broadcom Wireless Working with Linux
This post originated from a thread in the LQ Suggestions & Feedback forum. Suggestions and corrections are welcome (especially corrections).
One of the most common questions from users here at LQ goes something like this: Quote:
Important: If your wireless doesn't work, be sure to test the wired connection before doing anything else. This does two things:
If the problem is confined to the wireless, there is a good chance that the drivers were not installed. This often happens when the wireless card is manufactured by Broadcom, which has been slower than many other manufacturers in porting drivers to Linux. (Note that there is some Broadcom support in the kernel. I have an older Acer Travelmate 1000 with a Broadcom chip that worked just fine without any special action on my part under both Fedora and Slackware.) The steps below will help: Checking your network configuration: Open a terminal and run the command ifconfig -a. This will report your network configuration for all your network interfaces. This is the output of ifconfig -a on my Dell 1545n laptop running Slackware --Current. The connections are
Code:
~$ /sbin/ifconfig If you have a wireless card and you don't see wlan0 (or eth1), you system may not be seeing the wireless chipset. Determine the wireless chipset: Run the lspci command in a terminal to display the wireless chipset. Note that the brand name of the card is often irrelevant. For example, Dell Computers may sell cards with the Dell brand name, but the chip inside the card has likely been manufactured by a third-party vendor, frequently Broadcom. This is the output of lspci on my Dell 1545n laptop. The item in bold identifies the wireless chipset. Note that the lspci command shows PCI devices. The command to show USB devices is lsusb. Code:
# lspci Identifying which Broadcom driver you need: The two drivers are the B43 and the B43-Legacy drivers. This information on identifying which one you need is taken from the LinuxWireless page on Broadcom drivers and Linux. That page is excellent background on Broadcom and Linux. What follows does not apply the Broadcom USB devices, only to Broadcom PCI devices. Here are a few highlights from that page: The lspci -vnn -d 14e4 command will tell you whether you need the b43 or b43 legacy drivers. I have highlighted the significant part; it can be interpreted by cross-referencing it at a table at the LinuxWireless link above. Code:
# lspci -vnn -d 14e4: Distro-Related Resources: Some distros may install Broadcom drivers automatically. For others, you may need to enable additional repos beyond the default list in your package manager. The Broadcom drivers are not open source, and distros have different policies regarding "binary blobs." Here is some information for various popular distros: Ubuntu: When I used Ubuntu (up through v. 11.10), I needed to enable the "Proprietary Drivers for Devices" repo to obtain the Broadcom drivers; I installed v. 12.04 in VirtualBox, and it appears that those repos are now enabled by default. I was not able to test them, though. Also, in Ubuntu System Settings-->Hardware, there is an "Additional Drivers" item. In the past, I have used that to obtain Broadcom drivers for my Dell Mini 9 netbook. Here is the Ubuntu's HOWTO on Broadcom drivers. Mint: The situation with Mint is similar to that with Ubuntu. In my Linux Mint 13, the Broadcom drivers are present in the repos and the "Additional Drivers" item in Control Center-->Hardware. LMDE (Linux Mint Debian Edition may be different, because Debian is agressively free as regards proprietary software. This article from the Mint forums should help. My Mint computer does not have Broadcom, so I have not tested this. Debian; Debian is aggressively free as regards non-open source software, but does offer help on it's wiki on enabling Broadcom. Fedora: I don't have much direct experience with Fedora. I did use if for while on the Acer Travelmate and the Broadcom wireless worked out-of-the-box, but, as I said, that's an older chip and the support is in the kernel. There is a nice HOWTO on the Fedora forums. SalixOS: SalixOS has a very nice page on how to get Broadcom working; it worked flawlessly for me the first time on my Dell Mini 9. Arch: Here are two links from the Arch Wiki that will help you with Arch: a general article on wireless and Arch and one specifically about Broadcom and Arch. OpenSUSE: The Unofficial Guide to OpenSUSE has directions for enabling Broadcom. Slackware: Packages for enabling Broadcom are available at Slackbuilds dot org.
I needed three of these four elements and a lot of help from LQ to get the wireless going on my Dell 1545n:
I also recommend using wicd as your network manager on Slackware; it's in the Slackware Extras. There's also an article on Broadcom on the new Slackwiki currently being developed. I hope this helps. If you still need to post about your Broadcom chip, including the output of some of the diagnostic commands listed above will help others help you. Please make sure to enclose it in "code" tags, which become available when you click "Go Advanced" down there at the bottom of the Quick Reply window. |
Problem Solved!
Thanks for your help, frankbell. I'm online!
|
Not working in Mint 13.
This is a compaq presario. The driver appears to be installed, and the Additional Drivers window says "installed and working".
See: lspci -vnn -d 14e4: 05:02.0 Network controller [0280]: Broadcom Corporation BCM4318 [AirForce One 54g] 802.11g Wireless LAN Controller [14e4:4318] (rev 02) Subsystem: Hewlett-Packard Company Broadcom 802.11b/g WLAN [103c:1355] Flags: bus master, fast devsel, latency 64, IRQ 20 Memory at c0204000 (32-bit, non-prefetchable) [size=8K] Kernel driver in use: b43-pci-bridge Kernel modules: wl, ssb But ifconfig -a shows no wlan0. I know the little button on the panel is in the right position, since I booted xp and it was working OK. When this is working the little light on the button is light. It is not now. Where do I go from here? This is a 64 bit install. Thanks, Jim. I did notice that the list of supported cards in the description in the Additional Drivers window didn't include the 4318. |
What distro? It can make a difference in the how-to. Also, some distros report "eth1" instead of "wlan0." Please post the output of ifconfig -a.
You might try Googling "broadcom 4318 [distro name]"--I searched for "broadcom 4318 linux" and found articles about Mint, Fedora, and Ubuntu on the first page. |
Quote:
Code:
ifconfig -a |
Sorry for missing the reference in your subject line.
It looks as if the system is not recognizing your Broadcom. Wicd might be worth a try; I prefer it to gnome-network-manager myself. On one of my computers, simply installing wicd was enough to wake up the Broadcom chip, but I can't remember what chipset it was using and can't access it right now. I found a couple of threads that might help: http://linux-bsd-sharing.blogspot.co...m-bcm4318.html http://forums.linuxmint.com/viewtopic.php?f=194&t=70670 Please let us know what happens; I sure we can sort this out. |
Quote:
Here's the results of the suggestions from your first link: Code:
root@Laptop:/root/broadcom-wl-4.150.10.5/driver# b43-fwcutter -w /lib/firmware/ wl_apsta_mimo.o Code:
sudo apt-get install bcmwl-kernel-source Also after rebooting dpkg is broken. Any attempts to use apt-get or dpkg result in an error message suggesting you do dpkg --configure -a. When you do that, the previous install attempts to complete and panics again. Bit of a catch-22. I think I'll have to boot a live disk and see if I can clean things up with a chroot. |
Quote:
Code:
grep -H b43 /etc/modprobe.d/* |
I went back and removed firmware-b43-installer and reinstalled it. Modprobe b43 tossed an unknown option. Dmesg said it was an unknown "blacklist". The only blacklist I had was in grub line, 'cause it wouldn't boot without it. I figured let's take it off and see what happens.
Now I have a wlan0, but I can't do anything with it. Wicd says no wireless network found. I put wlan0 as the wireless device in the preferences config menu. Code:
root@Laptop:~# iwconfig wlan0 Jim. |
Quote:
The only think I can think of is that the boot into Centos enabled something on the chip. I have a blue light, a wireless connection and am happy. Thanks, Jim. |
Usually, Linux doesn't need a reboot for this sort of stuff, but maybe that's what was needed.
It sounds like when, when I worked support, we would tell the caller, "It was an FM problem," which loosely translates as "freaking magic." (Of course, our callers were techs who knew what "FM" meant, so it was sort of an inside joke with them.) Anyway, glad it's fixed. |
Thanks much frank. Awesome thread I had some issues early on with the b43/legacy distinction but you put it right out front. Nice and easy
Cheers |
Thanks. I proposed the thread hoping that someone could benefit from my struggles with Broadcom.
I certainly don't know all the answers--I'm basically an advanced hobbyist--but if I can help someone farther down the road, I'm happy. |
Don't make the same stupid misstake I did
AFAIK all laptops have an external hardware wifi switch even though windbloz ignores this switch with linux it matters whether it's on or off so you may have it setup right but it still will not work until the switch is turned on so check the switch |
frankbell
nice tutorial some suggestions if you care to ponder 1) You may wish to explain that there is the driver...maybe from a kernel and firmware.....typically from a packages called firmware-something (true for debian and a quick search for broadcom ---mainly non-free software shows) broadcom-sta-common firmware-bnx2 firmware-bnx2x firmware-brcm80211 firmware-linux-nonfree bluez-firmware firmware-b43-installer firmware-b43legacy-installer firmware-crystalhd 2) altho I have diff hw, I like the gui wicd-gtk which AFAIK is independent of most desktop environments/window managers ----and altho it looks like a wireless only control panel -------it also does ethernet cheers rob.rice +1 and don't forget with laptops to look at enabling wifi and or bluetooth in the bios |
All times are GMT -5. The time now is 12:38 PM. |