Niedawno opisałem instalację “mydelniczki” DSL Thomson SpeedTouch 330 w OpenWRT. Tym razem instalujemy “mydelniczkę” trzeciej generacji – Huawei E272 – jako zapasowe łącze w routerze.
Konfiguracja źródeł i kompilacja
W pliku .config włączamy program chat odpowiedzialny za komunikację z modemem oraz sterownik portów szeregowych na magistrali USB – usbserial. Możemy włączyć też moduł option lub inny odpowiedni dla naszego modemu. Pozostałe ustawienia pozostawiamy niezmienione. Można dodatkowo zainstalować microcom, aby ułatwić sobie ewentualne “ręczne sterowanie” modemem.
CONFIG_PACKAGE_kmod-usb-serial=y
CONFIG_PACKAGE_kmod-usb-serial-option=y
CONFIG_PACKAGE_microcom=y
Rekompilujemy i instalujemy OpenWRT. (Ewentualnie można doinstalować brakujące pakiety do istniejącej instalacji OpenWRT za pomocą opkg.)
Port szeregowy
Ponieważ modem GPRS po podłączeniu nie jest przypisywany przez system do żadnego sterownika (w Debianie obsługuje go moduł option, jeśli go nie włączymy możemy użyć ogólnego sterownika portu szeregowego na USB). Dopisujemy w pliku /etc/modules.d/60-usb-serial opcje vendor i product oraz maxSize.
Po tej operacji należy ponownie załadować moduł usbserial poleceniem:
# rmmod usbserial # insmod /lib/modules/`uname -r`/usbserial.ko vendor=0x12d1 product=0x1001 maxSize=4096
Skrypty chata
Do inicjacji modemu należy użyć skryptów programu chat. Należy stworzyć katalog, np. /etc/chatscripts.
# mkdir /etc/chatscripts
A następnie w stworzonym katalogu utworzyć pliki /etc/chatscripts/iplus i /etc/chatscripts/iplus-off o następującej zawartości:
/etc/chatscripts/iplus:
ECHO ON
ABORT "NO CARRIER"
ABORT "NO DIALTONE"
ABORT "ERROR"
ABORT "NO ANSWER"
ABORT "BUSY"
'' 'rATZ'
CLR_ABORT "ERROR"
OK AT+CPIN=1234
'' AT+CGDCONT=1,"IP","www.plusgsm.pl"
OK ATD*99#
ABORT "ERROR"
CONNECT ``
/etc/chatscripts/iplus-off:
ABORT "NO DIALTONE"
ABORT "ERROR"
ABORT "NO ANSWER"
ABORT "BUSY"
"" "K"
"" "+++ath"
W pierwszym skrypcie należy ustawić własny PIN. Cała ta dziwna sekcja zaczynająca się od CLR_ABORT służy do ignorowania odpowiedzi ERROR modemu podczas ponownego łączenia, czyli gdy karta SIM jest już odblokowana.
Konfiguracja połączenia
Aby skonfigurować połączenie GPRS (albo EDGE lub HSDPA, ponieważ tutaj o typie połączenia decyduje modem) dodajemy do pliku /etc/config/network:
option ifname "ppp0"
option proto ppp
option device /dev/ttyUSB0
option connect "/usr/sbin/chat -v -f /etc/chatscripts/iplus"
option disconnect "/usr/sbin/chat -v -f /etc/chatscripts/iplus-off"
Aby połączenie to uczynić domyślnym połączeniem WAN zmieniamy linię config interface backup na config interface wan.
Aby używać zapasowego łącza wydajemy komendy:
# ifdown wan # ifup backup