Contenu | Rechercher | Menus

Puces Wi-fi Broadcom® BCM43...

(Cette page traite des matériels avec puces wi-fi Broadcom® sous Ubuntu.)

Broadcom® développe des puces pour les communications filaires et sans fils (wi-fi, bluetooth,…). Présentes dans certains de nos ordinateurs, elles le sont aussi dans d'autres appareils de communication (Certaines box de fournisseurs d'accès Internet par exemple).

Broadcom® fournit un pilote propriétaire nommé "Broadcom 802.11 Linux STA driver" pour GNU/Linux couvrant une bonne partie du matériel utilisant les puces wi-fi Broadcom®. Au cours de l'installation d'Ubuntu, l'installateur détectera votre puce wifi Broadcom® et si nécessaire, installera ce pilote.
Si la détection automatique à l'installation a échoué et avant d'aller plus loin, essayer de l'installer via le gestionnaire de pilotes additionnels mais sauf à savoir ce que vous faites, n'utilisez pas de gestionnaire de paquets pour installer un pilote. L'installation d'un paquet inadaptée pourrait entrer en conflit avec une installation proposée sur cette page.

La suite ne vous concerne donc que si votre puce Broadcom® est mal pris en charge voire pas du tout. Le cas par exemple pour une puce nécessitant un micrologiciel propriétaire protégé par Broadcom® ou encore une puce trop récente ayant besoin d'une version supérieure du pilote "Broadcom 802.11 Linux STA driver" pour être correctement fonctionnelle.

Pré-requis

Identifier correctement sa puce

Avant de commencer, il est nécessaire d'identifier correctement sa puce. Dans un terminal, saisir la commande suivante:

lspci -vvnn | grep 14e4

Le terminal vous répondra quelque chose comme ça :

02:00.0 Network controller [0280]: Broadcom Corporation BCM43142 802.11b/g/n [14e4:4365] (rev 01)

BCM43142 est le nom de la puce, et [14e4:4365] son ID-PCI. Vous aurez besoin de ces deux identifiants pour bien cibler le bon pilote.

Quel pilote utiliser ?

Puce Pilote à installer commentaires
BCM4301 Firmware b43legacy
BCM4306 Firmware b43legacy
BCM4306/2 Firmware b43legacy
BCM4306/3 Firmware b43
BCM4311 (sauf ID-PCI 14e4:4313) Firmware b43 La puce BCM4311 avec l' ID-PCI 14e4:4313 est normalement prise en charge par le pilote "Broadcom 802.11 Linux STA driver".
BCM4312 (avec basse-consommation c'est à dire LP-PHY) Firmware-b43 :!: Precise 12.04, utiliser l'installateur Firmware-b43-lpphy-installer.
BCM4318 Firmware b43
BCM4321 Firmware b43 Prise en charge partielle.
BCM4322 (Uniquement ID-PCI 14e4:432b) Firmware b43 La puce BCM4322 avec d'autres ID-PCI est normalement prise en charge par le pilote "Broadcom 802.11 Linux STA driver".
Autres puces 1-Via le dépôt proposed

2-Via le site officiel
Exemple d'une puce récente nécessitant une version supérieure du pilote "Broadcom 802.11 Linux STA driver" disponible dans les dépôts. Plusieurs solutions sont possibles:
- Si elle est disponible, utiliser la version à jour depuis le dépôt proposed ( :-) Avantage d'un dépôt, pas de recompilation à chaque changement de noyau).
ou:
- Faire la mise à jour de ce pilote via le site officiel.
À noter: Utiliser la toute dernière version d'Ubuntu (LTS ou non) peut résoudre le problème.

Sources:

Firmware b43 et b43legacy

Les pilotes b43/b43legacy nécessitent un micrologiciel (appelé firmware) pour être chargé sur la puce wi-fi pour qu'elle puisse fonctionner. Propriétaire et protégé par Broadcom®, il ne peut pas être disponible depuis le média d'installation ou les dépôts Ubuntu.
Par contre, Ubuntu fournit dans ces dépôts un installateur qui téléchargera le micrologiciel à partir d'un point de distribution légal et l'installera avec le pilote sur votre système. Votre connexion internet wi-fi n'étant pas encore opérationnelle, vous aurez donc besoin d'une autre connexion active pour l'installer (par câble Ethernet, par exemple).
(Si vous n'avez aucune possibilité de vous connecter, voir comment installer le micrologiciel sans internet au chapitre problèmes connus.)

  1. Selon votre puce (voir tableau), installer l'un des paquets suivants:
  2. Redémarrer votre ordinateur.

Via le dépôt Proposed

Pour Trusty 14.04 et Precise 12.04, la version disponible du pilote "Broadcom 802.11 Linux STA driver" ne couvre pas encore les récentes puces wi-fi Broadcom®. La solution consiste à utiliser une version plus récente du pilote à disposition dans les dépôt Proposed (appelés aussi "préversion").

Les dépôts Proposed ne sont pas activés. Les paquets disponibles dans ceux-ci sont normalement proposés à des fins de test, ils peuvent donc être à l'origine d'une instabilité de votre système. Une fois le paquet installé, pensez à désactiver l'accès à ce dépôt au risque d'avoir lors de la prochaine mise à jour, de nombreux paquets en versions supérieures et mal supportées.
Dans le cas où par erreur vous auriez provoqué une mise à jour d'autres paquets présents dans les dépôts "Proposed", voir ici pour revenir à une situation stable.

Pour plus de sécurité nous utiliserons le gestionnaire de paquet Synaptic mais vous pouvez aussi bien utiliser le gestionnaire de mises à jour.

  1. Installer le paquet synaptic et lancer l'application;
  2. Activer les dépôts Proposed: (Menu "Configuration" → "dépôts" → onglet "Mises à jour", cocher la case Mises à jour en préversion (*-proposed)) Logiciels & mises à jour
  3. Recharger;
  4. Rechercher la paquet bcmwl-kernel-source, un clic dessus et dans le menu choisir "Sélectionner pour mise à jour"
  5. Appliquer;
  6. Désactiver le dépôt Proposed: (Menu "Configuration" → "dépôts" → onglet "Mises à jour", cocher la case Mises à jour en préversion (*-proposed))
  7. Recharger et fermer Synaptic;
  8. Redémarrer votre ordinateur pour prendre en compte la nouvelle version du pilote.

Si vous n'obtenez toujours pas satisfaction, vous pouvez utiliser la toute dernière version du pilote via le site officiel.

Via le site officiel

Votre puce wi-fi Broadcom® n'est pas bien prise en charge voire pas du tout par la version du pilote propriétaire "Broadcom 802.11 Linux STA driver" des dépôts Ubuntu (Cas par exemple d'une puce très récente qui n'est pas encore prise en compte.) Une solution consiste à mettre à jour ce pilote à l'aide de celui proposé sur le site officiel. (Source: Fichier d'installation README.txt (en) du site officiel).

La procédure pour mettre à jour le pilote se déroule en 2 temps: La construction et l'installation.
Mais avant de commencer, nous avons besoin des outils de compilation du noyau. Normalement, ces outils sont installés par défaut dans Ubuntu. Si ce n'était pas le cas, installer les paquets build-essential et linux-headers-generic

L'installation de paquets hors des dépôts officiels peut présenter un risque d'instabilité de votre système

  1. À l'aide du gestionnaire de pilotes additionnel, vérifier l'installation du pilote "Broadcom 802.11 Linux STA driver". (Si ce n'est pas le cas, voir ce chapitre).
  2. Récupérer et déposer dans votre dossier personnel l'archive de la toute dernière version du pilote depuis le site officiel, ici)
  3. Extraire l'archive récupéré.

(La suite se fera depuis un terminal en lignes de commandes)

Construction du pilote

  1. Se rendre dans le dossier extrait
    cd hybrid*
  2. Construire le pilote pour être chargé comme un module du noyau Linux (LKM)
    sudo make

    La construction terminée produira dans le dossier un fichier wl.ko utile pour la mise à jour du pilote.

  3. Ce pilote utilise API cfg80211. Il faut pour cela exécuter la commande
    sudo make API=CFG80211

Ne quittez pas le terminal et restez dans le dossier extrait car ce n'est pas fini, nous allons passer à l'installation du pilote.

Installation

Sous Ubuntu, les modules des pilotes se trouvent dans le dossier /lib/modules/<nom_du_noyau>/updates/dkms/ Remplacer <nom_du_noyau> par le nom complet du noyau en cours d'utilisation. Pour connaître le <nom_du_noyau> en cours, saisir la commande

uname -r

  1. Désactiver le pilote en cours d'utilisation
    sudo rmmod wl
  2. Sauvegarder l'ancienne version du fichier wl.ko en le renommant wl.ko.orig (on ne sais jamais !)
    sudo mv /lib/modules/<nom_du_noyau>/updates/dkms/wl.ko /lib/modules/<nom_du_noyau>/updates/dkms/wl.ko.orig
  3. Copier le fichier wl.ko construit précédemment dans le dossier des modules des pilotes
    sudo cp wl.ko /lib/modules/<nom_du_noyau/updates/dkms/wl.ko
  4. Et pour générer le module
    sudo depmod
  5. Pour terminer, activer le pilote
    sudo modprobe wl

Le pilote est maintenant à jour et opérationnel. Le redémarrage n'est pas nécessaire.

:?: Ne supprimez pas le dossier extrait et son contenu, vous en aurez besoin pour recréer de nouveau ce module après chaque mise à jour du noyau Linux car le module du pilote wl.ko ainsi créé ne sera pas chargé dynamiquement. C'est à dire qu'à à chaque mise à jour du noyau Linux, vous reviendrez à l'ancienne version. Recommencer toute la procédure de mise à jour, la construction puis l'installation pour retrouver à nouveau votre wi-fi opérationnel.

Problèmes connus

Pensez à vérifier l'activation du WIFI

Pour réaliser cette vérification, ouvrez un terminal et saisissez les commandes suivantes :

  • Vérifiez que la carte wifi n'est pas désactivée:
    sudo rfkill list
  • Pour activer les cartes wifi:
    sudo rfkill unblock wifi

Installer le micrologiciel sans internet

L'installation de paquets hors des dépôts officiels peut présenter un risque d'instabilité de votre système

Il peut arriver que vous aillez des difficultés à accéder à internet, et donc à installer correctement le micrologiciel Broadcom ®
Dans ce cas:

  1. Téléchargez le pilote ici et sauvegardez-le sur un support externe,
  2. Copiez l'archive dans votre dossier personnel,
  3. Puis dans le dossier /lib/firmware/ avec la commande suivante que vous entrez dans un terminal:
    sudo cp b43-all-fw.tar_.gz /lib/firmware/
  4. Déplacez-vous dans le dossier /lib/firmware/ :
    cd /lib/firmware
  5. Décompressez-y votre archive avec les droits d'administration:
    sudo tar xvf b43-all-fw.tar_.gz
  6. Nettoyer votre dossier:
    sudo rm *.gz

Redémarrez votre ordinateur.

Autre méthode (en)

Le pilote "Broadcom 802.11 Linux STA driver" ne s'est pas installé par défaut

Bien que votre ordinateur possède une puce wi-fi Broadcom®, le pilote "Broadcom 802.11 Linux STA driver" des dépôts officiels n'est pas installé. Vérifier depuis le tableau que votre puce ne nécessite pas l'installation du micrologiciel. Si non, vous pouvez tenter de forcer son l'installation en installant le paquet bcmwl-kernel-source puis essayer la mise à jour via le site officiel.
Peut-être trouverez-vous la solution en consultant les pages des liens du chapitre voir aussi.

Voir aussi



Le contenu de ce wiki est sous licence : CC BY-SA v3.0