Linux, Chiavetta Internet USB, TIM, VODAFONE, GPRS o UMTS, Bluetooth

Scrivo questo breve articolo perchè ho avuto la necessità di collegare un sistema Linux (ho provato prima con Ubuntu 9.04 ma, per problemi di compatibilità driver, ho ripiegato su Debian 5.0) ad internet sfruttando una chiavetta internet della TIM (Olicard 100) e, successivamente, un altro sistema (un vecchio portatile Compaq Presario 1200) che non disponeva praticamente di nessuna “interfaccia di comunicazione via rete” (no, ethernet, no wireless, no bluetooth … solo un misero doppino telefonico), andando a maturare tutta una serie di esperienze che voglio qui condividere, così che magari possano agevolare chi è in procinto di fare qualcosa di analogo.

Partiamo dalla “Chiavetta Internet USB”: è sostanzialmente un micro-telefono – al cui interno c’è una SIM telefonica vera e propria – che, collegata via USB al PC (nel mio caso è un portatile, un vecchio HP NX 9010 P4 2.8 40GB, anche se poi l’HD è stato sostituito con uno da 160Gb ed il lettore CD-Rom – guasto – è inutilizzabile) viene vista, dopo aver installato il drivers (presente sulla chiavetta stessa, che viene anche vista come USB Storage), come un normalissimo modem dial-up.

In particolare la chiavetta in dotazione è una “famigerata” Olicard 100 TIM che, nonostante indichi la compatibilità con Linux, in realtà compatibile lo è fino ad un certo punto: tutto dipende dalla versione del Kernel installata.
Già perchè, per funzionare, occorre che il Kernel Linux sia esattamente il 2.6.26-1-686. Dunque, su Ubuntu mi è sembrato di capire che questa versione fosse disponibile nella versione 8.10 e – sarà che non ho cercato bene – non sono riuscito a trovare un downgrade per l’attuale 9.10 (o anche la 9.04, che è poi quella che era installata sull’Hard Disk).
Supporta altre distro (Fedora e altre che non conosco, volendo) e quella a me più congeniale è risultata essere Debian 5.0 Lenny; quest’ultima, attualmente – ora che scrivo – alla versione 5.0.3, monta il kernel 2.6.26-2 ma è possibile fare il downgrade a quello richiesto (2.2.26-1).

Una volta installato kernel-image-2.6.26-1-686 ho:

  • configurato grub per utilizzare di default questo kernel (è sufficiente editare il file /boot/grub/menu.lst e ri-ordinare le possibili scelte)
  • ri-avviato la macchina
  • montato la chiavetta USB (se non è installato l’auto-mount per i dispositivi USB, facile che sia sufficiente un mount -t vfat /dev/sda1 /mnt)
  • copiato olidatacard.deb (dalla cartella Debian)
  • installato il driver con un dpkg -i olidatacard.deb
  • ri-avviato la macchina

A questo punto la chiavetta internet dovrebbe essere operativa (il driver usbserial dovrebbe vederla all’avvio e creare dei device con nome /dev/ttyUSB0, /dev/ttyUSB1,/dev/ttyUSB2, ecc…).
Bene, ora non resta che configurare la connessione; per farlo io ho utilizzato l’ottimo gnome-ppp che è un’interfaccia grafica a wvdial (il software che si preoccupa di stabilire la connessione), nel quale bisogna:

  • Come username e password mettere tim e tim ; in realtà non servono, ma gnome-ppp non va avanti se li si lascia vuoti …
  • Il numero di telefono è *99# (chi usa vodafone deve usare *99***1#)
  • Cliccare su Configura
    • Come Device usare /dev/ttyUSB0 (al limite si può usare anche il Detect, ci mette un po’ ma a me ha funzionato)
    • Come Tipo ho messo Modem USB (ma credo sia indifferente)
    • E’ fondamentale modificare (anzi, aggiungere) in Stringhe di Inizializzazione :
      • Per chi usa TIM in Init 3 bisogna mettere: AT+cgdcont=1,”ip”,”ibox.tim.it”
      • Per chi usa VODAFONE in Init 3 bisogna mettere: AT+cgdcont=1,”ip”,”web.omnitel.it”
    • La Velocità va impostata ad almeno 460800 ma credo che anche 720000 possa funzionare (magari come secondo tentativo).
    • A livello di Networking dovrebbe andare bene tutto così com’è; in altri contesti – lo dico giusto per conoscenza – può succedere che ci si riesce a collegare ma, quando si va a navigare, il browser non va, dice che non riesce a trovare la pagina, ecc…, insomma: si è collegati ma non va oltre. Ecco, in questi casi, al 99.9%, è un problema di DNS e lo si risolve o aggiungendo al file /etc/resolve.conf una riga come nameserver 208.67.222.222 (che però tende ad essere una soluzione temporanea, perchè facile che il file venga sovrascritto al riavvio) oppure si aggiunge alla lista dei DNS un indirizzo valido (208.67.222.222 è quello di OpenDNS ed evita pure le censure, ecc…)
    • Come Opzioni può giusto servire Icona nell’area di notifica.
  • Ora si dovrebbe essere in grado di cliccare su Connetti e pregare …hmn, navigare ^_^

Aprire la finestrella di LOG, chiaramente, può aiutare in caso di problemi.

Se, anzichè una chiavetta internet USB, si vuole navigare con il telefono cellulare, l’iter è molto simile a quello sopra (a livello di gnome-ppp); in questo caso bisogna:

  • Installare tutti i pacchetti per la gestione del bluetooth, quindi: bluetooth, bluez-utils, bluez-gnome, gnome-bluetooth.
  • Se il PC ha un dispositivo interno Bluetooth riconosciuto da Linux, ok, altrimenti ci si può procurare – come nel mio caso – un Adattatore USB Bluetooth (costa circa €25) e verificare che venga visto con un lsusb . Collegato il dispositivo e acceso il sistema bluetooth del cellulare è necessario “associarli”. Nel mio caso ho utilizzato un Nokia 6111. Procediamo con il collegamento del dispositivo:
    • da terminale date un hcitool scan ; dovrebbe apparirvi una stringa simile a XX:XX:XX:XX:XX:XX  Nokia 6111 .
    • Quel codice rappresenta l’indirizzo del dispositivo bluetooth del cellulare e, a questo punto, bisogna “collegare una porta virtuale a quell’indirizzo, stabilendo un canale di comunicazione”. Per farlo usare i comandi:
      • sudo rfcomm release rfcomm0
      • sudo rfcomm bind 0 XX:XX:XX:XX:XX:XX 1
      • rfcomm
    • Se tutto è andato a buon fine si dovrebbe ottenere una riga simile a: rfcomm0: XX:XX:XX:XX:XX:XX channel 1 clean
    • Se il modem del proprio cellulare è disponibile su un canale diverso, può essere opportuno procedere per tentativi, modificando il valore “1” finale nel bind .
  • Ora accertarsi che bluetooth-applet sia caricata (nella systray dovrebbe apparire l’iconcina blu)
  • Infine è il turno di gnome-ppp ; l’unica cosa che cambia rispetto a sopra è il device da utilizzare, che in questo caso non è più /dev/ttyUSB0 ma diventa /dev/rfcomm0 . Chiaramente anche la Velocità sarà inferiore

In entrambi i casi sono riuscito a navigare, magari un po’ lentino, ma funzionava benone, direi meglio che una connessione con il doppino telefonico. La cosa importante su cui fare attenzione – e che nel mio caso mi ha comportato molta tribolazione prima che capissi dove stava l’errore – sta nelle Stringhe di Inizializzazione che, su alcuni siti, essendo scritte in maiuscolo comportavano un errore di wvdial (mi sembra fosse bad init string o qualcosa del genere).

Autore: BuDuS

Disegnatore Meccanico, con la passione per l'Informatica. Come hobby, produco piccoli software di (in)utilità.