Wednesday, April 21, 2010

Configuring Linux for Airtel GPRS on Samsung Corby Pro

i got a gprs connection on my phone, the same one for which airtel guys keep bugging all the time.... anyways i was trying to configure gprs on my archlinux box and wasnt able to find any help for samsung corby pro.

one can use dial up networking using bluetooth or one can connect using the usb chord. i prefer using usb chord because it also keeps on charging the phone (samsung phones have pathetic batteries).

well we have a software- kies, which can run on windoz... sigh. i wish one day everything would be open source.

k, then straight to configuration... i am skipping many details, u should know how to use wvdial.

first of all one has to select kies for pc connection in settings and connect the phone on usb. you will get things like /dev/ttyACM0 and /dev/ttyACM1 after connection. u can check it using lsusb command. one can search the net for configuring ppp but using wvdial is easiest. simply run wvdialconf which will generate a /etc/wvdial.conf file. it will probe the modem for valid initialization strings. one can also find initialization string for samsung phones in kies folders.

i will just paste my wvdial.conf here, you will have to edit it a bit.

[Dialer Defaults]
Init1 = ATZ
Init2 = ATQ0 V1 E0 &F S0=0 &C1 &D2
Init3 = ATS7=0
Init4 = AT+CGDCONT=1,"IP","airtelgprs.com"
Password = { }
Auto DNS = on
Phone = *99**1*1#
Idle Seconds = 0
Modem Type = USB Modem
Stupid Mode = 1
Baud = 115200
New PPPD = yes
Dial Command = ATDT
Modem = /dev/ttyACM0
ISDN = 0
Username = { }
Carrier Check = yes
Auto Reconnect = off


some points have to be noted that one has to dial *99**1*1# for gprs. check man pages of wvdial they are useful. configuring ppp connection without wvdial is also straightforward- check man pages of pppd.

another point to be noted is that the modem hangs up the connection after some ~35 secs. and i dont know why i cant initialize any register on modem after S7. S30 is the register for setting inactivity timeout, for never hanging it one has to set it to zero.
workaround is to edit /etc/ppp/peers/wvdial and add the following two lines:

lcp-echo-interval 0
lcp-echo-failure 0

happy browsing ...