[Xoom Android Development] publicanimal:
FIRST THINGS FIRST:

This represents very little work that I've done on my own. It is mostly appropriating the work of others. The important thing to note is that the file works and it works well.

All I did to create this file was incorporate a modified version of stachre's updater-script into the official WiFi 3.1 update from Google (this is not the file you should flash).

I then added the kernel & all of the files from bigrushdog's HC3.1 .zip EXCEPT the system.img file (which is the vast majority of the update). BRD's HC3.1 installs the 3G version of 3.1 with Hotspot/Tethering options in the settings menu under Wireless & Networks, and I personally want to have the WiFi-only software on my WiFi XOOM. His version seems to work just fine and the only difference I noticed was in the Settings menu, but that was enough of a difference for me to prefer the WiFi only software. I'm sure more of you may feel the same. If there are any other differences between the WiFi & 3G software I'd be curious to know what, if any, there are.

I then added the code from BRD's updater-script (minus the parts relevant to flashing the system.img) on to the end of the updater-script from stachre's updater-script.

One of the benefits of this approach is that it does not require you to perform a factory data reset, as BRD's method currently does. And yes, you will have access to your external SD Card in the /sdcard/external folder.

It is super late and I am exhausted, but I wanted to share this with you before I fall asleep. If you seem to notice that these instructions are more or less copy and pasted verbatim from stachre's thread, that is because they are. This is a simplified version of his method with the addition of BRD's modified version of the stock 3.1 kernel for SD Card storage. There are fewer steps (now only 2) because more files are included in the zip.

[size=+1]DOWNLOAD HERE - FLASH IN CLOCKWORK RECOVERY:[/size]

MZ604_3.1_ROOT_update.zip

WARNING: Following this procedure may damage or permamently destroy your device. This procedure is provided with NO WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. Perform this procedure at your own risk.

COMPATIBILITY NOTE: I have personally tested this procedure ONLY ON THE US XOOM WIFI MZ604. If other devices (i.e., Euro Xoom WiFi) implement the same Android 3.1 update file, then this procedure *should* work; some users have reported success with UK and Canadian models (see this post for more info). Know, however, that you proceed at your own risk. If you're stuck in a boot cycle, try a factory data reset in recovery.

[size=+1]SUMMARY[/size]

Here's a run-down on the current procedure:

Updates the Xoom WiFi to Android 3.1 using ClockworkMod Recovery (MZ604_3.1_ROOT_update.zip)

Resolves issue in updater-script: get_prop ro.product.device wingray

Pushes Superuser and su, sets correct permissions to enable functioning root

Flashes the system partitions to stock (required at this time)

Flashes bigrushdog modified stock boot.img (kernel) to enable external storage

Updates bootloader to include Recovery in the boot menu

Leaves user data intact

Leaves recovery intact

Outstanding Issues:

The new

Videos.apk does not appear in app drawer after update, according to Motorola this was done intentionally. Videos still play in Gallery. For some reason Motorola doesn't want us to use this app yet on the WiFi Xoom, but it's available on the 3G Xoom.

Now, without further ado...

[size=+1]ASSUMPTIONS[/size]

You've downloaded the update here: MZ604_3.1_ROOT_update.zip

You've downloaded and unzipped the stock Xoom WiFi MZ604 HWI69 images from Motorola also available via torrent

You've flashed a recent version of ClockworkMod Recovery (thanks, bigrushdog, koush, et al)

You've installed a physical SDCard in your Xoom (required for ClockworkMod Recovery updates) and have it functioning properly

You've configured the Android SDK on your PC, with adb functioning properly

You've downloaded fastboot and have it functioning properly (usually alongside adb in platform-tools)

[size=+1]PROCEDURE[/size]

Flash stock system.img & boot.img

Prior to performing the actual update, the update script checks a number of files (including bcm4329.ko, which is usually built with the kernel) in /system. If any file doesn't match what's expected, the update halts. Flashing the stock system.img ensures a smooth update.

The pre-update checks also include the boot partition. The actual update flashes this partition with a new kernel that implements the new 3.1 features.

If you are unlocked and running unrooted stock Android 3.0.1, you can skip step 1. If you are already on 3.1 and just need root and/or external SD card storage, see this thread.

adb reboot bootloader
fastboot flash system system.img
fastboot flash boot boot.img
fastboot reboot

Perform update

adb reboot recovery

You may need to re-enable USB debugging in the Application settings menu before you can send the above adb command. Alternately after sending 'fastboot reboot' in step 1, wait a few seconds after you see the Motorola logo and tap the Volume Down button. If you see "Android Recovery" at the top of the screen, tap the Volume Up button to boot into recovery and install from there.

Note that in recovery, you use the hardware volume buttons to navigate up and down, and the power button to select.

In ClockworkMod Recovery, select "mounts and storage"

Ensure your Xoom is connected to your PC via USB, then select "mount USB storage"

On your PC, copy MZ604_3.1_ROOT_update.zip to the root of the Xoom's SDCard ("Removable Disk" in Windows)

In ClockworkModRecovery (still on the "USB Mass Storage device" screen) select "Unmount"

In the "Mounts and Storage Menu" screen, if the option "unmount /sdcard" is present, continue to the next step; if "mount /sdcard" is present, select it then continue

Select "+++++Go Back+++++"

Select "install zip from sdcard"

Select "choose zip from sdcard"

Select "MZ604_3.1_ROOT_update.zip"

Select "Yes - Install MZ604_3.1_ROOT_update.zip"

"Install from sdcard complete." will indicate that the update is completed.

.

Select "reboot system now"

New bootloader will install. The message, "Congratulations! Your bootloader was successfully upgraded" will be immediately followed by an automatic reboot.

Enjoy your rooted Xoom WiFi, running on Android 3.1!

CUSTOM KERNELS:

I told you guys it wouldn't be long. TDR has already released an overclock kernel for WiFi Xooms on 3.1.

Tips & Tricks for quick-booting into Fastboot & Recovery:

Booting into Fastboot:

Hold down both the power button and the Volume Down button. Fastboot support will boot and you can flash system/recovery/userdata images.

Booting into Recovery:

I haven't seen anyone else mention this. If you power up, wait a few seconds after the Motorola logo appears, then hit the Volume Down button you will see "Recovery" appear at the top of the screen. Hit the Volume Up key to boot into recovery!