Wiki Ubuntu-it

Indice
Partecipa
FAQ
Wiki Blog
------------------
Ubuntu-it.org
Forum
Chiedi
Chat
Cerca
Planet
  • Pagina non alterabile
  • Informazioni
  • Allegati

Versione 19 del 24/09/2008 19.05.24

Nascondi questo messaggio

BR Indice(depth=1 align=right) VersioniSupportate(hardy) VersioniSupportate(gutsy) VersioniSupportate(feisty)

Introduzione

Questa pagina spiega come far funzionare le schede wireless Broadcom.

Dal kernel 2.6.17 c'è il supporto nativo per alcuni chipset Broadcom. Se avete un chipset di questo tipo molto probabilmente viene già riconosciuto dal sistema, ma sono necessari alcuni passaggi per renderlo funzionante.

Dal kernel 2.6.24, presente in Ubuntu 8.04 «Hardy Heron», sono invece presenti dei nuovi driver opensource che sostituiscono i precedenti, con il nome di b43 e b43legacy.

Al momento ci sono due modi per usare il chipset broadcom sotto linux, utilizzando i driver opensource oppure Ndiswrapper. Tendenzialmente, sarebbe preferibile utilizzare i driver opensource e ricorrere a Ndiswrapper solo in caso di gravi malfunzionamenti.

Per le schede con chip BCM4322 bisogna seguire un'apposita procedura descritta di seguito

Installazione su Ubuntu 8.04 «Hardy Hearon»

b43 e b43legacy

Anchor(b43) A partire dalla release di Ubuntu 8.04 «Hardy Heron» sono presenti nel kernel i nuovi driver per schede wireless Broadcom, denominati b43 e b43legacy. Tali driver sostituiscono completamente i bcm43xx, che diventano quindi obsoleti e sconsigliati.

Rimozione moduli incompatibili

I nuovi driver sono già attivi di default. Affinchè funzionino correttamente, è necessario verificare che non siano caricati nel sistema eventuali vecchie versioni dei bcm43xx, né Ndsiwrapper. Per controllare, aprire un terminale e digitare:

lsmod | grep bcm

Se nel risultato del comando precedente sono presenti righe contenenti nomi di moduli come bcm4318, bcm4311 o simili o necessario rimuoverli dal sistema. Per far ciò, aprire il file /etc/modules e controllare che non sia presente all'interno il nome "bcm43xx" . In caso affermativo, rimuoverlo e salvare il file.

La stessa procedura va fatta per controllare l'eventuale presenza di Ndiswrapper che andrà rimosso dal sistema attraverso il [:AmministrazioneSistema/Synaptic:Gestore di pacchetti] o con [:AmministrazioneSistema/Apt:Apt]:

sudo apt-get remove ndiswrapper

Riavviare il sistema per rendere effettive le modifiche.

Installazione firmware

Per abilitare il firmware è normalmente sufficiente abilitarlo dal gestore dei Driver hardware: Cliccare sul menu Sistema -> Amministrazione -> Driver Hardware. Nella lista dovrebbe essere presente una voce "Broadcom B43 Wireless". Spuntare la casella per iniziare lo scaricamento e l'installazione dei pacchetti necessari. Dopo un riavvio di sistema, la periferica dovrebbe essere correttamente funzionante.

Nel caso in cui la procedura sopra riportata non funzioni correttamente, o nel gestore dei Driver Hardware non sia presente la voce relativa, è possibile utilizzare una procedura manuale per installare il firmware corretto.

Per installare il firmware manualmente è necessario scaricare ed installare il pacchetto b43-fwcutter presente nei [:Repository:repository]. Successivamente digitare in un terminale i seguenti comandi:

wget http://downloads.openwrt.org/sources/broadcom-wl-4.80.53.0.tar.bz2
tar xjf broadcom-wl-4.80.53.0.tar.bz2
cd broadcom-wl-4.80.53.0/kmod
sudo b43-fwcutter -w /lib/firmware wl_apsta.o

Alcune schede più vecchie (4301, 4303, 4306, 4309) necessitano del driver b43legacy al posto del b43. In questo caso è necessario scaricare un altro firmware:

wget http://downloads.openwrt.org/sources/wl_apsta-3.130.20.0.o
sudo b43-fwcutter -w /lib/firmware wl_apsta-3.130.20.0.o

Immagine(Icone/Piccole/note.png,,center)

Se non si è sicuri di quale firmware installare, è possibile installare entrambi. Il sistema provvederà automaticamente a caricare il modulo necessario al funzionamento della scheda wireless.

Riavviare il sistema per rendere effettive le modifiche.

Broadcom BCM4322

Introduzione

Questa guida è obbligatoria per chi ha una scheda Broadcom BCM4322, ma è compatibile anche con i modelli BCM4311, BCM4312 e BCM4321.

Download

Per scaricare i driver relativi alla vostra distribuzione (32 o 64 bit), recarsi a [http://www.broadcom.com/support/802.11/linux_sta.php questo indirizzo].

Rimozione moduli incompatibili

E' necessario verificare che non siano caricati nel sistema eventuali vecchie versioni dei bcm43xx, b43, né Ndsiwrapper. Rimuovere i vari driver:

sudo rmmod bcm43xx
sudo rmmod b43
sudo rmmod b43legacy
sudo rmmod ndiswrapper

Installazione firmware

Creare una cartella nella propria home. Dare un nome comodo alla cartella, per esempio wireless e copiare al suo interno i driver scaricati. Entrare nella cartella

cd ~/wireless

e scompattare:

tar -xzf hybrid-portsrc-x86_32_5_10_27_6.tar.gz

Bisogna il file wl.ko, e per questo digitare (sostituendo il numero del kernel con il nostro):

make -C /lib/modules/2.6.24-19-generic/build M=`pwd` clean
make -C /lib/modules/2.6.24-19-generic/build M=`pwd`

Test dei driver

A questo punto si debbono testare i driver. Caricare i moduli necessari:

sudo modprobe ieee80211_crypt_tkip
sudo insmod wl.ko

Attendere qualche secondo e controllare dal network manager che sia apparso segnale wireless.

Rendere le modifiche permanenti

Se tutto questo è andato a buon fine dobbiamo rendere le modifiche definitive, prima impedendo ad altri driver di caricarsi:

sudo gedit /etc/modprobe.d/blacklist

e incollare:

blacklist b43
blacklist b43legacy
blacklist bcm43xx
blacklist ndiswrapper

Poi copiare il proprio file wl.ko, sempre sostituendo con la giusta versione del kernel:

sudo mkdir /lib/modules/2.6.24-19-generic/wlan
sudo mv wl.ko /lib/modules/2.6.24-19-generic/wlan

Per far sì che venga caricato all'avvio:

sudo gedit /etc/modules

e aggiungere:

ieee80211_crypt_tkip

Poi modificare:

sudo gedit /etc/rc.local

e aggiungere:

sudo insmod /lib/modules/<2.6.xx.xx>/wlan/wl.ko

prima della riga exit 0.

Installazione su Ubuntu 7.10 «Gutsy Gibbon» ed inferiori

Identificare il chipset

Per conoscere il modello del chipset digitare

lspci | grep  Broadcom

che dovrebbe restituire una cosa del tipo:

06:05.0 Network controller:  Corporation BCM4318 [AirForce One 54g] 802.11g Wireless LAN Controller (rev 02)

Controlliamo che la nostra scheda sia supportata dal driver opensource a [http://bcm43xx.berlios.de/?go=devices questa pagina]. In caso affermativo procediamo con la sezione successiva, altrimenti sarà necessario l'utilizzo di Ndiswrapper.

-- Installazione del driver opensource bcm43xx -- Anchor(bcm43xx) Bcm43xx è un driver opensource che dal kernel 2.6.17 permette di far funzionare le schede wireless broadcom (alcune di esse).

Dopo aver abilitato il [:Repository:repository] multiverse, installiamo il software necessario:

sudo apt-get install bcm43xx-fwcutter

Immagine(Icone/Piccole/note.png,,center)

Nel caso si utilizzi Ubuntu 7.04 «Feisty Fawn» durante l'installazione del pacchetto verrà chiesto se si desidera scaricare ed installare il firmware. È necessario rispondere «» non sarà più necessario effettuare alcuna modifica.

Scarichiamo il firmware sul nostro Desktop da [http://svit.epfl.ch/stuff/wl_apsta.o qua]

Quindi diamo i seguenti comandi:

cd ~/Desktop
sudo bcm43xx-fwcutter -w /lib/firmware/`uname -r` wl_apsta.o

Immagine(Icone/Piccole/warning.png,,center)

È necessario ripetere questi passaggi ogni volta che il Kernel viene aggiornato.

A questo punto, dopo un riavvio, l'interfaccia wireless dovrebbe essere operativa.

Utilizzare Ndiswrapper

Anchor(ndiswrapper)

Se la nostra scheda non è supportata o funziona male con il driver opensource b43 o bcm43xx, allora è possibile provare ad usare Ndiswrapper, un programma che sfrutta i driver di Windows.

Installiamo Ndiswrapper come descritto [:Hardware/DispositiviSenzaFili/Ndiswrapper:qui].

Immagine(Icone/Piccole/note.png,,center)

Con Ubuntu 7.04 «Feisty Fawn» è consigliato compilare i sorgenti dell'ultima versione di Ndiswrapper invece di utilizzare la versione del repository per evitare problemi con Network Manager.

Quindi scarichiamo sul Desktop [attachment:bcm4318.all.tar.gz questo file] contenente i driver della scheda e estraiamo (sempre sul Desktop) i file bcmwl.inf e bcmwl5.sys.

Ora installiamo i driver:

cd ~/Desktop
sudo ndiswrapper -i bcmwl5.inf

Per controllare che tutto sia andato bene digitare

ndiswrapper -l

L'output dovrebbe essere simile a questo:

Installed drivers:
bcmwl5          driver installed, hardware present

A questo punto possiamo rimuovere i file bcmwl.inf e bcmwl5.sys dal Desktop.

Per evitare conflitti con bcm43xx dobbiamo mettere questo modulo in blacklist: aprire con un [:Ufficio/EditorDiTesto:editor di testo] (per esempio Gedit), il file /etc/modprobe.d/blacklist

sudo gedit /etc/modprobe.d/blacklist

e alla fine del file aggiungere:

#Disabilito i driver della scheda Wireless Broadcom
blacklist bcm43xx

Infine facciamo in modo che Ndiswrapper venga caricato automaticamente ad ogni avvio:

sudo gedit /etc/modules

e alla fine del file aggiungere:

ndiswrapper

A questo punto, dopo un riavvio, l'interfaccia wireless dovrebbe essere operativa.

Configurazione

Anchor(configurazione)

Se avete completato correttamente una delle tue procedure precedenti, adesso dovreste avere attiva una nuova interfaccia wireless. Verificatelo digitando sul terminale

iwconfig

Il risultato dovrebbe essere simile a questo:

lo        no wireless extensions.

eth0      no wireless extensions.

eth1      IEEE 802.11b/g  ESSID:""  Nickname:"Broadcom 4306"
          Mode:Managed  Frequency=2.462 GHz  Access Point:    
          Bit Rate=11 Mb/s   Tx-Power=19 dBm   
          RTS thr:off   Fragment thr:off
          Link Quality=101/100  Signal level=-34 dBm  Noise level=-68 dBm
          Rx invalid nwid:0  Rx invalid crypt:9  Rx invalid frag:0
          Tx excessive retries:0  Invalid misc:0   Missed beacon:0

sit0      no wireless extensions.

Immagine(Icone/Piccole/note.png,,center)

Il nome dell'interfaccia potrebbe essere diverso da eth1, per esempio eth2 o wlan0.

Per la configurazione manuale seguire la pagina [:Hardware/DispositiviSenzaFili/WiFiHowTo:Wifi How-to]. Se desiderate impostare la codifica WPA alla vostra rete, seguite la guida per [:Hardware/DispositiviSenzaFili/WpaSupplicant:WpaSupplicant].

Un'alternativa alla configurazione manuale è [:Hardware/DispositiviSenzaFili/NetworkManager:Network Manager].

Risoluzione Problemi

Anchor(risoluzione_problemi)

Portatili Acer

Se la scheda non dovesse funzionare dopo i passi precedenti e utilizzate un portatile Acer, è possibile che abbiate bisogno del modulo acerhk o acer_acpi (per i sistemi a 64 bit) per attivare i led del wireless.

Seguite la procedura descritta in [:Hardware/DispositiviSenzaFili/AcerAcpiActiver:questa pagina].

Scheda del portatile non rilevata

Se la scheda inclusa nel portatile non dovesse essere rilevata dal kernel, nemmeno dopo aver seguito tutti i passaggi di questa guida, è possibile provare ad inserire l'opzione noapic nella stringa di avvio del Kernel. Aprite il file di configurazione di [:Amministrazione/Grub:GRUB:]:

sudo gedit /boot/grub/menu.lst

Cercate nel file la stringa di avvio del kernel, e aggiungete la parola noapic in questo modo:

title           Debian GNU/Linux, kernel 2.6.20-16-generic
root            (hd0,1)
kernel          /boot/vmlinuz-2.6.20-16-generic root=/dev/hda2 ro quiet splash noapic
initrd          /boot/initrd.img-2.6.20-16-generic
boot

Salvate il file e riavviate il sistema.

Nessuna rete rilevata

Se avete seguito correttamente la guida ma il risultato del comando

sudo iwlist eth1 scan

è "no networks found" provate a digitare comunque le informazioni relative al vostro access point/router (essid, channel..) e dovrebbe funzionare lo stesso.

Introduzione

Questa pagina spiega come far funzionare le schede wireless Broadcom BCM4311, BCM4312, BCM4321 e BCM4322.

Per il kernel 2.6.24, presente in Ubuntu 8.04 «Hardy Heron», sono presenti dei driver nativi.

Ulteriori risorse


CategoryHardware