Google network’s performance on BSNL EVDO in Linux

has been annoyingly sluggish ever since. Pinging Google sites via command-line shows heavy packet losses. I use the same browsers in Linux (Chrome & Firefox), and the same browsers in Windows. Still, performance of all Google (and related) sites is very poor in Linux (but OK in case of Windows) due to an arcane reason that is still now clear to me. Even (innocuously) normal sites with Google ads take 4-5 refreshes to load properly. And don’t forget almost no site (ok, except some only-HTML stone-age sites still lurking around) in the world today are devoid of those nasty Google ads.

So until I solve the mystery, Google will keep me frustrated in Linux.

BSNL EVDO in Linux – The Easy Way

BSNL EVDO
BSNL EVDO

So you just bought yourself a swanky new BSNL EV-DO broadband Internet device. It works happily on your Windows, fine, as they provide a Windows-friendly CD along with the device that installs the required software and drivers easily. But what about if you want to use your EV-DO in Linux, if you have it? Due to lack of official Linux support, setting up EV-DO in Linux can be quite tricky, but here is how to do it easily, without much fuss.

Linux comes in many flavors (from different vendors), like Ubuntu, openSuSE, Mandriva, Fedora, Mint. If you have one of these, or any modern Linux distro, proceed as follows.

In Linux, plug in the USB modem device. Now check if device nodes for it are created in your /dev folder. Usually, they are like /dev/ttyUSB0, /dev/ttyUSB1, /dev/usb/ttyUSB0, and so on. In most cases, this step should automatically happen. If it doesn’t, then you’ll have to manually create the device nodes for your USB modem by inserting its module in the kernel. To do it:

Check for the device ID of the USB modem. You do this using the following command. Run the command first with the modem unplugged, and then with modem plugged in. Compare the output in both the cases; whichever new entry appears in the list is of your modem.

lsusb

Within the output that you get, your modem (in most cases a ZTE device), will be listed something like:

Bus 002 Device 004: ID 19d2:fffe ZTE Corporation
or
Bus 002 Device 004: ID 19d2:fffe

Now using this device ID, you’ll create its device nodes by using this command:

depmod
modprobe usbserial vendor=0x19d2 product=0xfffe

This should create the relevant device nodes for the modem in /dev folder. If not, try unplugging and then plugging in the modem. Now your work is half done.

Next, you’ll need these packages installed to configure the modem:

wvdial
pppd
kppp or kinternet (for KDE users)
gnome-ppp (for GNOME users)

After making sure wvdial is installed, edit the file /etc/wvdial.conf to make it look similar to (note – you can use the command wvdialconf to setup the file automatically):

[Dialer Defaults]
Modem = /dev/ttyUSB0
Baud = 115200
Init1 = ATZ
Init2 = ATQ0 V1 E1 S0=0 &C1 &D2 +FCLASS=0
Init3 =
Area Code =
Phone = #777
Username = xxxxxxxxxx
Password = xxxxxxxxxx
Ask Password = 0
Dial Command = ATDT
Stupid Mode = 1
Compuserve = 0
Force Address =
Idle Seconds = 0
DialMessage1 =
DialMessage2 =
ISDN = 0
Auto DNS = 1

Replace xxxxxxxxxx in case of username and password with the 10-digit phone number of your modem. Now, execute this command:

wvdial

Voila! Your Internet should work now, in full glory. To ease up things a bit, you may want to connect to Internet using a graphical (GUI ) tool everytime. Use kppp (KDE) or gnome-ppp (GNOME) for that.

UPDATE: As pointed out by my friend Yatin, NetworkManager is another great and easy way to setup EVDO. Most modern distros come pre-installed with it. If not, you can always install it manually.

Thought of the day

Saw this today as “Quote of the day” on my office’s notice board.

The best way to succeed in life is to act on the advice we give to others.
– Anonymous

That’s 100% right, Mr. Anonymous. Very well said.

So, that was about the quote.

  • I recently got an Internet connection at my place, in Gurgaon; it’s a BSNL EV-DO based connection. Quite happy with it for now.
  • Got rid of 1185 spam comments today. Had to go through each one of them to spot out genuine ones stuck there.
  • Today, finally, Microsoft certifications lost my trust. On doing MCTS and MCP, all by myself, I felt very proud. But on looking around in the office, I found out that anybody can clear these certifications given they have proper dumps for that. Now that really hurt me.

Updates

It’s been a week now since my Accenture training got over. Now, my real office work has started.

Missing my friends (back in Bangalore) that I made during my Accenture training there.

Waiting desperately to get my hands on an Internet connection at home. I’ll go with either of Airtel broadband or BSNL EVDO.

My CAT exam is on 29th November. Will be going virtually without preparation. Let’s see what happens.

Will resume my Granular development as soon as I get an Internet connection. Meanwhile, the Unity Project has been going good, as it would seem.

After losing their bilateral Cricket series to Australia, I hope India will perform a lot better in their next series (India vs Sri Lanka), scheduled to start on 16th November.