This tutorial is deprecated. See the new tutorial here.

Installing Android on the 1st generation iPhone

Page 1 of 4

Who is this guide for?
  • First generation iPhone owners only!
  • I used 3.1.3 firmware
  • I used OS X 10.6.3
  • I used Ubuntu 9.10 (via Virtual Box)

PlanetBeing (of the iPhone Dev Team) has been working hard to bring Linux and now Android to the iPhone. As of now you can run Android (in a very limited capacity) on the first generation iPhone. He says he is working on porting this project to the 3G and the iPod Touch next. You can read his post on his website here.

PlanetBeing released a very rough draft of a set of installation instructions. It wasn't until I found a couple other walk throughs that I was able to do this myself. The tutorial you are about to read is based on three other guides: There is also an article on the iPhone Wiki here. A discussion thread at ModMyi might also help you here.

If you want to know how to install Android packages on your iPhone, check out the iDroid Project here.

If you want to take this installation process a big step further and have your Android system "rooted", have SD card emulation and have the DNS fix, then you should read this thread. Note: I had no success with this.

This is a time consuming process. You should also know that the version of Android being used (Donut) isn't very functional. PlanetBeing demonstrated that he could surf the 'net, receive a text message and make and receive calls, but many haven't been that lucky. It's more of a novelty than anything else. When running Android the phone stays hot, and you won't be able to sleep the phone and will be forced to hard reset it just to shut it off. But if you really must have this, then continue reading. Note: There are definitely other ways of doing what I'm about to do, and they may even be easier than the way I'm doing it. However this is what worked for me.

Step 1.

Your iPhone must already be jailbroken and have Cydia and OpenSSH installed. My 3.1.3 jailbreak and unlocking guides are here: PwnageTool, Redsn0w.

Step 2.

Download iPhone Explorer here. Decompress the file and you will have an application icon on your desktop.


Launch the application. Click the Change Root button.


Click the top left button that says "Real iPhone Root Directory".


Double click the private folder.


Then double click the var folder.


Download the iDroid release package from PlanetBeing (which I have modified) here. Decompress this file. Keep the .zip file handy, we will need it.


Go into the iDroid folder, and then go into the folder named prebuilt.


Copy the files cache.img, ramdisk.img, userdata.img and zImage to the iPhone. It should look like this when you are done. If you don't see any files after uploading, click the Refresh button.


Step 3.

Double click the stash folder. Then double click the share.XXXXXX (where X is a random character). Double click the firmware folder. Double click the multitouch folder. Drag the file iPhone.mtprops to your desktop. Close iPhone Explorer.


Download the firmware-extractor file. If your download is a .zip file, then decompress this file to get the .c file. Your iPhone.mtprops file should be in the same location.


On your Mac, go to your Applications/Utilities folder. Launch In the window that opens, type the following:

cd desktop

Then press enter. Then copy and paste the following line of text:

gcc -o firmware-extractor firmware-extractor.c && ./firmware-extractor

Then press enter again.


Three files should appear almost immediately on your desktop. You can close the Terminal at this point.


Step 4.

Next we need to download firmware to make the Wi-Fi work. Go to Marvell here. Look to the right side of the page and down a little. In the gray box where it says "DRIVERS Please select a platform for your Marvell network controller", click the drop down box and select Linux 2.6 - Fedora, then click SEARCH.

Click on the file SD-8686-LINUX26-SYSKT-9.70.3.p24-26409.P45-GPL. It has a creation date of 8/18/08 and is version 9.70.3.p24. Decompress the .zip file that downloads.


Go into the decompressed folder and double click the SD-8686-FEDORA26FC6-SYSKT-GPL-9.70.3.p24-26409.P45.tar file. Go into the folder that was created. Then go into the FwImage folder. You should see two files in here: helper_sd.bin and sd8686.bin. Rename helper_sd.bin to sd8686_helper.bin. Drag both of these files to your desktop.


Step 5.

Download this file. Put it with the file on your dekstop.


Step 6.

On your Mac go to your Username/Sites folder. There should be two things here: an images folder and an index.html file. Copy the files on your desktop:,, sd8686_helper.bin, sd8686.bin, zephyr_aspeed.bin and zephyr_main.bin to this folder. Then rename the index.html to something else. My folder looked like this when I was done:


On your Mac launch System Preferences. Click on Sharing. Turn on Web Sharing. Note the address needed to access your computer.


Click here to continue to page 2.

Return to top of page