Ubuntu 8.10, a tethered Windows Mobile 6 cell phone via USB, Firefox and Pidgin Messenger

To tether a Windows Mobile 6 cell phone (make sure you have a data plan that allows tethering), you will need to install a few things:

sudo aptitude install subversion build-essential linux-headers-`uname -r`

Once those are installed, we need to download and build the latest usb-rndis-lite code:

svn co http://synce.svn.sourceforge.net/svnroot/synce/trunk/usb-rndis-lite
cd usb-rndis-lite/
make
##  remove the existing usb-rndis drivers with clean.sh
sudo ./clean.sh
sudo make install

Before you plug in the cell phone, you will need to blacklist the rndis_wlan kernel module:

sudo echo "blacklist rndis_wlan" >> /etc/modprobe.d/blacklist
sudo rmmod rndis_wlan

Plug in your cell phone. If you type “dmesg”, you will see something like the following:

[  152.312099] usb 4-1: new full speed USB device using uhci_hcd and address 3
[  152.500604] usb 4-1: configuration #1 chosen from 1 choice
[  154.138352] rndis0: register 'rndis_host' at usb-0000:00:1d.3-1, RNDIS device (SynCE patched), 80:00:60:0f:e8:00
[  164.441074] rndis0: no IPv6 routers present

This is showing that the phone was found. Let’s take a look at the list of interfaces using ifconfig:

....
rndis0    Link encap:Ethernet  HWaddr 80:00:60:0f:e8:00  
          inet addr:169.254.2.2  Bcast:169.254.2.255  Mask:255.255.255.0
          inet6 addr: fe80::8200:60ff:fe0f:e800/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:8050  Metric:1
          RX packets:29 errors:46 dropped:0 overruns:0 frame:23
          TX packets:51 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:2097 (2.0 KB)  TX bytes:9146 (9.1 KB)

On the phone, turn on Internet Connection Sharing and connect via USB. Wait a few seconds (obtaining an ip address can take up to a minute or so) then issue the ifconfig command again:

....
rndis0    Link encap:Ethernet  HWaddr 80:00:60:0f:e8:00  
          inet addr:192.168.0.102  Bcast:192.168.0.255  Mask:255.255.255.0
          inet6 addr: fe80::8200:60ff:fe0f:e800/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:8050  Metric:1
          RX packets:8113 errors:13535 dropped:0 overruns:0 frame:6766
          TX packets:8643 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:6063101 (6.0 MB)  TX bytes:1890604 (1.8 MB)

Yay! We are connected.

In order to use Firefox, Pidgin or any other software that uses Network Manager, you need to stop the Network Manager daemon:

sudo /etc/init.d/NetworkManager stop

You will be able to use your applications again 🙂

Share Button