#format wiki #language it <
> <> <> = Introduzione = La seguente guida ha lo scopo di rendere funzionante la scheda wireless '''PCI Broadcom BCM 43xx''', sia attraverso il gestore driver e, in caso di problemi, attraverso metodi alternativi. = Installazione tramite gestore driver = I driver proprietari possono essere attivati dal [[Hardware/AbilitareDriverProprietari|gestore driver]]. È necessario avere già a disposizione una connessione Internet già funzionante. Se l'attivazione dei driver attraverso gestore automatico dovesse risultare problematica, nei seguenti paragrafi viene mostrato come installare manualmente i driver '''proprietari''' (STA) e i driver '''Open-source''' (b43, ecc). = Identificazione della scheda = Le schede prodotte da Broadcom sono supportate da driver che variano a secondo del modello, è quindi necessario identificare correttamente la scheda presente nel proprio computer digitando in un [[AmministrazioneSistema/Terminale|terminale]] il seguente comando: {{{ lspci -vvnn | grep 14e4 }}} Avendo applicato il filtro `14e4` al comando `lspci` la ricerca verrà limitata alle sole schede '''PCI Broadcom'''. Un tipico output del terminale potrebbe essere ad esempio questo: {{{ 03:00.0 Network controller [0280]: Broadcom Corporation BCM4322 802.11a/b/g/n Wireless LAN Controller [14e4:432b] (rev 01) }}} I dati che interessano sono: * Card/Model - '''BCM4322''' * PCI-ID - [14e4:'''432b]''' Per verificare quali driver sono in uso e verificare il buon esito delle varie procedure d'installazione si può fare ricorso a questo comando: {{{ lspci -vvnn | grep -A 9 Network }}} Che restituisce informazioni dettagliate della scheda di rete wifi e mostra i driver utilizzati dal sistema per gestirla. <> = Schede supportate = I driver sono in costante sviluppo e un dato id di chip può essere supportato da più driver: * '''wl''' (proprietari) per chip con id: BCM4311, BCM4312, BCM4313, BCM43142, BCM4321, BCM4322, BCM43224, BCM43225, BCM43227 e BCM43228. Installare il driver come spiegato al paragrafo Installazione driver STA. * '''b43''' (open-source) per chip con id: BCM4306 (rev 03), BCM4309, BCM4311, BCM4312, BCM4318, BCM4322, BCM4331, BCM43224 e BCM43225. * '''b43legacy''' (open-source) per chip con id :BCM4301, BCM4306 (rev 02), e BCM4309. Installare il driver come spiegato al paragrafo Installazione driver b43. * '''brcm80211''' (open-source) introdotto nel kernel Linux 2.6.37 questo driver, composto da "brcmsmac" (gestione software della scheda) e "brcmfmac" (gestione hardware della scheda). * '''brcmsmac''' (open-source) per chip con id : BCM4313, BCM43224 e BCM43225. * '''brcmfmac''' (open-source) per chip con id : BCM4329, BCM4330, BCM4334, BCM43235, BCM43236 e BCM43238. * '''rndis_wlan''' (open-source) per chip con id : BCM4320, driver introdotto in Linux 2.6.25. Per conoscere quale scheda e versione della stessa è supportata dai relativi driver, consultare [[http://linuxwireless.sipsolutions.net/en/users/Drivers/b43/|questa pagina]]. {{{#!wiki important Le scheda non supportate dai driver dovranno necessariamente far affidamento su [[Hardware/DispositiviSenzaFili/Ndiswrapper|Ndiswrapper]] per usare i driver closed source di Windows. }}} = Installazione driver proprietari STA con connessione Internet = == Ubuntu 18.04, Ubuntu 16.04 e Ubuntu 14.04 == Aprire un [[AmministrazioneSistema/Terminale|terminale]] ed installare il pacchetto ''bcmwl-kernel-source'': {{{ sudo apt-get update sudo apt-get --reinstall install bcmwl-kernel-source }}} Se viene visualizzato il messaggio: '''La compilazione del modulo per il kernel attualmente in esecuzione è stato ignorata poiché il sorgente del kernel per il kernel non sembra essere installato''' questo significa che manca l'appropriato pacchetto del linux-header. Per testare il driver ed evitare un riavvio del computer, digitare il comando: {{{ sudo modprobe -r b43 ssb wl brcmfmac brcmsmac bcma sudo modprobe wl}}} Aspettare alcuni secondi affinché '''Networkmanager''' scansioni le reti wifi disponibili prima di tentare una connessione. Il pacchetto ''bcmwl-kernel-source'' dovrebbe mettere in blacklist automaticamente i driver open source in modo che il driver '''STA''' sia l'unico in uso. = Installazione driver proprietari STA senza connessione Internet = 0. [[#supportate|Verificare]] che la propria scheda sia supportata dai driver STA. 0. Da un computer con accesso a Internet recarsi alla pagina http://packages.ubuntu.com dove potranno essere scaricati i pacchetti: * ''dkms'' * ''patch'' * ''fakeroot'' * ''libfakeroot'' (presente dalla 14.04 in poi) * ''bcmwl-kernel-source'' 0. Riempire i campi di ricerca nel seguente modo: * '''Keyword''': nome del pacchetto. * '''Distribution''': nel menù a tendina selezionare la propria versione di Ubuntu. 0. Fare quindi clic sul tasto '''Search'''. 0. Durante la ricerca fare attenzione a selezionare il pacchetto appropriato per le architetture '''i386''' o '''amd64'''. 0. Una volta effettuato il download [[AmministrazioneSistema/InstallareProgrammi/PacchettiDebian|installare]] i singoli pacchetti. = Installare i driver open source b43/b43legacy con connessione Internet = I kernel per Ubuntu 8.04.x ​​(Hardy Heron) e versioni successive forniscono i driver B43, tuttavia a causa delle restrizioni di diritto d'autore, non è presente il firmware proprietario, che è necessario per far funzionare la scheda. Le seguenti istruzioni spiegano come estrarre il firmware desiderato. == Ubuntu 18.04 e Ubuntu 14.04 == 0. Aprire un [[AmministrazioneSistema/Terminale|terminale]] ed aggiornare la lista dei pacchetti digitando il comando:{{{ sudo apt-get update }}} 0. Installare il pacchetto appropriato in base alla versione dei driver. * Per '''b43''' installare il pacchetto [[apt://firmware-b43-installer|firmware-b43-installer]] * Per '''b43legacy''' installare il pacchetto [[apt://firmware-b43legacy-installer | firmware-b43legacy-installer]] 0. In '''Ubuntu 14.04''' assicurarsi di aver rimosso il pacchetto ''bcmwl-kernel-source'' digitando:{{{ sudo apt-get purge bcmwl-kernel-source }}} 0. Riavviare il computer. = Installare i driver open source b43/b43legacy senza connessione Internet = [[#supportate|Verificare]] che la propria scheda sia supportata dal driver b43. In mancanza di una connessione ad Internet 0. Reperire il supporto di installazione di '''Ubuntu''', per fare ciò è possibile intraprendere più strade: * Direttamente dal proprio sistema operativo Ubuntu, andando alla cartella `pool/main/b/b43-fwcutter`, copiare il pacchetto ''b43-fwcutter'' nella cartella '''Home''' del proprio sistema ed installarlo digitando il seguente comando: {{{ sudo dpkg -i b43-fwcutter*}}} * Sfruttare la connessione tramite altro sistema e scaricare [[apt://b43-fwcutter|b43-fwcutter]] che si installerà automaticamente * Da un altro computer con connessione Internet e scaricare il pacchetto per la propria distribuzione e architettura hardware o tramite la [[https://packages.ubuntu.com/search?keywords=b43-fwcutter&searchon=names | seguente pagina]], copiare il pacchetto ''b43-fwcutter'' nella cartella '''Home''' del proprio sistema ed installarlo digitando il seguente comando: {{{ sudo dpkg -i b43-fwcutter*}}} 0. Da un computer con accesso ad Internet scaricare il file del firmware richiesto: * [[http://downloads.openwrt.org/sources/wl_apsta-3.130.20.0.o | b43legacy]] * [[http://www.lwfinger.com/b43-firmware/broadcom-wl-6.30.163.46.tar.bz2| b43 per Ubuntu 18.04]] * [[http://www.lwfinger.com/b43-firmware/broadcom-wl-5.100.138.tar.bz2| b43 per Ubuntu 14.04]] * [[https://wireless.wiki.kernel.org/en/users/Drivers/b43/developers | Varie versioni]] dei diversi firmware, fonte adatta solo per utenti esperti 0. Copiare i file scaricati nella propria '''Home''' e aprire un terminale e digitare i seguenti comandi per estrarre ed installare il firmware: * Per i '''b43legacy''' {{{ sudo b43-fwcutter -w /lib/firmware wl_apsta-3.130.20.0.o}}} * '''Ubuntu 18.04''' con driver '''b43''' e '''Ubuntu 14.04''' con driver '''b43''' 6.30.163.46 {{{ tar xfvj broadcom-wl-6.30.163.46.tar.bz2 sudo b43-fwcutter -w /lib/firmware broadcom-wl-6.30.163.46.wl_apsta.o}}} * '''Ubuntu 14.04''' con driver '''b43''' {{{ tar xfvj broadcom-wl-5.100.138.tar.bz2 sudo b43-fwcutter -w /lib/firmware broadcom-wl-5.100.138/linux/wl_apsta.o}}} 0. Assicurarsi di aver rimosso il pacchetto ''bcmwl-kernel-source'' digitando:{{{ sudo apt-get purge bcmwl-kernel-source }}} 0. Riavviare il computer. = Schede non supportate (utilizzare driver Windows) = Se la propria scheda non è supportata dai driver '''STA''' o dai driver open source del kernel, è necessario l'utilizzo di Ndiswrapper che consente di utilizzare i driver closed source di Windows per attivare la scheda. = MacBook = {{{#!wiki note Questo procedimento è stato testato su '''!MacBook Pro early 2014''' con scheda '''Broadcom BCM4360'''. }}} == Installazione con connessione Internet == Se si ha una connessione ad Internet (ethernet), digitare i seguenti comandi in un [[AmministrazioneSistema/Terminale|terminale]]:{{{ sudo apt-get update}}} {{{ sudo apt-get install bcmwl-kernel-source }}} == Installazione senza connessione Internet == 0. Da un computer con accesso a Internet recarsi alla pagina http://packages.ubuntu.com dove potranno essere scaricati i seguenti pacchetti: * ''libfakeroot'' * ''fakeroot'' * ''dkms'' * ''bcmwl-kernel-source'' 0. Alla voce '''Search package directories''', riempire i campi di ricerca nel seguente modo per scaricare uno alla volta i pacchetti precedentemente indicati: * '''Keyword''': nome del pacchetto. * '''Distribution''': nel menù a tendina selezionare la propria versione di Ubuntu. * '''Section''': any. 0. Fare quindi clic sul tasto '''Search'''. 0. Durante la ricerca fare attenzione a selezionare il pacchetto appropriato per le architetture '''i386''' o '''amd64'''. 0. [[AmministrazioneSistema/InstallareProgrammi/PacchettiDebian|Installare]] i pacchetti appena scaricati nell'ordine precedentemente elencato. 0. Caricare il modulo '''wl''', digitando in un [[AmministrazioneSistema/Terminale|terminale]] il seguente comando:{{{ sudo modprobe wl }}} 0. Aprire con i [[AmministrazioneSistema/Sudo|privilegi di amministrazione]] e con un [[Ufficio/EditorDiTesto|editor di testo]] il file `/etc/modules`:{{{ sudo gedit /etc/modules }}} ed incollare in fondo al file (dopo un invio) il seguente testo:{{{ wl }}} 0. Salvare e chiudere. Adesso il dispositivo wifi dovrebbe funzionare correttamente. = Problemi noti = == Broadcom BCM4313 non funziona a 5GHz == Le schede con id 14e4:4727 (Dell Vostro 3555) con chip Broadcom BCM4313 non funzionano alla frequenza di 5 GHz ma a 2,4 GHz non presentano problemi ([[https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1010931 | bug 1010931]]). La causa principale è che la scheda è a banda singola, quindi non potrebbe mai trasmettere a 5GHz. Per risolvere il problema su '''Ubuntu 14.04''' 0. Usare il driver '''brcmsmac''': {{{ sudo apt-get purge bcmwl-kernel-source sudo apt-get install linux-firmware-nonfree }}} 0. Inserire nella blacklist i driver '''b43''' e '''wl''': {{{ echo "blacklist b43" | sudo tee -a /etc/modprobe.d/blacklist.conf echo "blacklist wl" | sudo tee -a /etc/modprobe.d/blacklist.conf}}} 0. Rimuovere i moduli dei driver sopra citati ed inserire quello di '''brcmsmac''': {{{ sudo modprobe -r b43 wl brcmsmac sudo modprobe brcmsmac echo "brcmsmac" | sudo tee -a /etc/modules}}} 0. Riavviare il computer. == Secure boot == Sui sistemi con [[https://msdn.microsoft.com/it-it/library/hh824987.aspx|secure boot]] attivo i driver proprietari non funzionano. Per risolvere il problema seguire i seguenti passaggi: 0. [[AmministrazioneSistema/Uefi#Disattivazione_Secure_Boot|Disabilitare]] il secure boot. 0. [[AmministrazioneSistema/InstallareProgrammi|Rimuovere]], se presente, il pacchetto [[apt://bcmwl-kernel-source|bcmwl-kernel-source]]. 0. [[AmministrazioneSistema/InstallareProgrammi|Installare]] il pacchetto [[apt://bcmwl-kernel-source|bcmwl-kernel-source]]. = Ulteriori informazioni = * [[https://help.ubuntu.com/community/WifiDocs/Driver/bcm43xx|Documento originale]] * [[http://www.broadcom.com/support/802.11/linux_sta.php|Pagina dei driver STA per linux]] * [[http://wireless.kernel.org/en/users/Drivers/b43|I driver kernel b43 di wireless.kernel.org]] ---- CategoryHardware