LinuxQuestions.org
Latest LQ Deal: Latest LQ Deals
Home Forums Tutorials Articles Register
Go Back   LinuxQuestions.org > Forums > Linux Forums > Linux - Networking > Linux - Wireless Networking
User Name
Password
Linux - Wireless Networking This forum is for the discussion of wireless networking in Linux.

Notices


Reply
  Search this Thread
Old 10-31-2012, 04:51 PM   #1
frankbell
LQ Guru
 
Registered: Jan 2006
Location: Virginia, USA
Distribution: Slackware, Ubuntu MATE, Mageia, and whatever VMs I happen to be playing with
Posts: 19,326
Blog Entries: 28

Rep: Reputation: 6142Reputation: 6142Reputation: 6142Reputation: 6142Reputation: 6142Reputation: 6142Reputation: 6142Reputation: 6142Reputation: 6142Reputation: 6142Reputation: 6142
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:
I installed Linux and my wireless doesn't work. In fact, I open the network manager and no wireless connections appear.
In many cases, the wireless chip in question turns out to be Broadcom. This post attempts to lay out some steps to take to get your Broadcom wireless working.

Important: If your wireless doesn't work, be sure to test the wired connection before doing anything else. This does two things:
  1. If the wired connection does not work, you may be facing a larger problem, and
  2. It ensures that you can connect via ethernet to download the packages you may need to enable your wireless.

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
  • eth0: normally the wired connection.
  • lo: the loopback or local address.
  • wlan0: wireless LAN 0 (Note: some systems will identify this as eth1).


Code:
~$ /sbin/ifconfig
eth0: flags=4099<UP,BROADCAST,MULTICAST>  mtu 1500
        ether 00:23:ae:41:fa:2d  txqueuelen 1000  (Ethernet)
        RX packets 0  bytes 0 (0.0 B)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 0  bytes 0 (0.0 B)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0
        device interrupt 18  

lo: flags=73<UP,LOOPBACK,RUNNING>  mtu 16436
        inet 127.0.0.1  netmask 255.0.0.0
        inet6 ::1  prefixlen 128  scopeid 0x10<host>
        loop  txqueuelen 0  (Local Loopback)
        RX packets 2  bytes 100 (100.0 B)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 2  bytes 100 (100.0 B)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

wlan0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 576
        inet 192.168.1.112  netmask 255.255.255.0 broadcast 255.255.255.255
        ether 00:22:5f:b3:37:cb  txqueuelen 1000  (Ethernet)
        RX packets 611659  bytes 349210856 (333.0 MiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 321076  bytes 28118221 (26.8 MiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

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

(snip a portion of the output)

00:1e.0 PCI bridge: Intel Corporation 82801 Mobile PCI Bridge (rev 93)
00:1f.0 ISA bridge: Intel Corporation ICH9M LPC Interface Controller (rev 03)
00:1f.2 SATA controller: Intel Corporation 82801IBM/IEM (ICH9M/ICH9M-E) 4 port SATA Controller [AHCI mode] (rev 03)
00:1f.3 SMBus: Intel Corporation 82801I (ICH9 Family) SMBus Controller (rev 03)
09:00.0 Ethernet controller: Marvell Technology Group Ltd. 88E8040 PCI-E Fast Ethernet Controller (rev 13)
0c:00.0 Network controller: Broadcom Corporation BCM4312 802.11b/g LP-PHY (rev 01)
If the device does not appear in lspci, you can fall back on the dmesg command to doublecheck it. Be prepared, though, for a lot more output; dmesg dumps the entire list of devices detected by the kernel.

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:
0c:00.0 Network controller [0280]: Broadcom Corporation BCM4312 802.11b/g LP-PHY [14e4:4315] (rev 01)
This indicates that the specific chipset is BCM4312. Note that lspci had also identified the chip as BCM4312.

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:
  • the broadcom-sta driver
  • the b43-fwcutter, and
  • the appropriate firmware--in my case, the b43-firmware, not the b43-legacy-firmware, to get my Broadcom working on that computer.

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.
 
Old 02-04-2013, 09:37 AM   #2
papaken
LQ Newbie
 
Registered: Feb 2013
Posts: 2

Rep: Reputation: Disabled
Problem Solved!

Thanks for your help, frankbell. I'm online!
 
Old 02-05-2013, 06:52 AM   #3
Jim44
Member
 
Registered: Feb 2006
Location: Atlanta, Georgia, USA
Distribution: Mint, Ubuntu, Centos
Posts: 57

Rep: Reputation: 15
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.

Last edited by Jim44; 02-05-2013 at 06:53 AM.
 
Old 02-05-2013, 08:39 PM   #4
frankbell
LQ Guru
 
Registered: Jan 2006
Location: Virginia, USA
Distribution: Slackware, Ubuntu MATE, Mageia, and whatever VMs I happen to be playing with
Posts: 19,326

Original Poster
Blog Entries: 28

Rep: Reputation: 6142Reputation: 6142Reputation: 6142Reputation: 6142Reputation: 6142Reputation: 6142Reputation: 6142Reputation: 6142Reputation: 6142Reputation: 6142Reputation: 6142
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.
 
Old 02-06-2013, 05:22 AM   #5
Jim44
Member
 
Registered: Feb 2006
Location: Atlanta, Georgia, USA
Distribution: Mint, Ubuntu, Centos
Posts: 57

Rep: Reputation: 15
Quote:
Originally Posted by frankbell View Post
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.
My subject mentioned Mint 13. I've pretty much exhausted the google references.None of them that I could find went beyond getting the driver activated. I guess it's assumed that if the driver is working then surely there is a wlan device. I have had problems with Network Manager in the past. I had better luck with wicd, but haven't replaced Network Manage just yet.

Code:
 ifconfig -a
eth0      Link encap:Ethernet  HWaddr 00:c0:9f:cc:df:15  
          inet addr:192.168.2.125  Bcast:192.168.2.255  Mask:255.255.255.0
          inet6 addr: fe80::2c0:9fff:fecc:df15/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:115289 errors:0 dropped:0 overruns:0 frame:0
          TX packets:98673 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:19032778 (19.0 MB)  TX bytes:21135101 (21.1 MB)
          Interrupt:18 Base address:0xa000 

lo        Link encap:Local Loopback  
          inet addr:127.0.0.1  Mask:255.0.0.0
          inet6 addr: ::1/128 Scope:Host
          UP LOOPBACK RUNNING  MTU:16436  Metric:1
          RX packets:157322 errors:0 dropped:0 overruns:0 frame:0
          TX packets:157322 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0 
          RX bytes:25108327 (25.1 MB)  TX bytes:25108327 (25.1 MB)
Thanks

Last edited by Jim44; 02-06-2013 at 05:25 AM. Reason: Expanding
 
Old 02-07-2013, 07:41 PM   #6
frankbell
LQ Guru
 
Registered: Jan 2006
Location: Virginia, USA
Distribution: Slackware, Ubuntu MATE, Mageia, and whatever VMs I happen to be playing with
Posts: 19,326

Original Poster
Blog Entries: 28

Rep: Reputation: 6142Reputation: 6142Reputation: 6142Reputation: 6142Reputation: 6142Reputation: 6142Reputation: 6142Reputation: 6142Reputation: 6142Reputation: 6142Reputation: 6142
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.
 
Old 02-08-2013, 07:11 AM   #7
Jim44
Member
 
Registered: Feb 2006
Location: Atlanta, Georgia, USA
Distribution: Mint, Ubuntu, Centos
Posts: 57

Rep: Reputation: 15
Quote:
Originally Posted by frankbell View Post
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.
Hi, Frank,

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
This file is recognised as:
  filename   :  wl_apsta_mimo.o
  version    :  410.2160
  MD5        :  cb8d70972b885b1f8883b943c0261a3c
Extracting b43/pcm5.fw
Extracting b43/ucode15.fw
Extracting b43/ucode14.fw
Extracting b43/ucode13.fw
...
root@Laptop:/root/broadcom-wl-4.150.10.5/driver# modprobe b43
FATAL: Error inserting b43 (/lib/modules/3.2.0-37-generic/kernel/drivers/net/wireless/b43/b43.ko): Unknown symbol in module, or unknown parameter (see dmesg)
root@Laptop:/root/broadcom-wl-4.150.10.5/driver# dmesg | tail
...
[ 3776.574205] b43: Unknown parameter `blacklist'
Another post (not one of your references) said to try:
Code:
sudo apt-get install bcmwl-kernel-source
sudo modprobe wl
That results in a kernel panic from the install step.
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.
 
Old 02-08-2013, 07:23 AM   #8
TobiSGD
Moderator
 
Registered: Dec 2009
Location: Germany
Distribution: Whatever fits the task best
Posts: 17,148
Blog Entries: 2

Rep: Reputation: 4886Reputation: 4886Reputation: 4886Reputation: 4886Reputation: 4886Reputation: 4886Reputation: 4886Reputation: 4886Reputation: 4886Reputation: 4886Reputation: 4886
Quote:
Originally Posted by Jim44 View Post
[ 3776.574205] b43: Unknown parameter `blacklist'
[/code]
Please post the output of the command
Code:
grep -H b43 /etc/modprobe.d/*
 
Old 02-08-2013, 08:06 AM   #9
Jim44
Member
 
Registered: Feb 2006
Location: Atlanta, Georgia, USA
Distribution: Mint, Ubuntu, Centos
Posts: 57

Rep: Reputation: 15
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
wlan0     IEEE 802.11bg  ESSID:off/any  
          Mode:Managed  Access Point: Not-Associated   Tx-Power=off   
          Retry  long limit:7   RTS thr:off   Fragment thr:off
          Encryption key:off
          Power Management:off
          
root@Laptop:~# iwlist wlan0 scan
wlan0     Interface doesn't support scanning : Network is down
I don't know what to do next.

Jim.
 
Old 02-08-2013, 08:43 AM   #10
Jim44
Member
 
Registered: Feb 2006
Location: Atlanta, Georgia, USA
Distribution: Mint, Ubuntu, Centos
Posts: 57

Rep: Reputation: 15
Quote:
Originally Posted by Jim44 View Post

I don't know what to do next.

Jim.
In order to assure myself the hardware was still working, I booted a Centos live disk. The wireless network came up running. I poked at it so see if there was anything different, but didn't find anything. When I rebooted Mint, the light came on and the wlan0 was present and working.

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.
 
Old 02-08-2013, 07:43 PM   #11
frankbell
LQ Guru
 
Registered: Jan 2006
Location: Virginia, USA
Distribution: Slackware, Ubuntu MATE, Mageia, and whatever VMs I happen to be playing with
Posts: 19,326

Original Poster
Blog Entries: 28

Rep: Reputation: 6142Reputation: 6142Reputation: 6142Reputation: 6142Reputation: 6142Reputation: 6142Reputation: 6142Reputation: 6142Reputation: 6142Reputation: 6142Reputation: 6142
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.
 
Old 02-10-2013, 07:40 PM   #12
PreferenceTaken
LQ Newbie
 
Registered: Feb 2013
Posts: 3

Rep: Reputation: Disabled
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
 
Old 02-10-2013, 08:28 PM   #13
frankbell
LQ Guru
 
Registered: Jan 2006
Location: Virginia, USA
Distribution: Slackware, Ubuntu MATE, Mageia, and whatever VMs I happen to be playing with
Posts: 19,326

Original Poster
Blog Entries: 28

Rep: Reputation: 6142Reputation: 6142Reputation: 6142Reputation: 6142Reputation: 6142Reputation: 6142Reputation: 6142Reputation: 6142Reputation: 6142Reputation: 6142Reputation: 6142
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.
 
Old 01-07-2014, 02:08 AM   #14
rob.rice
Senior Member
 
Registered: Apr 2004
Distribution: slack what ever
Posts: 1,076

Rep: Reputation: 205Reputation: 205Reputation: 205
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
 
Old 01-07-2014, 04:05 AM   #15
aus9
LQ 5k Club
 
Registered: Oct 2003
Location: Western Australia
Distribution: Icewm
Posts: 5,842

Rep: Reputation: Disabled
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
 
  


Reply

Tags
b43, b43-legacy, bcm, broadcom



Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is Off
HTML code is Off



Similar Threads
Thread Thread Starter Forum Replies Last Post
Broadcom Wireless not working Suse 11.3 fjd SUSE / openSUSE 3 01-06-2011 08:12 PM
Native Broadcom wireless driver and Devicescape stack HowTo Hangdog42 Linux - Wireless Networking 12 01-17-2007 06:55 AM
how-to: Get Broadcom Wireless working on your lappy ;) ollywompus Linux - Laptop and Netbook 1 01-27-2006 12:51 PM

LinuxQuestions.org > Forums > Linux Forums > Linux - Networking > Linux - Wireless Networking

All times are GMT -5. The time now is 12:31 AM.

Main Menu
Advertisement
My LQ
Write for LQ
LinuxQuestions.org is looking for people interested in writing Editorials, Articles, Reviews, and more. If you'd like to contribute content, let us know.
Main Menu
Syndicate
RSS1  Latest Threads
RSS1  LQ News
Twitter: @linuxquestions
Open Source Consulting | Domain Registration