back GPRS przez USB

Eee PC możemy wykorzystywać do połączenia z Internetem przez telefon komórkowy połączony z komputerem kablem USB. Takie połączenie z reguły emuluje port szeregowy, w komputerze pojawia się np. urządzenie /dev/ttyUSB0.

Zanim połączenie zostanie zestawione, należy sprawdzić, jakie urządzenie pojawiło się w katalogu /dev. Pomocne może być wydane w konsoli polecenie dmesg.
Po włożeniu kabla usb połączonego z telefonem Siemens C60 pokazało:
[ 4860.760000] usb 1-2: pl2303 converter now attached to ttyUSB0

KROK PO KROKU

1. W konsoli wydaj polecenie sudo mc i przejdź do katalogu /etc/ppp/peers. Wciśnij Shift i F4 przez co rozpoczniesz edycję nowgo pliku. Wpisz do niego:
/dev/ttyUSB0
connect '/usr/sbin/chat -v -f /etc/ppp/peers/3egprs-chat'
defaultroute
noipdefault
usepeerdns
replacedefaultroute
115200
debug
noauth
nopcomp
maxfail 10
lcp-echo-interval 5
lcp-echo-failure 12
holdoff 3
noaccomp noccp nobsdcomp nodeflate nopcomp novj novjccomp
lock
nocrtscts

Z tym, że (UWAGA!) w pierwszej linii musi być wpisane Twoje urządzenie w /dev (u mnie jest /dev/ttyUSB0*) - a to będzie zależało od modelu telefony i uzytego kabla połączeniowego. Ważna jest jeszcze szybkość portu szeregowego, domyślnie wpisane jest 115200,  dla niektórych aparatów to za dużo (spróbuj 57600), a jeśli aparat ma wieksze możliwości, to za mało (spróbuj 460800). Następnie wciśnij F2, żeby zapisac plik i nadaj mu nazwę 3egprsusb.

2. Ponownie wciśnij Shift i F4 i wpisz:
TIMEOUT         10
ECHO            ON
ABORT           '\nABORT\r'
ABORT           '\nERROR\r'
ABORT           '\nNO ANSWER\r'
ABORT           '\nNO CARRIER\r'
ABORT           '\nNO DIALTONE\r'
ABORT           '\nRINGING\r\n\r\nRINGING\r'
''              \rAT
TIMEOUT         15
OK              ATE1
OK              'AT+cgdcont=1,"IP","www.plusgsm.pl"'
OK              ATD*99#
CONNECT

Z tym, że w miejsce www.plusgsm.pl wpisz APN swojego operatora komórkowego, jeśli nie wiesz co to ma być, poszukaj na stronie internetowej operatora. Wciśnij F2 i zapisz plik pod nazwą 3egprs-chat.


3. W konsoli wpisz kolejno:
sudo su -
cd /usr/sbin
wget http://eeepc.one.pl/gprsusb
chmod 755 gprsusb

4. Zrób na pulpicie skrót, którym będziesz startować i zatrzymywać połączenie GPRS, należy do tego użyć narzędzia Launcher Tools opisanego wcześniej.

dodaj skrót

Skrót niech będzie w zakładce Internet, jako ikonę ja wykorzystałem 3g_norm.png (ikonka programu 3egprs, który mam zainstalowany), ale można wybrać dowolną inną ikonę.

5. Czynności wykonane w tym punkcie zależą od urządzenia, jakie pojawi się w /dev. Jeśli będziesz mieć ttyUSB0, nic nie musisz robić. Jeśli jest to inne urządzenie, np. /dev/ttyACM0, musisz nie tylko zmienić wpis w pliku 3egprsusb, ale jeszcze poddać edycji skrypt /usr/sbin/gprsusb, który wygląda tak:
#!/bin/sh

running=$(ps xa | grep 3egprs | awk '$6 == "call" {print $2}')

if test $running == "ttyUSB0"
then
  sudo poff 3egprsusb
  kdialog --msgbox "GPRS Connection has been stopped!"
else
  sudo pon 3egprsusb
  kdialog --msgbox "GPRS Connection has been started!"
fi

Wpis ttyUSB0 należy zmienić na swój i zapisać plik. Rzecz jasna, można też komunikaty angielskie zmienić na polskie. Oczywiście należy to zrobić na prawach roota.

Po pomyślnym wykonaniu powyższych poleceń połaczenie GPRS można uruchomić klikając w ikonkę 3eGPRSUSB i następnym kliknięciem je zakończyć.

* Uwaga, jeśli twoje połączenie z telefonem ma inne urządzenie niż ttyUSB0, musisz wykonac jeszcze punkt 5. Jeśli masz kłopoty z urządzeniem w /dev, musisz uruchomić google i poszukać opisów wprowadzonych przez innych użytkowników takiego telefonu, jak twój. Być może trzeba będzie ręcznie dodać urządzenie poleceniem mknod.

back