Drivers para Soporte Nativo de Tarjetas Broadcom en GNU Linux

Hoy en día, el soporte nativo para tarjetas Broadcom (chipsets BCM43xx) en Linux se gestiona principalmente a través de dos vías: el controlador de código abierto incluido en el kernel (b43/brcm80211) o el controlador propietario oficial (broadcom-sta / wl). La instalación manual de tarballs o el uso de NdisWrapper han quedado obsoletos en favor de los gestores de paquetes modernos como APT o DNF.

Históricamente, configurar una tarjeta Wi-Fi Broadcom en Linux era un dolor de cabeza que implicaba extraer firmware de drivers de Windows o compilar código fuente manualmente. Afortunadamente, en 2025, la mayoría de las distribuciones facilitan este proceso. A continuación, te explicamos cómo identificar tu tarjeta y activar el driver correcto.

Paso 1: Identificar tu Chipset Exacto

Antes de instalar nada, es crucial saber qué modelo tienes, ya que instalar el driver equivocado puede dejarte sin red. Abre una terminal y ejecuta:

lspci -nn -d 14e4:

Este comando listará los dispositivos PCI de Broadcom (ID de fabricante 14e4). Busca la línea que diga «Network controller» o «Wireless LAN». Anota el modelo (ej. BCM4360, BCM43142) y el ID del dispositivo (ej. [14e4:43a0]).

Paso 2: Elegir el Driver Correcto

Dependiendo de tu modelo, necesitarás una de estas dos soluciones:

Opción A: Driver Propietario (Broadcom STA / wl)

Es necesario para chipsets modernos y de alto rendimiento que no tienen soporte completo en el kernel libre. Soporta modelos como BCM4311, BCM4312, BCM4313, BCM4321, BCM4322, BCM4352, BCM4360, entre otros.

Instalación en Debian/Ubuntu/Mint:

El paquete se llama bcmwl-kernel-source. Asegúrate de tener conexión (por cable Ethernet o tethering USB con el móvil) y ejecuta:

sudo apt update
sudo apt install bcmwl-kernel-source

Este paquete utiliza DKMS, lo que garantiza que si actualizas el núcleo de Linux (Kernel), el driver se recompilará automáticamente para seguir funcionando.

Opción B: Driver Open Source (b43 / b43legacy)

Para tarjetas más antiguas o específicas donde el driver propietario falla. Este driver ya viene en el kernel, pero requiere un firmware externo que no se incluye por defecto por licencias.

Instalación del firmware:

sudo apt update
sudo apt install firmware-b43-installer

Solución de Problemas Comunes

Conflicto de Módulos (Blacklist)

A veces, el sistema intenta cargar el driver libre y el privativo al mismo tiempo, causando errores. Si instalaste el driver wl (propietario) pero no funciona, asegúrate de que los drivers libres estén en la lista negra:

# Crear archivo de blacklist
echo "blacklist b43" | sudo tee -a /etc/modprobe.d/blacklist-broadcom.conf
echo "blacklist ssb" | sudo tee -a /etc/modprobe.d/blacklist-broadcom.conf
echo "blacklist bcma" | sudo tee -a /etc/modprobe.d/blacklist-broadcom.conf

Luego reinicia el sistema.

Secure Boot (UEFI)

Si utilizas el driver propietario (bcmwl) y tienes activado el Secure Boot en la BIOS, es posible que el sistema impida cargar el driver porque no está firmado digitalmente. Tienes dos opciones:

  1. Desactivar Secure Boot en la BIOS.
  2. Firmar manualmente el módulo del kernel (proceso avanzado).

Conclusión

Obtener soporte nativo de tarjetas Broadcom en GNU Linux ya no requiere «magia negra» ni herramientas como NdisWrapper. Al utilizar los repositorios oficiales, garantizas estabilidad y actualizaciones de seguridad.

Si por alguna razón necesitas los archivos originales o documentación técnica avanzada (aunque no recomendado para usuarios normales), Broadcom mantiene un archivo histórico: