[G1 Android Development] tsheeley:
How to Flash CE 2.2.1 to your G1/Dream 32B or myTouch3G/Magic 32B

As requested, here is complete guide to flashing CE 2.2.1 on your G1 or MT3G. Please make sure you have read the entire FAQ post before following this guide... a lot of common issues are covered there.

This guide assumes your phone is already rooted and has the appropriate radios & SPL setup. More info can be found near the top of the FAQ if you need to do this.

Download the following to your computer

:

Complete Eclair v.2.2.1 (RapidShare Mirror)

WiFi Patch (RapidShare Mirror)

Google Apps Pack (RapidShare Mirror)

Firerat's All-in-One Patching Script (file "fr-patch132.txt" at the bottom of his post)

Black Theme (RapidShare Mirror) (optional)

(I recommend shortening the names of the zips. The names of the 2.2.1 zip and Black Theme zip are very long and get cut off the screen of your phone... you'll need to know which one is which further down in this guide. Name them whatever you want, it's really not important.)

If you haven't already done so, format your SD card to have at least an EXT partition. The Linux-Swap partition is optional for this ROM, but others might require it... you might want to do it anyway in order to have a more universal setup. The EXT partition IS REQUIRED if you have a G1... but optional if you have a MT3G. Note: THIS WILL WIPE YOUR SD CARD. Please make sure you have backed up anything on it to your computer first or it will be lost forever.

Amon-RA has a tool built into his recovery to setup the partitions. (G1/Dream version here || MT3G/Magic version here) Connect your phone to your computer and reboot into recovery, from ADB type "utility" to get started. It's very straight forward and dead simple to follow... but please direct any questions about it to the appropriate thread. I would also recommend upgrading the EXT partition all the way up to EXT4. In terms of data speed vs stability, EXT1 is the fastest but highly unstable and easily corruptible... EXT4 is the slowest but highly stable and less likely to get corrupted.

/// This next step was added on 11/6/2010 as a work-around for the bug found in the MT3G/Magic 32B version 1.7.0 of RAs recovery. Read the discovery here - and RAs confirmation of it here. Note: If you have a G1, you don't need to do this step. ///

Turn off your phone after setting up your partitions. Next, hold down 'Volume Down', 'Home' and 'Back' - then hit power (while still holding all the others down). Click the button for 'CLEARSTORAGE'. When that finishes, reboot back into recovery and continue with the rest of the guide.

/// End of added step ///

Once your phone is back into recovery, scroll down to "Wipe" and click all 6 options in the Wipe menu. This will completely wipe the rest of your phone. Return back to the main menu and click the option "USB-MS toggle". After a few seconds, your phone will mount to your computer. Copy the files you downloaded above to your SD card. DO NOT put them in a folder. After the copy finishes, unmount your phone from the computer... but leave it plugged into the USB.

Now comes the fun part.

Scroll down to "Flash zip from sdcard" and click that. You'll be given a list of all the zips on the root of your SD. Scroll to the zip for the CE 2.2.1 base and click it. Let it do it's thing... it will take a couple minutes. If all was successful, you should be back at the main recovery menu. Go back to "Flash zip from sdcard" and click the zip for the WiFi Patch. Once back at the main menu, click "Reboot system now".

The first boot of CE 2.2.1 should take no more than 10 minutes. If you want to keep a close eye on things, from ADB on your computer type "logcat". (I personally timed it at about 5 minutes while watching the logcat.) Once the screen stops madly scrolling past and settles down, the first boot is done. When asked which home screen you would like to use, select whichever one you would prefer. (The screenshots in the first post use the ADW Launcher.)

Part of this next set of steps are for G1 users only - MT3G users can skip the Apps2SD and ringtone parts, but should turn on "Unknown sources" and run the Firerat All-in-One Patching Script (that's the code block below where you see "fr-patch132.txt").

After the first boot has finished, click menu -> Settings -> Applications and turn on Apps2SD. Turn on "Unknown sources" as well.

Next, open your app tray and scroll down to Terminal. Enter the following commands:

su
sh /sdcard/fr-patch132.txt lwp lsd shabang fb fixp dc2x
exit
exit

(More info on Firerat's All-in-One Patching Script - Note: the swap option is not recommended for G1s, it's been reported to cause random reboots and isn't needed on a MT3G.)

Then, open the Terminal app again and enter the following: (this will move your ringtones to your SD card, freeing up some space in /system)

su
mkdir /sdcard/ringtones
mount -o rw,remount /system
cd /system/media/audio/ringtones
mv DonMessWivIt.ogg DonMessWivIt.tmp
cp *.ogg /sdcard/ringtones
rm *.ogg
mv DonMessWivIt.tmp DonMessWivIt.ogg

The rest of this guide is for everyone again.

Reboot your phone into recovery. Scroll back down to "Flash zip from sdcard" and flash the Google Apps Pack you downloaded earlier. Once that finishes, reboot your phone. Wait a couple minutes, as the Google Apps need time to setup and settle. Go through the Google Setup screens, when you get to the screen about having Google backup your apps and settings, turn that option off. Continue with the setup. If, after pressing Finish Setup, you see a screen about adding more Google Accounts, you can hit the Home button on your phone to skip the additional account setup. Once back at the home screen, give your phone a couple minutes to sync with Google before restoring/installing apps.

If you want to take it one step further, you can now reboot back into recovery one last time and flash the Black Theme zip as seen in the screenshots in the first post, then reboot as before - but this step is totally optional. Note: After applying the Black Theme and rebooting you will have to open Spare Parts to change the clock and notification colors. (#ffffffff is white)

You now have a fully functioning CE 2.2.1 - Congratulations & Enjoy!

(Why stop now? Give it "the works" treatment... check out my Advanced Tweaking Tips post.)

.