Charl van Niekerk » Blog

Main

Latest

Archives

Powered by Blogger

Huawei E220 3G USB Modem on Ubuntu Feisty

I recently got a Huawei E220 Vodafone 3G USB Modem to use with South African cellular network Vodacom (yes, I do believe the two companies are related, doesn't Vodafone have shares in Vodacom?) from my laptop. My laptop is currently running Ubuntu Feisty. I tried to install Ubuntu Edgy Gutsy but things completely broke apart. The installation went fine but after I rebooted, Gnome threw all kinds of errors and the font size was so large it completely ran off the screen. I had to reformat and put Feisty back on.

So for the moment I'm stuck with Feisty until Ubuntu fixes their shit or until I switch to a different distro. I wouldn't really like to do that though as Ubuntu has been pretty good for me so far (I've been using it for longer than 3 years already, I started using it back in the day when almost nobody even knew it existed and it only had a minority user base, mostly in South Africa).

Be that as it may, back to the point.

I Googled around and found quite a bit of interesting information. Believe it or not, particularly from South African resources, even though I only used generic keywords like "vodafone", "3g", "usb", "linux" and "ubuntu".

As Tectonic prescribed, I firstly installed some packages:

sudo apt-get install python-dbus python-twisted python-serial python-glade2 python-pysqlite2 wvdial nozomi-source python-notify python-gnome2-extras

Then I downloaded the Vodafone Mobile Connect Card Driver for Linux 1.99.17 (Debian Package). This was the latest at the time (still as at time of writing).

Then I tried to install it (just putting the command here for the noobs):

dpkg -i vodafone-mobile-connect-card-driver-for-linux_1.99.17_i386.deb

Please don't tell me I need to remind you that your current working directory needs to be the same directory containing the file you just downloaded.

Anyway, after installing it, it quickly became apparent that I need two more packages:

sudo apt-get install xdg-utils python-tz

This can also be fixed by doing something like the following apparently:

sudo apt-get install -f

I think that was the command but I can't remember correctly and can't find it in my ~/.bash_history now either.

Anyway, now I fired it up:

/usr/bin/vodafone-mobile-connect-card-driver-for-linux

You can also start the debugging version which will print out a lot of stuff to the command line:

/usr/bin/vodafone-mobile-connect-card-driver-for-linux-debug

It picked up my modem and eventually I got to the main screen but the preferences panel just didn't want to open.

I closed it down and fired it back up again. This time it just hung during the load. Well, it didn't hang exactly, I could still safely close it down. But it did not get anywhere either so the main panel never opened.

Ok, so I took another look at the site. It seems like this version was actually intended for Edgy Gutsy. I downloaded the last version that was still specifically meant for Feisty, which was Vodafone Mobile Connect Card Driver for Linux 1.0 (Feisty Debian Package). If you don't hate this long name and these ridiculous links by now, I don't know what to do to make you hate them. You must be one super patient person!!!

I uninstalled the previous version. I can't remember exactly what the package name was but just:

apt-cache search vodafone

... And you should find it. Then just do the normal sudo apt-get remove and the package name.

Install the older version of the package using dpkg as above and then fire it up again the same way as before.

This time it picked up my card, connected, opened up the main panel. I entered the preferences screen, and filled out my details as detailed in the Tectonic post linked to above.

It seems like this time I managed to connect. I closed down the application and opened it up again. Now it just hangs keeps authenticating and never finished. I closed it down a few times and opened it up again, same thing keeps happening so I got irritated. I closed down the flipping thing, uninstalled the package and installed the newer version again for some unknown reason.

This time I fired it up, it told me that it picked up some settings from a previous version it would like to import, of course I agreed and it booted in. Everything worked other than the DNS servers. I just set myself some static DNS servers in the preferences panel again. It's interesting that this is actually the default, to use some static servers, but Tectonic said that I should let it pick these up automatically, and it didn't work for me. I just inputted some public DNS servers I know about (not going to tell you which, sorry) and all went great. I connected and my internet was faster than what I'm used to on ADSL. Well, actually only the international was faster, not the local.

Weird experience.

Today I was thinking, why on earth can't they just define a standard for USB connectivity devices that any platform can support out of the box. I mean, the SIM card really has all the details, DHCP should work for all the configuration details, why do we need all kinds of fancy control panels and drivers and shit. The operating system does not even need to know it's 3G. It should just know, hey, I can use this device to access another network. That's all, isn't it? Keep it simple, stupid!!!

Update: Yes ok so the device has a build-in driver for Windows. Insert it for the first time, Windows will mount it as a flash disk and install the driver automatically. That is quite cool but also very dangerous, as it's Windows specific. But in the first place, why do we need yet another driver? I could never understand why we can have generic keyboards and mice but not a generic connectivity device.

5 Comments

Comment by Blogger tumbleweed on Sunday, February 03, 2008 4:58:00 PM

Hi, yes, the "authenticating" problem is something I've seen. Resetting the card helps.

BTW, you can use "gdebi" to install random downloaded debs. By default on ubuntu, clicking one one in firefox should run gdebi-gtk, which will download dependencies for you.

Re the driver issue. Cards are all pretty generic. The older ones were presented as PCMCIA serial interfaces. Newer ones as USB-hosts with USB-serial ports on them. Some USB ones appear as generic USB modems, others as usb-serial ports. (and some of these use proprietary protocols, but most have drivers in the Linux tree)

These can be addressed like normal modems (There is a relatively standardized superset to the Hayes command set for GSM). So you can use normal pppd just fine.

The graphical "drivers" just handle some of the module mangling for you, and give you a nice GUI to use. But for any server/reliable installation, you should use a good old simple pppd+chat setup.

Also, take a look at using internetvpn.

Comment by OpenID morgs on Thursday, February 07, 2008 11:57:00 AM

You tried to install edgy? Did you mean gutsy?

The next NetworkManager should support 3G cards for great justice: NetworkManager 0.7 is the new Chuck Norris

Unfortunately, not released yet...

Comment by Blogger Charl van Niekerk on Friday, February 08, 2008 9:19:00 PM

Sorry guys for taking so long to respond. Yes I indeed intended Gutsy, not Edgy, got a little confused there. :)

Quite interesting info, thanks!

Comment by Anonymous Alan on Friday, March 28, 2008 1:58:00 PM

Charl,

I had a good time reading your post. I just went through similar experiences installing my e220 on a Slackware system for use in Kenya with Safaricom.

The thing that pisses me off is the fact that the "APN" has to be correct or it doesn't work. For Safaricom our APN is not "internet" or anything logical... it's "safaricom." Of course it shows this in the manual where they have a screenshot of the Windows program's settings window... but AGH! How about "plug in... dial" and everything just works?

I wrote up a howto on my blog over at alaninkenya.org...

http://alaninkenya.org/2008/03/28/safaricom-huawei-e220-linux-and-you

Ok.. bye!

Comment by OpenID Charl on Friday, March 28, 2008 11:11:00 PM

Hi Alan,

Thanks for the comment, yeah I think the whole system is pretty pathetic. These things should be literally plug and play.

Cheers,
Charl

Post a Comment (Anonymous comments will promptly be deleted.)

Copyright © 2004-2007 Charl van Niekerk. All articles are released under the Creative Commons Attribution 2.5 South Africa licence, unless where otherwise stated.