Chiavetta wireless usb con chipset zd1211 su Ubuntu (funziona!)

2 09 2007

Ubuntu contiene già i driver per i chipset zd1211 e zd1211b, tuttavia questi non supportano alcune funzionalità (come il funzionamento in modalità Master che serve a renderle un Access Point). I driver in questione sono gli zd1211rw.

Se la vostra chiavetta funziona bene, potete anche tenere quelli.

Tuttavia, il mio lettore Hideo, dopo avermi detto che non funzionava in modalità Master, mi ha chiesto di aiutarlo a trovare i driver e ad installarli. In questo caso si parla del chipset zd1211, non è garantita la funzionalità con il zd1211b, né è stata testata da noi…

Ci abbiamo perso due ore (non perché siano difficili da installare, è una stupidaggine, ma perché non mi ero accorto che sul sito era presente la patch dei nuovi kernel… ) e quindi voglio riassumere qui il procedimento, che vi impiegherà pochi minuti.

Scaricate da qui il firmware già patchato (da me) con la patch quasi-ufficiale-ma-non-supportata e estraetelo sul desktop.

Poi fate quanto segue:
cd ~/Desktop/ZD1211LnxDrv_2_16_0_0/
sudo make
E aspettate che il driver venga installato. Questo funzionerà solo per i nuovi kernel (dal 2.6.20 in su), per quelli vecchi è necessario il firmware non patchato.

Adesso dovete caricare il driver e rendere tutto ciò automatico.

Fate nel terminale:
sudo modprobe -r zd1211rw
sudo modprobe zd1211
Dopodiché modificate il file /etc/modules:
sudo gedit /etc/modulesE inserite in fondo in una nuova riga la parola zd1211. Infine modificate il file /etc/modprobe.d/blacklist:
sudo gedit /etc/modprobe.d/blacklistE aggiungete in fondo, in una nuova riga, le parole blacklist zd1211rw.

Per ultima cosa dovete far ripartire i servizi di rete:
sudo /etc/init.d/networking restartQuesto farà saltare per un istante la vostra connessione ad internet.

Adesso inserite la chiavetta usb e dovreste essere in grado di utilizzarla anche in modalità Master.

La funzionalità è stata testata con la chiavetta di id 0ace:1211 ma dovrebbe funzionare con tutte le periferiche supportate dal driver.

Aggiornamento del 02/06/2008: se avete ancora problemi di compilazione coi kernel recenti, leggete questo commento.


Azioni

Informazione

45 risposte

2 09 2007
Bl@ster

Lazza non vorrei esagerare ma… vuoi sposarmi? :D

No sul serio, mi hai risolto un problemone ;)

2 09 2007
Lazza

Davvero? Anche tu hai una chiavetta con questo chipset? :-)
Comunque… No grazie, non voglio sposarti! :lol:

3 09 2007
Daniele

a parte il problema “master”, conosco una persona che usa quella chiavetta per collegarsi wifi (ubuntu feisty) e gli cade regolarmente l’aggancio all’AP ad intervallo regolare di circa 15 min in assenza di attività (es. traffico attivo di pacchetti). Suggerimenti a riguardo?

3 09 2007
Lazza

@ Daniele, be’ purtroppo i driver non sono proprio il massimo…
Sul forum di Ubuntu c’è un lettore che dice di aver cambiato i driver e che li funziona senza problemi. Però personalmente io non sono riuscito a replicare la soluzione che proponeva. Se vuoi dacci un’occhiata, spero che la persona che conosci possa risolvere. :-)

3 09 2007
Daniele

la persona in questione è mia moglie, quindi ho già capito che mi dovrò smanazzare la patch da solo :)

3 09 2007
blood

[OFF TOPIC!]
non so se hai sentito il Tg oggi! ma a me è venuto un mezzo infarto! :)

Oggi un tizio di nome Andrea LanZarotto è stato ammazzato, ma io lì per lì avevo capito Lazzarotto!! e ho pensato: “deve aver cercato di disinstallare un windows senza il consenso del proprietario del PC e….”

3 09 2007
Lazza

@ Daniele, buona fortuna. :-)
@ blood, accidenti! Ma cosa vai a pensare…

3 09 2007
phoenix

@ blood: :)
@ Lazza: faccio una previsione… tra 1 anno tu diventerai il nuovo Pollycoke!!!

3 09 2007
Lazza

@ phoenix, vediamo. Se questo significa avere un blog molto visitato e apprezzato ti ringrazio anche se non credo che succederà in modo così “famoso”.
Se invece significa essere disprezzato solo per invidia, be’ quello mi è già capitato.

6 09 2007
mistico86

anche io ho reso il mio desk simile ad Osx basandomi sulla guida di tamila..
x chi interessato nel mio blog l’ho tradotto in italiano e semplificata con pacchetti già compilati e tutti i link utili.
spero possa servire!

6 09 2007
Lazza

@ mistico86, mi sa che hai sbagliato post però… :-P
Comunque io spero che NON sia utile, anche perché i miei lettori sanno cosa ne penso…
http://lazza.wordpress.com/2007/06/19/personalizzare-il-proprio-desktop-senza-scadere-nel-patetico/ ;-)

17 02 2008
salvo

il link http://www.divshare.com/download/1833080-724 non funziona più

qualcuno potrebbe mandarmi i file o indicare un nuovo link?

grazie

17 02 2008
Lazza

@ salvo, se leggi il messaggio c’è scritto che è temporaneamente non disponibile. Riprova più tardi…

17 02 2008
salvo

non è che per caso potresti mandarmelo tu via e-mail? se ti scoccia fa niente…

grazie per avermi risposto

17 02 2008
Lazza

@ salvo, lo farei volentieri ma io stesso per scaricarlo devo andare a quella pagina lì, e non ne ho una copia sul pc. Non ti resta che aspettare mi sa… ;-)

17 02 2008
salvo

ok grazie lo stesso.. aspetterò

17 02 2008
salvo

potresti dare un occhiata a questa?

http://www.reactivated.net/software/zd1211-vendor/UNSUPPORTED-patches/ZD1211-2_16_0_0-linux-2.6.20.patch

credo sia la patch che hai usato ache tu, ma come si fa a compilarla?

17 02 2008
Lazza

Non devi compilarla, devi applicarla al file dei sorgenti originali. Consulta la documentazione del comando patch. ;-)

17 02 2008
salvo

non capisco come… non capisco a quali sorgenti ti riferisci… Non vorrei abusare della tua pazienza e gentilezza ma se potresti postarmi i link diretti e i comandi precisi di quello che devo fare te ne sarei grato. altrimenti ti ringrazio lo stesso

17 02 2008
Lazza

I sorgenti sono quelli del driver ovviamente, il link è sull’ultima parola del post, e i comandi per patchare li ho trovati leggendomi il manuale del comando patch, non è difficile, solo che non me li ricordo… :-D

17 02 2008
salvo

niente da fare.. mi sa che ci rinuncio… ho applicato la patch nel modo corretto credo, e ho installato quei driver, ma adesso la rete va peggio di prima, non riesco nemmeno a metterla in monitor-mode

17 02 2008
Lazza

Purtroppo questi driver a volte fanno un po’ le bizze…

2 03 2008
kurt74

ho una chiavetta con chipset zd1211b, senza installare nulla ubuntu 7.10 me la riconosceva, pero’ non permetteva di settarla come Master.

Ho quindi seguito la tua guida installando pero’ gli ultimi driver che sono i 2_22
non li ho pachati, perche’ credo che la patch serva solo per la versione 2_16 che hai usato tu giusto ? almeno cosi’ mi sembra leggendo la pagina dei driver che hai postato a fine articolo.

Il risultato e’ che ora la chiavetta non mi appare piu’ al comando ifconfig

hai qualche consiglio ?
Grazie

3 03 2008
Lazza

Non possedendo personalmente la chiavetta non posso provare… Credo che sarebbe il caso tu tentassi con il driver indicato da me (2_16 quindi).

5 03 2008
tdinfo

/home/mio/ZD1211LnxDrv_2_16_0_0/src/zd1205.c:10117: warning: assignment from incompatible pointer type a me quando faccio sudo make da terminale mi dà questo problema perkè?

5 03 2008
Lazza

Se è il firmware patchato non ne ho idea… Se non è quello patchato, bisogna patcharlo. :-P

5 03 2008
tdinfo

patchato….

11 03 2008
tdinfo

sono riuscito a metterlo ma una volta messa la chiavetta e installati i driver e fatto tutto ciò ke hai detto nel post come faccio a connettermi?
sembrerà una domanda stupida ma purtroppo è la prima volta ke uso il wifi…

11 03 2008
tdinfo

ho risolto da solo…cmq grazie della guida!!!

2 06 2008
Giotto

tdinfo, posso sapere come hai risolto?
Sto impazzendo dietro questi driver. Purtroppo ho bisogno della master mode, ma, qualsiasi driver cerchi di compilare (da quello di lazza, a quello gestito dalla comunità, a quello ufficiale), mi dà lo stesso errore che dava a te.

Grazie mille ^_^

2 06 2008
Lazza

Eh sarei curioso anch’io di sapere come ha risolto lui. :-)

2 06 2008
Giotto

Ho trovato questo sul sito http://zd1211.wiki.sourceforge.net/VendorDriver
“In order to avoid errors and compile the driver version 2.21.0.0 with recent kernels you should modify the source file zd1205.c and substitute this:
eth_copy_and_sum(skb, pData, length, 0);
for this:
memcpy(skb, pData, length);
This is a very poor solution but it works: tested with 2.6.23.1-23.fc8 kernel (Fedora 7.92 test 3)
And remember: to bring up the wireless interface you must “ifconfig ethX up” it first.”

E’ una soluzione barbara, ma sembra essere l’unica che funziona…

Spero di poter esser stato d’aiuto a qualcuno che come me ci ha perso un pomeriggio senza risultato ;)

Saluti

P.S. Complimenti Lazza, bel blog! ^_^

2 06 2008
Lazza

Ottima segnalazione. Aggiorno l’articolo.

2 06 2008
Giotto

Spiacente, ma non risolve il problema… Ho provato con i Vendor Driver, con i tuoi patchati e anche con quelli presenti nei repository di ubuntu…
Continua a non funzionare purtroppo…
Poi non so dirti se dipende da qualche arcana maledizione che ha colpito la mia distro oppure se il kernel 2.6.24 semplicemente non è compatibile.

2 06 2008
Lazza

D’oh, be’ magari a qualcuno può risolvere. Fai una cosa, casomai abilitati i backports e aggiorna tutto. Chissà…

2 06 2008
Giotto

Lo farei, ma non posso rischiare di sputtanarmi la distro visto che son sotto esami e non ho tempo di reinstallare tutto. Appena avrò occasione perverò e scriverò qui i risultati :)

15 07 2008
Diego

Ciao!
Su Ububtu Hardy 8.0.4 non compila.
E’ possibile trovare un driver patchato in modo che la chiavetta usb possa funzionare come access point anche su Hardy?

16 07 2008
Lazza

Hai provato a leggere la nota in fondo al post che ho scritto (che si riferisce al commento di Giotto qui sopra)? Ok che a lui non ha funzionato, ma si può sempre provare. Se non ti funziona nemmeno quello non saprei cosa consigliarti…

10 08 2008
andrea

ciao,
posso chiedere un consiglio? io vorrei comprare una chiavetta wifi e vorrei sceglierne una che funzioni automagicamente in Ubuntu (hardy, o meglio se anche precedente)… che prendo?

Grazie 1K!

10 08 2008
Lazza

Ti consiglio di consultare questa lista:
https://help.ubuntu.com/community/WifiDocs/WirelessCardsSupported#Wireless%20USB%20Adapters
Inoltre forse puoi trovare informazioni utili su questi siti:
http://madwifi.org/
http://ndiswrapper.sourceforge.net/

18 09 2008
silvio

ciao
io ho ubuntu gutsy, versione kernel 2.6.22-14-generic.
quando faccio make con il driver patachato ricevo questo errore
cosa posso fare???

silvio@aspire:~$ cd /home/silvio/Scrivania/ZD1211LnxDrv_2_16_0_0
silvio@aspire:~/Scrivania/ZD1211LnxDrv_2_16_0_0$ sudo make
make both
make[1]: Entering directory `/home/silvio/Scrivania/ZD1211LnxDrv_2_16_0_0'
make clean
make[2]: Entering directory `/home/silvio/Scrivania/ZD1211LnxDrv_2_16_0_0'
rm -rf .tmp_versions .*.cmd *.ko *.mod.c *.mod.o *.o src/*.o src/.*.o.cmd menudbg apdbg winevl_iface
make[2]: Leaving directory `/home/silvio/Scrivania/ZD1211LnxDrv_2_16_0_0'
make ZD1211REV_B=0
make[2]: Entering directory `/home/silvio/Scrivania/ZD1211LnxDrv_2_16_0_0'
/lib/modules/2.6.22-14-generic/build
/home/silvio/Scrivania/ZD1211LnxDrv_2_16_0_0
-I/home/silvio/Scrivania/ZD1211LnxDrv_2_16_0_0/src/include -fomit-frame-pointer -O2 -Wall -Wstrict-prototypes -pipe -Wno-unused -DZDCONF_WE_STAT_SUPPORT=1 -DHOST_IF_USB -DAMAC -DGCCK -DOFDM -DHOSTAPD_SUPPORT -DUSE_EP4_SET_REG -DDOWNLOADFIRMWARE -DfTX_GAIN_OFDM=0 -DfNEW_CODE_MAP=1 -DfWRITE_WORD_REG=1 -DfREAD_MUL_REG=1 -DENHANCE_RX=1 -DZDCONF_MENUDBG -DZDCONF_APDBG -DPRODUCTION -DZDCONF_BANDEDGE_ADJUST -DZDCONF_SES_SUPPORT=1 -DAAAA03_FIX=1 -DZD1211 -DZDCONF_LP_SUPPORT=0
src/zd1205.o src/zdreq.o src/zdasocsvc.o src/zdauthreq.o src/zdauthrsp.o src/zdmmrx.o src/zdshared.o src/zdhci.o src/zdglobal.o src/zdencrypt.o src/zdpmfilter.o src/zdpsmon.o src/zdsynch.o src/zdbuf.o src/zd1205_proc.o src/zdhw.o src/zddebug.o src/zdtkipseed.o src/zdmic.o src/zddebug2.o src/zdlpmgt.o src/zdturbo_burst.o src/zdusb.o src/zdmisc.o src/zd1211.o
make -C /lib/modules/2.6.22-14-generic/build SUBDIRS=/home/silvio/Scrivania/ZD1211LnxDrv_2_16_0_0 modules
make[3]: Entering directory `/usr/src/linux-headers-2.6.22-14-generic'
CC [M] /home/silvio/Scrivania/ZD1211LnxDrv_2_16_0_0/src/zd1205.o
/home/silvio/Scrivania/ZD1211LnxDrv_2_16_0_0/src/zd1205.c:450: warning: initialization from incompatible pointer type
/home/silvio/Scrivania/ZD1211LnxDrv_2_16_0_0/src/zd1205.c: In function ‘zd1205_rx_isr’:
/home/silvio/Scrivania/ZD1211LnxDrv_2_16_0_0/src/zd1205.c:4212: error: ‘struct sk_buff’ has no member named ‘mac’
/home/silvio/Scrivania/ZD1211LnxDrv_2_16_0_0/src/zd1205.c: In function ‘zd1205_xmit_frame’:
/home/silvio/Scrivania/ZD1211LnxDrv_2_16_0_0/src/zd1205.c:5019: warning: ISO C90 forbids mixed declarations and code
/home/silvio/Scrivania/ZD1211LnxDrv_2_16_0_0/src/zd1205.c:5020: warning: assignment from incompatible pointer type
/home/silvio/Scrivania/ZD1211LnxDrv_2_16_0_0/src/zd1205.c:5023: warning: assignment from incompatible pointer type
/home/silvio/Scrivania/ZD1211LnxDrv_2_16_0_0/src/zd1205.c: In function ‘zd1205_set_zd_cbs’:
/home/silvio/Scrivania/ZD1211LnxDrv_2_16_0_0/src/zd1205.c:10117: warning: assignment from incompatible pointer type
make[4]: *** [/home/silvio/Scrivania/ZD1211LnxDrv_2_16_0_0/src/zd1205.o] Error 1
make[3]: *** [_module_/home/silvio/Scrivania/ZD1211LnxDrv_2_16_0_0] Error 2
make[3]: Leaving directory `/usr/src/linux-headers-2.6.22-14-generic'
make[2]: *** [all] Error 2
make[2]: Leaving directory `/home/silvio/Scrivania/ZD1211LnxDrv_2_16_0_0'
make[1]: *** [both] Error 2
make[1]: Leaving directory `/home/silvio/Scrivania/ZD1211LnxDrv_2_16_0_0'
make: *** [all] Error 2

18 09 2008
Lazza

Sinceramente non lo so. Ti consiglio, se non l’hai già fatto, di leggere i commenti precedenti e provare qualche suggerimento proposto. Se continua a non funzionare, forse è il caso di chiedere sul forum di Ubuntu-it, dato che ci sono molte persone esperte. :-)

30 06 2009
Filippo Castelli

Ragazzi ho un problemone,
ho seguito la procedura alla lettera, ma quando sono arrivato ad inserire il comando sudo modprobe zd1211 mi ha detto che il modulo al quale mi riferivo non esisteva, sono andato avanti e il risultato è che non mi riconosce piu la chiavetta. esiste un modo per rimettere i driver originali?

30 06 2009
Lazza

Rimetti a posto i due file che ho fatto modificare, e poi riavvia. Dovrebbe andare.

1 07 2009
FILIPPO

Grazie infinite, se non mi avessi risposto sarei stato perso…
Comunque a parte il fatto che nel mio caso non ha funzionato, hai fatto davvero una bella guida, esplicativa e facile da seguire.

Lascia un commento