I wrote this fuckin tutorial in order to satisfy my fan my friend and my fan my friend :D .

I googled and finally found this bug in Network Manager 0.8.
The solution is downgrading your network manager. But I didn’t know how to downgrade packages in Ubuntu without disabling my apt line that linked to the latest version of packages. If you wanna try, this may be a good tutorial. And, if you downgrade your Network Manager by following tutorial from community help, you can start by Installing dependencies then Make your Karmic automatically eject your EVDO modem each computer start and so on.


Let’s start…
Downgrading your Network Manager from 0.8 to 0.7 :
Killing Network Manager applet and Network Manager itself :

sudo killall nm-applet
sudo killall NetworkManager

Completely Removing Modem Manager and Network Manager :

sudo apt-get purge modemmanager network-manager*

Installing dependencies :

sudo apt-get install libpolkit-dbus2 libpolkit2 libpolkit-gnome0 libpolkit-grant2

If you downgrading your network manager following instruction from Community help, please continue reading Make your Karmic automatically eject your EVDO modem each computer start.

Disable all apt line in /etc/apt/sources.list, and add these two lines :

deb http://ppa.launchpad.net/network-manager/ppa/ubuntu karmic main
deb-src http://ppa.launchpad.net/network-manager/ppa/ubuntu karmic main

Updating package list :

sudo apt-get update

Installing Network Manager 0.7 :

sudo apt-get install network-manager network-manager-gnome

Restart your system :

sudo reboot

Make your Karmic automatically eject your EVDO modem each computer start :
Create a new file /etc/udev/rules.d/99-evdo-modem.rules, and fill it with :

SYSFS{idVendor}=="201e", SYSFS{idProduct}=="2009", RUN+="/usr/bin/eject %k"

Note : My 99-evdo-modem.rules file can only handle Haier CE100 EVDO modem. If you have different modem, change 0×201e using your modem vendorID, and 0×2009 using your productID.
To check your vendorID and productID of your modem, do :

lsusb

In my Karmic, the results of lsusb command are :

Bus 005 Device 002: ID 1bcf:0007 Sunplus Innovation Technology Inc.
Bus 005 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 008 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 002 Device 003: ID 064e:c108 Suyin Corp.
Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 004 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 003 Device 002: ID 03f0:171d Hewlett-Packard Wireless (Bluetooth + WLAN) Interface [Integrated Module]
Bus 003 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 007 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 006 Device 003: ID 201e:2009  ==============================> this is vendorID:modemID of Haier CE100 EVDO modem
Bus 006 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub

Now, try to plug in your EVDO modem, if it doesn’t appear in Network Manager applet, try to hack your kernel :
Hacking it’s kernel :
Try this only if your Karmic doesn’t detect your modem :

sudo su
apt-get install linux-source linux-headers-generic build-essential
cd /usr/src
tar xjf linux-source-2.6.31.tar.bz2

Replace your option.c file (located in /usr/src/linux-source-2.6.31/drivers/usb/serial/option.c) using this one : download my option.c.
The difference between yours and mine in line 587 because I’ve added this line into the file:

{ USB_DEVICE(0x201e, 0x2009) },

Note : My option.c file can only add support to handle Haier CE100 EVDO modem. If you have different modem, change 0×201e using your modem vendorID, and 0×2009 using your productID.

Back to your terminal, and run the following command :

cd linux-source-2.6.31
cp /boot/config-$(uname -r) /usr/src/linux-source-2.6.31/.config
make menuconfig
make -C /lib/modules/$(uname -r)/build M=/usr/src/linux-source-2.6.31/drivers/usb/serial
cp /usr/src/linux-source-2.6.31/drivers/usb/serial/option.ko /lib/modules/$(uname -r)/kernel/drivers/usb/serial/
depmod -a

Again, restart your computer, then plug in your EVDO modem, if Karmic doesn’t detect, please continue…
Replace your 10-modem.fdi file (/usr/share/hal/fdi/information/10freedesktop/10-modem.fdi) using mine, download here. The differences is in lines 82-89. Again, if your modem is not Haier CE100 EVDO modem, replace it’s vendorID and productID using yours.

That’s all…, now restart your computer then plug in your EVDO modem and enjoy :D .

ps : dont forget to enable your apt line in /etc/apt/sources.list.

Thanks to my resources :
Launchpad Bug
SkyIsGrey.org
blankblondtank.wordpress.com
My previous post.

Also thanks to fuckin english teacher.

  • Share/Bookmark

Related posts:

  1. How To Internet Connection Using Haier CE100 and Ubuntu 9.04
  2. How To : Karmic Koala and Broadcom Wireless BCM4312 rev 01
  3. How To : Karmic Koala and Canon PIXMA iP1800-iP1900
  4. Waiting For Ubuntu 9.10 Release
  5. Installing Apache 2, MySQL 5.1, and PHP 5.2 from Source in Ubuntu 9.04 (Jaunty)