NotebookForums.com › Forums › General Notebook Discussions › Linux & Other OS's › Linux Broadcomm Wireless Drivers Suck -- Read Further
New Posts  All Forums:Forum Nav:

Linux Broadcomm Wireless Drivers Suck -- Read Further

post #1 of 5
Thread Starter 
Ok, so I see a lot of 'my wireless isn't working' questions on the forums, and a good portion have been of late related to the fairly newly released linux broadcomm drivers. These drivers _do_not_work_ out of the box, yet they still load up automatically; unfortunately many of the major distributions are also starting to include them by default, which only makes the problem worse.

So what to do? Lets say you load up one of the Ubuntu's, or Vector, or Red Hat (3 distros that include the Broadcomm drivers). The distribution will autodetect your broadcomm wireless, load the driver up, and everything will look like it's working (when you run iwconfig it will show Broadcomm). The problem is that it's actually not working, and you will never connect to a wireless AP.

So whats the solution?

The first step is to stop the Broadcomm driver from being auto-loaded at start-up. This is accomplished by using whats called a 'blacklist' file. The blacklist file is basically just a list of modules to be, well, 'blacklisted' from loading on startup. In most distros, this can be found at /etc/modprobe.d/blacklist. Editing this file then is very easy (as root):

Code:
vim /etc/modprobe.d/blacklist

If you'd like to substitute your favorite text editor (gedit, kedit, kate) for vim, feel free. Scroll down to the very end of the file, and add the following:

Code:
blacklist bcm43xx

Now, your card may have a different module then the 'bcm43xx' that I have listed, but most broadcomm cards seem to use that module, so if you don't know then try it first. Once you've done this, reboot your system.

Once you've rebooted, you need to use 'ndiswrapper' to load up the Windows (yes, the windows drivers) for your wireless card. Ndiswrapper essentially does two things simultaneously: first, it fools the wireless card into thinking is in a windows environment; secondly, it fools linux into thinking it's using native linux drivers.

So you will need two files for this: the *.inf and the *.sys files. So, for example, my card uses 'bcmwl5.inf' and 'bcmwl5.sys'. These can usually be found through some creative googling (if you need those exact two, send me a PM and I'll email them to you). Place these two files in a folder (for example, mine are in /home/olly/drivers).

At the CL prompt (as root):

Code:
ndiswrapper -i /home/olly/drivers/bcmwl5.inf

This loads up the windows driver for your card. Note that the one you load is always the *.inf file. Next:

Code:
modprobe ndiswrapper

This loads up the module 'ndiswrapper' (including the newly loaded windows drivers). Finally:

Code:
ndiswrapper -m

This writes 'ndiswrapper' to the /etc/modprobe.d/modules file, which tells linux to load ndiswrapper at start.

Voila, you now have a functioning wireless card.

-olly
post #2 of 5
Well while it may not be useable for most people saying it sucks isn't exactly accurate

Plus you could always teach people how to use them instead of using ndiswrapper as well. I should tackle that one sometime on my powerbook for the heck of it

Seablade
post #3 of 5

driver and ndiswrapper

if memory serves correctly, just having the bcmwl5.inf will not allways solve your problem.

1- if its an oem card you may need to grab the driver from manufacture ( the OEM driver ).
2- there is a bcmwl5a.inf driver as well , may be more but I ran into that before I got an engenius
3- some laptops with wifi power control buttons - can be a pain to say the least ( and when you get them working some will not light up on power/ but blink during transmit

these are just problems that I have ran into using ndiswrapper -

Under the native driver - I have had no problems. (I will have to say the early drivers did suck pretty bad) The only reason I don't use the card is the lack of power. But on the go I still drop back to it.
post #4 of 5
Thread Starter 
Quote:
Originally Posted by seablade
Well while it may not be useable for most people saying it sucks isn't exactly accurate

Plus you could always teach people how to use them instead of using ndiswrapper as well. I should tackle that one sometime on my powerbook for the heck of it

Seablade

How about "mostly suck" At any rate, they are flaky even when you do get them working, but if you want to do a write up on getting them working, by all means!


Quote:
Originally Posted by ideacipher
if memory serves correctly, just having the bcmwl5.inf will not allways solve your problem.

1- if its an oem card you may need to grab the driver from manufacture ( the OEM driver ).
2- there is a bcmwl5a.inf driver as well , may be more but I ran into that before I got an engenius
3- some laptops with wifi power control buttons - can be a pain to say the least ( and when you get them working some will not light up on power/ but blink during transmit

these are just problems that I have ran into using ndiswrapper -

Under the native driver - I have had no problems. (I will have to say the early drivers did suck pretty bad) The only reason I don't use the card is the lack of power. But on the go I still drop back to it.

There are of course different broadcom drivers, which I mention in my post , I used bcmwl5.inf as an example because that's what my particular card uses.

-olly
post #5 of 5
I just installed Ubuntu on my HP dv2110 last week and I am using the pre-installed Broadcom driver for my wireless. As you will find, however, the firmware is NOT included and must be installed separately using b43-fwcutter (directions here: http://linuxwireless.org/en/users/Drivers/b43#firmware ). Using this method my wifi has been working flawlessly with no losses of connection as of yet.
New Posts  All Forums:Forum Nav:
  Return Home
  Back to Forum: Linux & Other OS's
NotebookForums.com › Forums › General Notebook Discussions › Linux & Other OS's › Linux Broadcomm Wireless Drivers Suck -- Read Further