Linux - NewbieThis Linux forum is for members that are new to Linux.
Just starting out and have a question?
If it is not in the man pages or the how-to's this is the place!
Notices
Welcome to LinuxQuestions.org, a friendly and active Linux Community.
You are currently viewing LQ as a guest. By joining our community you will have the ability to post topics, receive our newsletter, use the advanced search, subscribe to threads and access many other special features. Registration is quick, simple and absolutely free. Join our community today!
Note that registered members see fewer ads, and ContentLink is completely disabled once you log in.
If you have any problems with the registration process or your account login, please contact us. If you need to reset your password, click here.
Having a problem logging in? Please visit this page to clear all LQ-related cookies.
Get a virtual cloud desktop with the Linux distro that you want in less than five minutes with Shells! With over 10 pre-installed distros to choose from, the worry-free installation life is here! Whether you are a digital nomad or just looking for flexibility, Shells can put your Linux machine on the device that you want to use.
Exclusive for LQ members, get up to 45% off per month. Click here for more info.
If this uses the Broadcom bcm4306 driver, then there is an bcm43xx native driver. Install the bcm43xx-fwcutter package. This may depend of the distro, but this may include an install_bcm43xx_firmware script which if you have a wired (NIC) connection will download the firmware for you. Otherwise, read the README file for instructions on cutting the firmware from a windows driver. The README constains a list of bcm* drivers supported and their md5sums.
Run the bcm43xx-fwcutter program and then copy the extracted files to /lib/firmware:
Code:
ls /lib/firmware/
bcm43xx_initval01.fw bcm43xx_initval05.fw bcm43xx_initval09.fw bcm43xx_microcode4.fw
bcm43xx_initval02.fw bcm43xx_initval06.fw bcm43xx_initval10.fw bcm43xx_microcode5.fw
bcm43xx_initval03.fw bcm43xx_initval07.fw bcm43xx_microcode11.fw bcm43xx_pcm4.fw
bcm43xx_initval04.fw bcm43xx_initval08.fw bcm43xx_microcode2.fw bcm43xx_pcm5.fw
hpmedia:~ # bcm43xx-fwcutter --help
bcm43xx-fwcutter version FWCUTTER_VERSION_
Usage: bcm43xx-fwcutter [OPTION] [driver.sys]
-l|--list List supported driver versions
-i|--identify Only identify the driver file (don't extract)
-w|--target-dir DIR Extract and write firmware to DIR
-a|--alt-iv Extract alternative initvals (only 3.10.x.x)
-p|--postfix ".FOO" Postfix for firmware filenames (.FOO.fw)
-v|--version Print bcm43xx-fwcutter version
-h|--help Print this help
Once you have done this, you can modprobe the bcm43xx kernel module, and then procede configuring encryption and the networking setup.
You hadn't indicated which distro you have (please put that info in your LQ Profile!) or what steps you had done so far.
What was the command you used to install the driver?
Code:
ndiswrapper -i driver.inf
Is what you should be using from the directory the drivers are in.
Code:
rmmod ndiswrapper
modprobe ndiswrapper
will unload and load the drivers once you get the driver installed and
Code:
ifconfig
should display all active network interfaces. If you have installed it correctly you will see wlan0 which is the wireless interface. If it's a windows driver you will have to use wine to extract the drivers from the .exe file. And in my case I had to use a driver 1 version less than the one that came with my laptop.
FC7 dumped bcm43xx in favor of b43. Apparently it isn't a different driver, but it may require different firmware and using the name bcm43xx doesn't work. The website for the driver has some instructions on how to get it working.
FYI, uname is the literal name of a command you can use to get the version of your current running kernel. I didn't mean your username. I have FC6 on a Pentium III laptop, and didn't know that the name of the kernel module changed lately.
bcm43xx is garbage, have you tried using the driver that came with your laptop?
For starters, the driver that came with the laptop is almost certainly a Windows driver. Doesn't work unless you install ndiswrapper and even then it can be flaky and doesn't support all the features that bcm43xx does.
Second, the bcm43xx project has done some amazing things considering that they have had to reverse engineer the entire thing and had absolutely no help at all from Broadcom. However, since the project is open source, feel free to make any and all changes you think would make it not "garbage".
I notice that the O.P. is using Fedora 7. The 2.6.22 and 2.6.23 kernels used by Fedora 7 and 8 are notcompatible with older ndiswrapper releases. And the b43 driver (which is automatically loaded by the Fedora kernel when a Broadcom BCM43.. device is found) works quite well, so ndiswrapper is not the way to go on a Fedora 7 or Fedora 8 system.
I just installed Fedora 8 on my laptop and all I need to do to get the wireless working was to run b43-fwcutter on the bcml5.sys file on my XP partition and sudo mv b43/ /lib/firmware to get the output directory to the "expected" location. (I may have needed to do a chown -R root:root b43 first, but I think I was running as "root" when I ran the b43-fwcutter command, so I probably didn't need to do that.) After a reboot, a simple "left click" on the network icon in the system tray let select my access point and enter my (WPA2) passphrase, and I was up and running.
For what it's worth, my built-in wireless is a BCM4311.
P.S.: I did an install of F8 instead of an upgrade because the upgrade could not resolve the dependencies in my installed F7 software. But that's really off topic. (So this is just a minor venting.)
Last edited by PTrenholme; 11-17-2007 at 08:59 PM.
Reason: Wrong card number. Sorry.
For starters, the driver that came with the laptop is almost certainly a Windows driver. Doesn't work unless you install ndiswrapper and even then it can be flaky and doesn't support all the features that bcm43xx does.
Second, the bcm43xx project has done some amazing things considering that they have had to reverse engineer the entire thing and had absolutely no help at all from Broadcom. However, since the project is open source, feel free to make any and all changes you think would make it not "garbage".
I have read many places that bcm43xx has a lot of issues. If it's garbage it's garbage, regardless of how wonderful the effort is. And the driver that came with the laptop is certainly a windows driver. I spent 1.5 days getting my broadcom card to work with bcm43xx and in the end I ended up trying about 5 different broadcom windows drivers with ndiswrapper and found one that worked. The one that came with my laptop (bcmwl6) didn't work - bcmwl5 did work.
Don't take it personal - sometimes bcm43xx will work but it didn't work with my card and it apparently doesn't work with the OP's card. I've found that using ndiswrapper is far more successful than bcm43xx.
Quote:
Broadcom BCM94311MCG
The Broadcom drivers included as modules in the kernel (bcm43xx) are complete garbage, so let's remove those first.
he problem is also present in Ubuntu latest RC (kernel 2.6.22-14), but in that case I was able to blacklist bcm43xx and then ndiswrapper worked perfectly!
The simplest difference (probably not the actual root of the problem, but a starting point anyway) seems to be - with bcm43xx:
Bit Rate=5.5 Mb/s Tx-Power=14 dBm
RTS thrff Fragment thrff
with ndiswrapper:
Bit Rate=54 Mb/s Tx-Power:25 dBm
RTS thr:2347 B Fragment thr:2346 B
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know.