GNU/Linux
GNU/Linux ha la propria forza
nella sua attiva comunità,
sempre compatta e portata
all'aiuto verso gli altri
e la condivisione reciproca.
In questo modo ogni utente
entra in una comunità grande
ma soprattutto orientata alla
libertà e aiuto per tutti.
Main Link
Aiuta Free Penguin
Other
Wireless
Wireless Schede Broadcom 43xx con i driver nativi





Questa guida spiega come far funzionare la propria scheda Wireless Broadcom 43xx con i driver nativi del Kernel.

La seguente procedura è stata provata con Ubuntu dovrebbe funzionare con lievissime differenze anche sulle altre distro.


Dal kernel 2.6.17 c'è il supporto nativo per alcuni chipset broadcom. Infatti molto probabilmente nell'elenco delle schede wireless rilevate dal sistema è presente anche la vostra scheda broadcom43xx che però non funziona correttamente.


Al momento ci sono due modi per usare il chipset broadcom sotto linux:

* Usando ndiswrapper (funziona solo su macchine x86).
   Questa è l'unico modo per utilizzare la scheda con kernel precendenti al    2.6.17-rc2.
   Per questo vi rimando a questa guida.

* Usando il driver nativo presente nel kernel. Pur essendo il driver già presente    nel kernel è necessaria l'estrazione del firmware ( cioè il software che viene    eseguito sulla scheda stessa e che non è opensource) utilizzando lo strumento    chiamato fwcutter.
   Se tu hai una scheda bcm43xx che è riconosciuta dal nuovo kernel e tu avvi il    tuo computer con il cd di installazione di edgy, vedrai dei messaggi di errore    riguardo alla mancanza del firmware della scheda wireless (questo messaggio    compare nella console dopo il primo boot splash ma prima che il server x    venga avviato).
   Seguendo questa guida è possibile risolvere questo problema e avere una    scheda wireless funzionante (io ho una scheda PCI integrata con chipset    bcm4306, che adesso funziona).



Verifica della scheda wireless

Per prima cosa è necessario verificare se la scheda wireless è fra quelle supportate dal driver opensource bcm43xx. Aprite un terminale e digitate:

lspci | grep Broadcom

Se la vostra scheda ha chipset broadcome dovreste ottenre qualcosa del tipo:

06:05.0 Network controller: Broadcom Corporation BCM4306 802.11b/g Wireless LAN Controller (rev 03)


A questo punto potete anche verificare il chipset che nel mio caso è BCM4306. In generale sarà del tipo "BCM43XX". Non tutti i chipset broadcom sono al momento supportati stabilmente dal driver opensource. Per verificare se la vostra scheda è supportata correttamente andate a questo Link.
Qui sono elencante le schede wireless supportate dal driver. Se la vostra ha un supporto che non è stable vi sconsiglio vivamente di proseguire con la guida e di utilizzare ndsiwrapper. Come potete vedere la "4306" ha un supporto "stable" e quindi possiamo proseguire.



Installazione del software necessario

Dobbiamo installare il software che ci permetterà di estrarre il firmware e successivamente caricarlo sulla scheda wireless. Aprite un terminale e digitate:

sudo apt-get install bcm43xx-fwcutter

Alternativamente potete usare Synaptic se preferite uno strumento grafico.


A questo punto è necessario scaricare il firmware per la vostra scheda.

Potete ottenerlo in vari modi:

1. scaricare il file wl_apsta.o che potete reperire qui ( realizzato dagli stessi sviluppatori del driver)

2. procurarvi il driver windows e in particolare il file .sys

3. usare lo script fornito con fwcutter

4. installare il driver tramite Synaptic



Estrazione e installazione del firmware

Se avete scaricato il file .o oppure il file .sys (io ho seguito questo metodo scaricando il file wl_apsta.o) aprite un terminale, andate nella directory dove avete salvato il file e digitate:

sudo bcm43xx-fwcutter -w /lib/firmware/`uname -r` "file scaricato"

Per essere sicuri che tutto funzioni è anche opportuno dare questo comando:

sudo bcm43xx-fwcutter -w /lib/firmware/ "file scaricato"

Questo è necessario dato che il primo potrebbe non essere sufficiente su tutte le schede.


Questo passo va ripetuto ogni volta che aggiornate il kernel. Se non lo fate la scheda continuerà a funzionare tuttavia ho riscontrato sporadici blocchi della tastiera che sono spariti non appena ho rieseguito questo comando.


Se invece preferite usare lo script fornito col programma è sufficiente dare il seguente comando da un terminale:

sudo /usr/share/bcm43xx-fwcutter/install_bcm43xx_firmware.sh

Come ultima alternativa potete utilizzare Synaptic o apt-get per avere un firmware sempre aggiornato. Aprite un terminale e digitate:

sudo gedit /etc/apt/sources.list

Andate in fondo al file e aggiungete la seguente riga:

deb http://ubuntu.cafuego.net edgy-cafuego bcm43xx

Aggiungete anche la chiave GnuPg necessaria per le firme dei pacchetti:

wget http://ubuntu.cafuego.net/969F3F57.gpg -O- | sudo apt-get add-

Infine date i seguenti comandi per installare il firmware:

sudo apt-get update
sudo apt-get install bcm43xx-firmware


Io ho utilizzato il primo metodo scaricando il file wl_apsta.o e dando il comando di fwcutter.



Caricare il modulo e verifica del funzionamento della scheda

Dopo aver caricato il firmware possiamo dare il seguente comando per caricare il driver bcm43xx:

sudo modprobe bcm43xx

A questo punto la periferica è caricata come eth1 oppure eth2. Inoltre se il vostro pc ha un led per la scheda wireless questo dovrebbe cominciare a lampeggiare. Per sapere qual è la vostra scheda digitate in un terminale:

iwconfig

Se tutto ha funzionato dovreste vedere un output del tipo:

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.


Nel mio caso l'interfaccia wireless è eth1. Nel vostro caso potrebbe essere diversa. Io mi riferirò genericamente a ethX.

Per verificare che la scheda wireless funzioni digitate:

sudo iwlist ethX scan

Questo comando dovrebbe mostrare le reti wireless che rileva la vostra scheda.


Se per qualche ragione non rilevate alcuna rete il risulto di iwlist sarà no networks found, ma se digitate manualmente le informazioni relative al vostro access point/router dovrebbe funzionare lo stesso. Provate quindi a procedere con i passi successivi della guida.



Configurazione della connessione wireless


Resa operativa la nostra scheda wireless è necessario configurarla. Purtroppo al momento non esiste un software che sia in grado di coprire tutte le nostre possibili esigenze, per cui darò alcune indicazioni per vari tipi possibili di configurazione.

Accesso tramite codifica WEP

La codifica WEP è ben intergrate in ubuntu. Se usate gnome potrete configurare la vostra rete semplicemente andando in amministrazione--> rete e impotare tutto per via grafica. Questa codifica è però considerata insicura e facilmente violabile. Per questo motivo, se il vostro access point lo supporta è consigliabile utilizzare WPA

Accesso tramite WPA

La connessione wireless mediante codifica WPA è purtroppo poco integrata in ubuntu. In ubuntu edgy sono stati fatti alcuni progressi che semplificano notevolmente la configurazione ma tuttavia quello che vorrei vedere in feisty è una completa integrazione nello strumento rete di gnome/kde.

Per attivare il wpa vi consiglio di seguire il wiki Hardware/Wireless/WpaSupplicant:WpaSupplicant. Alla fine aprite un terminale e digitate:

sudo gedit /etc/network/interfaces


Il file dovrebbe avere un aspetto di questo tipo:

auto lo
iface lo inet loopback
auto eth1
iface eth1 inet static
address 192.168.2.3
netmask 255.255.255.0
gateway 192.168.2.1
wireless-essid id_vostra_rete
wpa-driver wext
wpa-conf /etc/wpa_supplicant.conf


Io ho scelto di utilizzare degli indirizzi di ip statici, tuttavia potete anche eliminare le righe address,netmask e gateway e sostituire a static, dhcp se usate l'assegnamento automatico dell'indirizzo ip.
Anche in questo caso la configurazione può essere fatta per via grafica anche se ho notato che le due righe relative a wpasupplicant a volte vengono spostate e quindi bisogna verificare che nel file di configurazione siano al posto giusto.

In questo modo il pc tenterà di connettersi all'avvio alla vostra rete wireless. Inoltre se per caso la rete non è presente dopo che avete avviato il pc e poi l'access point/router viene accesso successivamente, ubuntu dovrebbe connettersi automaticamente.

La connessione può essere abilitata/disabilitata sempre per via grafica da amministrazione --> rete oppure tramite il comando ifconfig:

sudo ifconfig ethX up
sudo ifconfig ethX down


Accesso tramite network manager

Network manager è un bellissimo programma che ci aiuta a connettersi al wireless. Sostanzialmente è un applet che compare nell'area di notifica di gnome/kde, affiancandosi all'applet di rete di gnome.

Per installarlo è sufficiente dare i seguenti comandi da terminale:

sudo apt-get install network manager
sudo apt-get install network-manager-gnome

Se invece usate Kde:

sudo apt-get install network-manager
sudo apt-get install network-manager-kde


A questo punto riavviate gnome/kde e dovrebbe avviarsi automaticamente l'applet nell'area di notifica. Il suo funzionamento è molto intuitivo: rileva le reti e vi permette di inserire i dati della rete in modo totalmente grafico.

Purtroppo questo programma presenta alcune limitazioni: non è possibile impostare l'indirizzo ip statico e inoltre sembra che rilevi un segnale più basso rispetto all'applet di gnome (anche del 20%). Inoltre dovete lasciare deconfigurate le schede di rete.



Conclusione

Network manager può sembrare la soluzione più appropriata. Io lo considero comodo solo quando abbiamo effettivamente la necessità di cambiare spesso rete spostandosi da un posto all'altro. Se invece usate sempre o quasi un unico access point è consigliabile utilizzare una configurazione a mano. Per gli utenti maggiormente inesperti consiglio in ogni caso di utilizzare network manager che presenta una maggiore facilità d'uso.



Problemi Noti

I driver open source presentano alcuni problemi.

Anche se la vostra scheda è fra quelle meglio supportate possono verificarsi delle sporadiche perdite di connessione dovuti a problemi di autenticazione WPA. Questo si verifica spesso quando il pc viene lasciato connesso per lungo tempo ma senza che la connessione venga utilizzata. La cosa strana è che l'applet di gnome continua a indicare il pc connesso anche se non è più possibile navigare. Questo problema si verifica anche se usate network manager anche se con minore frequenza.

L'unica soluzione possibile è riavviare manualmente la scheda di rete da terminale oppure tramite la gui di gnome o tramite ifconfig da terminale. Se usate network manager invece potete usare direttamente l'applet fornita cliccando col tasto destro e disabilitando la voce "abilita wireless" e riabilitandolo subito dopo.




Torna a inizio Pagina