个人工具

UbuntuHelp:WifiDocs/Driver/bcm43xx/Gutsy

来自Ubuntu中文

跳转至: 导航, 搜索

Broadcom Wireless in Ubuntu 7.10 (Gutsy)

The Linux kernel version 2.6.22 included in Ubuntu 7.10 continues to use the bcm43xx driver for Broadcom wireless cards. There have been many improvements in the driver over the last few months resulting in a boost to the default data rate from 11Mbps to 24Mbps. There have also been improvements in range and support has been increased to a greater number of cards. /!\ The firmware code is still not distributed with Ubuntu and must be downloaded and extracted before bcm43xx will work. If you're an Acer laptop user, try the following instructions first. If you install everything correctly and still you're not able to connect to any wifi network, you should try to install acer-acpi package. It often helps and you won't be made to install driver using ndiswrapper. Find out more here: https://launchpad.net/acerlaptop-wifi/

Desktop Installation

Ubuntu 7.10 now has bcm43xx firmware installation integrated into the Restricted Driver Manager. This makes the process of obtaining and installing the firmware far easier than in previous releases.

Internet Enabled Installation

This procedure is the simplest, but requires an Internet connection. 1) Open System -> Administration -> Restricted Driver Manager and you will see that under the Firmware drop down arrow it says Firmware for Broadcom 43xx chipset family and under Status it says Not in Use. 2) Tick the box under Enabled to enable the firmware. 3) Click Enable Firmware to continue and the bcm43xx-fwcutter package will be installed. If you receive a time out error message then you may need to switch to a different repository mirror or try the off-line install further down this page. 4) Select Download from the Internet to proceed using the pre-filled URI or select a local file if you prefer. 5) Click Ok to extract the firmware. 6) If the Status has changed to In use, then you are successful.

Off-line Installation

This procedure outlines the process of downloading the neccessary installation files using a separate Internet enabled PC as an intermediary. If you have a working Windows partition, then you can use that to get the file you need and reboot into Ubuntu to finish the installation. 1) Download the bcm43xx-fwcutter package from the Universe repository.

2) Download the firmware from [1] or see Firmware Sources below. 3) Transfer these files on to the Ubuntu machine. 4) Double-click the bcm43xx-fwcutter-*.deb package to install with the package installer. You may receive a warning that there is the same version available from the channel, but as it's not currently accessible you will have to proceed with this file. 5) During installation it will ask you if you would like it to fetch and extract the firmware. This step will fail without an Internet connection so just click Forward and then close the the package installer. 6) Open System -> Administration -> Restricted Driver Manager and you will see that under the Firmware drop down arrow it says Firmware for Broadcom 43xx chipset family and under Status it says Not in Use. 6) Tick the box under Enabled to enable the firmware. 7) Click Enable Firmware to continue. 8) Select Use a local file and browse to the wl_apsta-3.130.20.0.o firmware file and click Open. 9) Click Ok to extract the firmware. 10) If the status has changed to In use, then you are successful.

Firmware Sources

If you are unable to download the firmware directly then there are few alternative methods of obtaining the firmware. This usually involves finding a Windows driver file.

  • linuxwireless.org provides a link to the most reliable firmware source as it is the one recommended by the bcm43xx developers. This means that it has had the most testing time and is actively maintained.
  • The .sys file from a Windows Driver CD that came with the card or on the pre-installed Windows partition. This driver firmware will likely already be at least a few months old and might not work with the firmware extraction tool.
  • The card manufacturer's website may provide a driver file to download. Once again, this might not work with the firmware extraction tool.
  • A list of driver files supported by the extraction tool can be found in the /use/share/doc/bcm43xx-fwcutter/README.gz/README file or online at http://svn.berlios.de/svnroot/repos/bcm43xx/tags/fwcutter/006/README

/!\ Only v3 firmware can be used in Ubuntu 7.10.

Server Install

If you are installing a Broadcom wireless card on a server without a desktop environment then the Restricted Drivers Manager will not be available to you. In this case you will have to download and install the firmware extractor and driver using the CLI. 1) Enable the Universe repository and refresh the dependencies. 2) Download the bcm43xx-fwcutter utility.

sudo aptitude install bcm43xx-fwcutter

3) Download and extract the firmware using a script.

sudo /usr/share/bcm43xx-fwcutter/install_bcm43xx_firmware.sh

or 3) Download the firmware.

wget http://downloads.openwrt.org/sources/wl_apsta-3.130.20.0.o /tmp/wl_apsta-3.130.20.0.o

4) Extract the firmware to a kernel independant location.

sudo bcm43xx-fwcutter -w /lib/firmware/ /tmp/wl_apsta-3.130.20.0.o 

Troubleshooting

By default the wireless interfaces will be managed by Network Manager. You may want to disable it for a short while during troubleshooting. Reload the driver module using the following commands:

sudo modprobe -r bcm43xx
sudo modprobe bcm43xx

Then use dmesg to check if the driver loaded cleanly. Find the name of the interface using this command. It should be of the form ethX

iwconfig

Scan for networks to check if your card is working.

sudo iwlist ethX scan

Note: For some reason I could not scan for networks, the result of iwlist would be "no networks found", but when I entered the access point information manually it worked fine.

Connecting to your network

Network Manager is in control of all interfaces by default in Ubuntu 7.10 and it is available via the nm-applet in the on the upper right side of your screen, next to sound applet, etc... You can manage your connections directly by left clicking (to choose a network) or right (to see info, enable or disable networking) on it. If it doesn't work, you can use the following : Go to System -> Administration -> Network (if using gnome). click on your wireless card, click Properties, untick "enable roaming" and enter your wireless network details. Everything should now work. It should also work every time you turn on your computer without further configuration. /!\ Remember that you can use network-admin or network-manager, but not both! You have to set your card to roaming mode in network-admin to use network-manager, if you have already configured it in network-admin.

Manual Configuration of WPA

The bcm43xx driver has full support of the Linux Wireless Extensions and therefore should use wpa_supplicant via the wext driver interface. All known cards are capable of using WPA-PSK and WPA-Enterprise. See the WPA pages for more information about configuring Wi-fi Protected Access manually.

Further Notes

  • You may also use ndiswrapper to get your wifi card working. This was the only way of getting support for these devices before Linux kernel 2.6.17-rc2. This will not work on PowerPC.
  • The bcm43xx driver is now considered to be deprecated and it is very likely that this will be the last release of Ubuntu to use it. The new b43 and b43legacy drivers are scheduled to enter the main kernel in 2.6.24 and will replace bcm43xx entirely.
  • Forum Support for this Wiki - nickm wrote a howto on this forum for bcm43xx. If you have questions or need additional help please post there.

(Note: Here's a no-fluff|howTo for using a bcm43xx--a bcm4311, to be specific--in Feisty. Also includes WPA configuration.)

Resources