Tether Motorola Droid with Windows 7

As a follow up to my Tether Motorola Droid with Ubuntu 9.10 and Ubuntu 10.04 article I have decided to post the steps for Windows 7.

  • Grab and install the latest Droid Drivers: http://www.motorola.com/Support/US-EN/Support-Homepage/Software_and_Drivers/USB-and-PC-Charging-Drivers/
  • Grab and install the latest OpenVPN: http://www.openvpn.net/index.php/open-source/downloads.html
  • Grab the latest Android SDK and extract it: http://developer.android.com/sdk/
  • Create a file called azilink.ovpn file and enter into it:

    dev tun
    route-method exe
    remote 127.0.0.1 41927 tcp-client
    ifconfig 192.168.56.2 192.168.56.1
    route 0.0.0.0 128.0.0.0
    route 128.0.0.0 128.0.0.0
    socket-flags TCP_NODELAY
    ping 10
    dhcp-option DNS 192.168.56.1

  • Create a file called azilink.bat and enter into it:

    "[path to android sdk]\tools\adb.exe" forward tcp:41927 tcp:41927
    openvpn "[path to azilink.ovpn]"

  • Set your Droid to debugging mode: Settings -> Applications -> Development -> USB debugging
  • Grab and install the latest Azilink .apk file onto your Droid: http://azilink.googlecode.com/ (This can be done by pointing the Droid’s web browser directly to the download link or loading it onto the SD card. Either way you may need to go to Settings -> Applications -> Unknown sources to allow it to be installed.)
  • Start up Azilink on your Droid and select Service active.
  • Right-click azilink.bat and select Run as Administrator.

If all these steps went well you should be able to access the Internet on your computer via Azilink’s tethering capabilities. Be sure to check out the About screen in the Azilink application on the Droid to see if any of that applies to you.

A few things worth mentioning:

  • This method does not require your Droid to be rooted.
  • I am under the impression that these steps will also work for Windows Vista but I can not confirm that.
  • I am under the impression that these steps will also work for Windows XP with the route-method exe line removed from azilink.ovpn but I can not confirm that.
  • I am running Droid firmware 2.1, OpenVPN 2.1.1, Azilink 2.0.2, and MotoConnect 4.6.0.

Intalling VMware Tools on Linux

Installing VMware Tools on a Linux host is very simple. All you need to do is make sure the headers for your current kernel and GCC are installed. Here is an example of the commands you would run for Debian/Ubuntu:

sudo apt-get install linux-headers-generic gcc
sudo mount /dev/cdrom /media/cdrom
cp /media/cdrom/VMware*.tar.gz /tmp
sudo umount /media/cdrom
cd /tmp
tar xzvf VMware*.gz
cd vmware-tools-distrib/
sudo ./vmware-install.pl

You should now notice your Linux VMs are more responsive and have a few more options.

Linux Swap File

For some unexplainable reason it annoyed me that most Linux distros use a swap partition instead of a swap file. Depending on your setup a swap file will be just as fast and will even allow you to suspend to disk. Here is how you do it.

Enter the following lines at the Terminal:

sudo dd if=/dev/zero of=/swap bs=1M count=X
sudo chown root:root /swap
sudo chmod 600 /swap
sudo mkswap /swap
sudo swapon /swap

Replace “X” in the first line with how many megabytes you want your swap file to be (~1.5 times your amount of RAM is a good rough guess). Now add the line “/swap none swap sw 0 0” to your /etc/fstab file.

If you already have a swap partition you can safely remove the corresponding line from /etc/fstab, reboot, and then remove the swap partition completely with a tool like GParted.

If you get a error from dd indicating you do not have enough RAM you can use sudo dd if=/dev/zero of=/swap bs=1G count=X instead.

“What Every Programmer Should Know About Floating-Point Arithmetic”

I just came across a very good Slashdot article that links to a bunch of information on floating-point numbers geared towards programmers.

What Every Computer Scientist Should Know About Floating-Point Arithmetic
More of a technical paper
The Floating-Point Guide
More of an every-mans guide

The Future of Shopping

I am often amazed at what other people find amazing. For example, my mother recently sent me the below video entitled “The Future of Shopping.” In this video a women is at a clothing retailer and browsing a digitised catalogue of their wares. She is able to “turn the page” by waving an arm and interact with on-screen buttons to select an item.

However cool such an interface may be– do not get me wrong, it is very, very cool– I fail to be as taken as the people around me. The reason behind this is probably the fact that I tend to view things as their individual parts rather than the subject as a whole. Take, for example, the Google Sky Map application on my phone. This application allows you to point your phone in any direction and show you what stars, constellations, planets, ect one would see if the Earth was not in their way and in the absence of bright lights. All the required technologies have not only existed for a while but everyone is familiar with them in one form or another. Google Sky Map is just a clever application of nearly static images combined with a compass and GPS; They are old horses with new tricks. A neat application but hardly as amazing as everyone seems to think that it is.

Is everyones head that far in the sand? There seems to be a huge market for companies intentionally underestimating people…


The Future of Shopping