Broadcom wireless network adapters are popular in laptops and desktops, offering reliable wireless connectivity. However, on Linux systems, users often face challenges getting these adapters to work due to proprietary drivers and compatibility issues. Installing Broadcom wireless drivers can be a daunting task for beginners, but with the right guidance, it becomes a much smoother experience.
TL;DR (Too Long; Didn’t Read)
Installing Broadcom wireless drivers on Linux can be tricky because of the closed-source nature of some drivers. The installation typically involves identifying the correct chipset, checking available kernel modules, and using package managers like apt or dnf depending on the distribution. It’s recommended to use an Ethernet connection or USB Wi-Fi during installation. Always check compatibility and be ready to blacklist conflicting drivers when needed.
Understanding Broadcom Chipsets and Linux Compatibility
Broadcom makes a wide range of wireless chipsets, and each may require a specific driver. Some of the more common drivers include:
- b43 – Open-source driver for older Broadcom chipsets
- brcmsmac – Open-source driver included in the kernel for newer chipsets
- wl – Proprietary Broadcom driver for newer chipsets, known for better performance
The choice of driver depends on the exact model of the Broadcom card. Therefore, the first step in the installation process is to identify the specific chipset in use.
Step 1: Identify Your Broadcom Wireless Chipset
Begin by opening a terminal and entering the following command:
lspci -nn -d 14e4:
This will return information about your Broadcom device, including the PCI ID. For example:
Network controller [0280]: Broadcom Inc. and subsidiaries BCM43142 [14e4:4365] (rev 01)
The hex code 14e4:4365 uniquely identifies the chipset model, which will be used to determine the correct driver to install.
Step 2: Check Kernel Support
Most modern Linux kernels already have built-in support for some Broadcom chipsets via open-source drivers like b43 or brcmsmac. Use this command to see if any driver is loaded:
sudo lshw -C network
If a driver is already in use but Wi-Fi is not functioning correctly, you may need to switch to a different driver or update firmware files.
Step 3: Installing Drivers Based on Distribution
Ubuntu and Debian-based Distributions
Broadcom drivers can be installed quickly using the package manager. Depending on the chipset, you may need the proprietary wl driver:
sudo apt update
sudo apt install bcmwl-kernel-source
After installation, reboot the system:
sudo reboot
Fedora and Red Hat-based Distributions
Fedora doesn’t include the Broadcom driver in its repositories due to licensing issues. You’ll need to use RPM Fusion:
sudo dnf install https://download1.rpmfusion.org/nonfree/fedora/rpmfusion-nonfree-release-$(rpm -E %fedora).noarch.rpm
sudo dnf install broadcom-wl
Then enable and restart the network service:
sudo systemctl restart NetworkManager
Arch Linux and Manjaro
For Arch users, the AUR (Arch User Repository) contains the necessary packages. Use an AUR helper like yay to install:
yay -S broadcom-wl-dkms
Or manually clone and install from the AUR if you’d prefer full control over the build process.
Step 4: Blacklisting Conflicting Kernel Modules
Sometimes the system loads an incorrect or multiple drivers causing conflicts. It’s important to blacklist unwanted drivers. For example, if using the wl driver, you may want to disable b43:
echo "blacklist b43" | sudo tee -a /etc/modprobe.d/blacklist.conf
echo "blacklist bcma" | sudo tee -a /etc/modprobe.d/blacklist.conf
echo "blacklist ssb" | sudo tee -a /etc/modprobe.d/blacklist.conf
After modifying the blacklist, reload the modules or reboot the system.
Step 5: Load the Correct Driver
To load the wl driver immediately without a reboot, use:
sudo modprobe wl
Check that the interface is now active with:
iwconfig
If the wireless interface shows up (typically as wlan0 or wlp2s0), the installation was successful.
Alternative Tools and GUI Helpers
Many Linux distributions offer GUI tools to handle driver installations. For instance:
- Ubuntu: Use “Software & Updates” → “Additional Drivers” tab
- Manjaro: Use “Hardware Configuration” under system settings
These tools automatically detect compatible drivers and provide an easier experience for users unfamiliar with terminal commands.
Common Troubleshooting Tips
- Always ensure Secure Boot is disabled if using proprietary drivers like wl.
- Make sure the required kernel headers are installed for dkms based driver builds.
- Use Ethernet or USB tethering when troubleshooting Wi-Fi issues.
- If Wi-Fi networks appear but cannot connect, try disabling IPv6 or checking rfkill settings.
Frequently Asked Questions (FAQ)
Q: How do I know which Broadcom driver I need?
A: Use lspci -nn -d 14e4: to get your PCI ID and match it with known chipset-driver mappings. The Broadcom Linux driver page or community forums can help identify the proper driver.
Q: What’s the difference between ‘wl’, ‘b43’, and ‘brcmsmac’ drivers?
A: The wl driver is proprietary and supports newer chipsets like the BCM43xx series. b43 is an open-source driver for older cards and requires firmware, while brcmsmac supports some newer chipsets built directly into the Linux kernel.
Q: Can I install Broadcom drivers without an Internet connection?
A: Yes, but it’s more difficult. You will need to download driver packages and dependencies on another machine and transfer them via USB. Ethernet access is highly recommended during installation.
Q: My Wi-Fi still doesn’t work after driver installation. What should I do?
A: Recheck the driver, load it using sudo modprobe wl, and confirm network interfaces with iwconfig. Also, check for blacklisted modules and conflicts using lsmod.
Q: Is it safe to install drivers from the AUR or third-party sources?
A: Yes, but exercise caution. Review package details and user comments, especially for kernel modules. Trust only well-maintained AUR packages or official repositories when possible.
Conclusion
Installing Broadcom wireless drivers on Linux can be a bit of a challenge, especially for newcomers. However, with a systematic approach—starting from identifying the wireless chipset, choosing the correct driver, and managing kernel modules—the process is straightforward. Staying updated on your distribution’s driver support and using GUI tools where available can reduce the complexity significantly.
The Linux community provides plenty of support through forums and wikis. Whether through commands or friendly graphical interfaces, anyone can successfully enable their Broadcom Wi-Fi hardware on Linux.



