Italiano English
Edit History Actions

Asus_WL-500g_come_gateway_hsdpa

hsdpa1.jpg hsdpa2.jpg

Durante l'estate 2008 mi è capitato di non avere connessione in alcun modo. Alla fine ho deciso di affidarmi ad una connessione HSDPA di vodafone.

Vediamo, allora, come utilizzare un Asus Wl-500g come gateway HSDPA con un pennino Huawei E176.

1. Prima di tutto ho aggiornato l'openwrt del mio Asus all'ultima versione dell'SVN.

2.Ho controllato che i moduli necessari fossero presenti nella distribuzione (altrimenti vanno installati): di sequito la lista

usbserial
usb-ohci
ppp_async
ppp_generic
usbcore

successivamente sono stato costretto a caricare il modulo usbserial con alcuni parametri che identificano il vendor e il modello del mio pennino hsdpa (legibbili su dmesg e nel mio caso vendor=0x12d1 product=0x1003)

per caricare il modulo con i parametri, modificare il file /etc/modules.d/60-usb-serial in questo modo:

usbserial vendor=0x12d1 product=0x1003 maxSize=4096

il maxSize=4096 serve per aumentare il buffer della seriale onde non "strozzare" la connessione hsdpa

successivamente ho creato due file:

1. /etc/ppp/peers/hsdpa.chat 2. /etc/ppp/peers/vodafone

di seguito i due file

root@OpenWrt:/etc/ppp/peers# cat hsdpa.chat
'' ''
'' 'ATZ'
TIMEOUT 5
'OK' 'AT+CGDCONT=1,"IP","web.omnitel.it"'
'OK' 'ATD*99#'
'CONNECT' ''

in cui la stringa

web.omnitel.it

indica l'indirizzo del APN del gestore utilizzato e

root@OpenWrt:/etc/ppp/peers# cat vodafone
noauth
debug
/dev/usb/tts/0
460800
defaultroute
noipdefault
noccp
nobsdcomp
usepeerdns
connect-delay 10000
#nodetach
persist
connect "/usr/sbin/chat -v -V -t3  -f /etc/ppp/peers/hsdpa.chat"

in cui la stringa:

/dev/usb/tts/0

indentifica l'interfaccia usb seriale (in questo caso devfs) di solito è /dev/ttyUSB0

per fare partire la connessione ora basta un semplice:

pppd call vodafone

Volevo successivamente fare partire la connessione in modo automatico all'avvio dell'wl-500g, ma mi sono imbattuto in un problema. Al primo avvio del router (il primo boot quando si inserisce la spina) l'Asus wl-500g non comunica con la penna Huawei. Neanche microcom (equivalente di minicom) riesce a dialogare ed impartire comandi AT alla penna. Ma se riavviato, il router, quindi senza perdere alimentazione, la penna risponde.

Per ovviare a questo problema ho scritto uno script che all'avvio, dopo aver avviato la connesione aspetta un minuto, se è possibile raggiungere una macchina su internet (nel mio caso ho scelto www.google.com) allora lo script muore, altrimenti riavvia il router. Di seguito riporto questo semplice script che viene fatto partire da uno degli script su /etc/rc.d/

root@OpenWrt:/etc/rc.d# cat /bin/umts
#!/bin/sh
pppd call vodafone

sleep 60
ping -c 1 www.google.com;
if [ $? -ne 0 ]; then
        reboot
else
        exit 0;
fi

Questo sistema potrebbe consentire alla community di avere connettività in altre occasioni in cui non è possibile montare link con la nostra rete. Spero di essere stato abbastanza chiaro, al prossimo smanettamento, buona estate a tutti Nino