Restoring Wireless: Installing Broadcom Wi-Fi Drivers on MacBook Pro (Ubuntu 24.04)
Installing Ubuntu 24.04 on a MacBook Pro often results in a "No Wi-Fi Adapter Found" error. This occurs because the Broadcom chips used by Apple (like the BCM4360 or BCM4322) require proprietary firmware or kernel modules that are not included by default due to licensing restrictions. While Ubuntu usually offers these via the "Additional Drivers" tool, the lack of an initial internet connection creates a "catch-22" scenario. Furthermore, newer Linux kernels (6.8+) in Ubuntu 24.04 have introduced compilation challenges for older bcmwl-kernel-source packages, requiring specific terminal workarounds to get the hardware recognized.
Table of Content
- Purpose of Driver Manual Installation
- Common MacBook Models Affected
- Step-by-Step: Terminal Installation Guide
- Best Results: Kernel 6.8+ Compatibility
- FAQ
- Disclaimer
Purpose
The purpose of this guide is to provide a reliable method for identifying your specific Broadcom chipset and installing the correct driver package (bcmwl-kernel-source or firmware-b43-installer). Since MacBooks lack Ethernet ports, we focus on using USB Tethering or offline package transfers to bridge the gap and enable the DKMS (Dynamic Kernel Module Support) system, which ensures the driver persists even after Ubuntu kernel updates.
Use Case
You should follow this tutorial if:
- MacBook Pro/Air (2011–2017): Most models from this era use the 14e4:43a0 (BCM4360) or similar chips.
- Fresh Install: You just installed Ubuntu 24.04 and the Wi-Fi icon is missing from the top bar.
- Software Update Failure: An update to a 6.x kernel broke your existing Wi-Fi connection.
- Secure Boot Issues: You receive a "Required key not available" error when trying to load the
wlmodule.
Step-by-Step
1. Identify Your Chipset
Open the Terminal and run: lspci -nn -d 14e4:.
- Note the 4-digit PCI ID (e.g., 43a0 or 4360). This determines which driver you need.
2. Establish Temporary Internet
You cannot download drivers without a connection.
- Connect an Android phone or iPhone via USB.
- Enable USB Tethering in the phone's settings. Ubuntu will recognize this as "Wired Connection."
3. Install the Broadcom STA Driver
For most 2012-2015 MacBooks, the wl driver is the standard.
- Run:
sudo apt update - Run:
sudo apt install bcmwl-kernel-source
4. Handle the "b43" Conflict
If the above fails, you may need the open-source firmware instead (common for older BCM4311/4312 chips).
- Run:
sudo apt purge bcmwl-kernel-source - Run:
sudo apt install firmware-b43-installer - Reboot the system.
5. Load the Module Manually
If the driver is installed but the light isn't on:
- Run:
sudo modprobe wl - If you get a "Forbidden" error, you must Disable Secure Boot in your Mac's firmware or sign the module.
Best Results
| Chip ID | Recommended Package | Stability on Ubuntu 24.04 |
|---|---|---|
| 14e4:43a0 | bcmwl-kernel-source | High (Best for BCM4360) |
| 14e4:4322 | firmware-b43-installer | Moderate (Requires b43-fwcutter) |
| 14e4:4331 | bcmwl-kernel-source | High |
FAQ
Why does my Wi-Fi stop working after a kernel update?
Broadcom drivers use DKMS. If the kernel headers for the new update aren't installed, the driver cannot "rebuild" itself. Always ensure you have linux-headers-generic installed.
What if I don't have a phone for tethering?
You must download the .deb packages for bcmwl-kernel-source and its dependencies (like dkms) on another computer, move them via USB, and install using sudo dpkg -i.
Does this work on the T2 Chip MacBooks (2018+)?
No. 2018 and later MacBooks require a custom kernel (often found at the T2Linux project) because the Wi-Fi is tied to the Apple T2 security chip, which standard Ubuntu kernels cannot access.
Disclaimer
This tutorial involves modifying kernel modules and proprietary drivers. These drivers are not maintained by Canonical and may occasionally cause "kernel panics" if incompatible with specific sub-versions of the Linux kernel. This guide is based on verified fixes for Ubuntu 24.04.1 LTS as of March 2026.
Tags: MacBookPro, Ubuntu2404, Broadcom, LinuxDrivers
