====== Alice Mobile (Huawei 169) con Ubuntu Linux ====== ===== Configurazione dell'hardware ===== Quanto segue è stato **testato su Ubuntu Linux versione Hardy Heron 8.04.2**. E' probabile che la procedura illustrata funzioni con altre versioni di Ubuntu Linux e, con opportune modifiche, anche con altre distribuzioni Linux. **UPDATE:** se usate __Ubuntu (9.04)__ questa guida è perfettamente inutile; in quella versione di Ubuntu infatti basta inserire la pennina in una porta usb e tutto funziona automaticamente senza dover fare nulla di quanto indicato in questa pagina. **UPDATE:** se usate __Ubuntu (9.10)__ dovete sapere che (almeno nella versione iniziale disponibile alla data di rilascio della 9.10) il supporto alla Huawei non funziona. Per risolvere il problema, si veda [[http://linuxfreedomforlive.blogspot.com/2009/11/huawei-e169-su-ubuntu-910-correzione.html|questa guida]] (grazie a Massimo Martinelli per la segnalazione!) ==== Istallazione libreria libusb ==== sudo aptitude install libusb-dev ==== Istallazione tramite pacchetto .deb ==== Poi si può istallare usb-modeswitch. Nota: siccome usb-modeswitch si aspetta un pacchetto libusb che non trova (il pacchetto che contiene la libreria libusb si chiama libusb-dev), bisogna convincere dpkg a non verificare le dipendenze e ad istallare usb-modeswitch senza fare storie (opzione --ignore-depends=libusb): wget http://www.draisberghof.de/usb_modeswitch/usb-modeswitch_0.9.6-1_i386.deb sudo dpkg --ignore-depends=libusb -i usb-modeswitch_0.9.6-1_i386.deb In questa circostanza, una istallazione da sorgenti può risultare una soluzione più pulita ed altrettanto semplice (vedi sotto). ==== Istallazione da sorgenti ==== In alternativa ai due comandi qui sopra (che fanno un pò storcere il naso a causa della forzatura data da --ignore-depends), è possibile compilarsi usb-modeswitch da sorgenti; questa operazione è altrettanto semplice: wget http://www.draisberghof.de/usb_modeswitch/usb_modeswitch-0.9.6.tar.bz2 tar fvxj usb_modeswitch-0.9.6.tar.bz2 cd usb_modeswitch-0.9.6 gcc -l usb -o usb_modeswitch usb_modeswitch.c sudo cp usb_modeswitch /usr/local/bin/usb_modeswitch sudo chmod +x /usr/local/bin/usb_modeswitch sudo cp usb_modeswitch.conf /etc/usb_modeswitch.conf ==== Configurazione di usb-modeswitch ==== Ora non resta che configurare usb-modeswitch. Modificare il file /etc/usb_modeswitch.conf inserendo quanto segue (e lasciando commentato il resto): ############### # Huawei E169 DefaultVendor= 0x12d1 DefaultProduct= 0x1001 DetachStorageOnly=1 HuaweiMode=1 ==== Verifica ==== Se tutto è andato bene, ''dmesg'' mostrerà qualcosa di simile a quanto segue: [62041.210876] /build/buildd/linux-2.6.24/drivers/usb/serial/usb-serial.c: USB Serial Driver core [62041.271820] /build/buildd/linux-2.6.24/drivers/usb/serial/usb-serial.c: USB Serial support registered for GSM modem (1-port) [62041.271981] usbcore: registered new interface driver option [62041.271997] /build/buildd/linux-2.6.24/drivers/usb/serial/option.c: USB Driver for GSM modems: v0.7.1 Ad ulteriore conferma, ''lsusb'' dirà qualcosa del tipo: .... .... Bus 003 Device 007: ID 12d1:1001 Huawei Technologies Co., Ltd. E620 USB Modem .... .... ==== Inizializzazione della chiavetta ==== Ora lanciamo finalmente ''usb_modeswitch'' usb_modeswitch e poi, dopo aver atteso un paio di secondi: sudo modprobe usbserial vendor=0x12d1 product=0x1001 A questo punto Ubuntu vede la chiavetta come un modem, ed è quindi possibile usarla con i programmi di connessione soliti (come l'ottimo ''wvdial'', vedi sotto). ===== Configurare wvdial ===== Copiare quanto segue nel file /etc/wvdial.conf [Dialer pin] Init1 = AT+CPIN=XXXX <--------CAMBIARE QUI! (METTI IL PIN DELLA TUA SIMCARD) Username = '' Password = '' Phone = [Dialer alice] Init = ATX3 Init2 = AT&F Q0 V1 E1 S0=0 &C1 &D2 +FCLASS=0 Init3 = at+cgdcont=1,"IP","ibox.tim.it" Phone = *99# Dial Attempts = 5 Dial Command = ATM1L3DT Ask Password = off Username = '' Password = '' [Dialer Defaults] Modem = /dev/ttyUSB0 ISDN = off Modem Type = Analog Modem Baud = 460800 Stupid Mode = on Auto Reconnect = off Check Def Route = off dove XXXX è il pin della tua simcard. Lanciare wvdial una prima volta in modo da inserire il pin: wvdial pin Nota: il pin si può inserire una volta sola. Successivi tentativi falliranno (ma basta sfilare la chiavetta e ricominciare da capo). e poi una seconda per connettersi effettivamente: wvdial alice Per evitare di dover fare il doppio passaggio (wvdial pin + wvdial alice) si può inserire la sim in un cellulare e impostarla in modo che non richieda più il pin. :!: Su alcune macchine il modem della chiavetta potrebbe essere associato al file ''/dev/ttyUSB_utps_modem'' e non a ''/dev/ttyUSB0''((segnalato da [[massimo.martinelli@isti.cnr.it|Massimo Martinelli]] e riscontrato su una macchina a 64bit con Ubuntu 8.04)); se è così, sarà necessario aggiustare la configurazione di wvdial. Ho fatto un test e ho ottenuto i seguenti risultati: Velocità in download: 1883 Kbps (235.4 KB/sec) Velocità in upload: 285 Kbps (35.6 KB/sec) Test eseguito alle: 10:48 del: 18/2/2009 Posizione: Pisa ===== Uso di questa configurazione ===== In sostanza, quando voglio collegarmi, inserisco la chiavetta, attendo 5-10 secondi e poi eseguo uno script con i seguenti comandi dentro: sudo usb_modeswitch sleep 20 sudo modprobe usbserial vendor=0x12d1 product=0x1001 sleep 5 wvdial pin sleep 3 wvdial alice ===== Troubleshooting ===== * **No Carrier**: il tempo che passa tra l'esecuzione di usb_modeswitch e wvdial è critico; prova ad aumentarlo. ---- =====To Do===== Descrivere come automatizzare il processo con udev rules. Vedi riferimenti... **Riferimenti** - http://www.draisberghof.de/usb_modeswitch/ - http://www.perugiagnulug.org/configurazione-penna-internet-tim-huawei-e166-su-ubuntu - http://www.eeepc.it/huawei-e169-hsdpa-wind-sulleee-pc/ Per segnalare errori o omissioni, per suggerire aggiunte o dare commenti, contattare [[antonino.sabetta@isti.cnr.it]]