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.
3G GUINEA PIGS: I've edited the 3G version of the updater_script in the same way as the WiFi, but I don't have a 3G Xoom with which to test. IF YOU ARE FLASHING AND TROUBLESHOOTING SUPASTAH, please try the attached updater-script_UNTESTED_Xoom3G_Android3.1_Root_v03.zip(Updated!) with the MZ600 HRI66 stock images and Xoom 3G 3.1 Update ZIP. If it works, I'll update the guide to cover both devices. Please PM me your feedback, since a post might be easily buried in this thread. Thanks!
SUMMARY
Here's a run-down on the current procedure:
Updates the Xoom WiFi to Android 3.1 using ClockworkMod Recovery (update.zip)
Resolves issue in updater-script: get_prop ro.product.device wingray
Sets correct permission on su to enable functioning root
Flashes the recovery (version 03 persists CWM Recovery), boot (kernel), and system partitions to stock (required at this time)
Stock kernel means no SD Card in Honeycomb (still available in recovery), no overclocking until devs release 3.1 compatible kernels
Updates bootloader to include Recovery in the boot menu
Leaves user data intact
Outstanding Issues:
(FIXED in updater_script version 03) Recovery partition gets overwritten to stock on reboot: Edit updater-script to leave recovery partition intact
Too many steps: Include the edited updater-script, su, Superuser.apk in the update.zip
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)
You've installed an archive program that lets you edit the contents of an existing ZIP file (7-Zip, WinRAR, etc.)
You've downloaded and unzipped the edited updater_script file attached to this post
PROCEDURE
Prepare the Android 3.1 Update file
The update file as-provided is not ready for use in ClockworkMod Recovery. This fixes it. I could just include a link to a prepared update.zip file, but this is safer than trusting some dude with less than 20 posts on XDA. I'll upload one when I hit 25. :P
Rename the Android 3.1 Update file to update.zip
Open the zip file in an archive program for editing
Navigate to the following directory: META-INF/com/google/android
Delete the following file: updater-script
Copy the updater-script file from the ZIP file attached to this post to META-INF/com/google/android
Flash stock system.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.
Code:
adb reboot bootloader
fastboot flash system system.img
fastboot reboot
Reconfigure superuser
After flashing stock, we no longer have superuser/root access on our Xoom. By pushing and configuring these files, we restore our root capability without interfering with the pre-update checks. (thanks, Berzerker for catching missing symlink)
Flash stock boot.img
The pre-update checks also include the boot partition. We wait until now to flash the boot partition to stock because we need to perform adb remount earlier in the procedure, which we can't do with the stock boot.img. The actual update flashes this partition with a new kernel that implements the new 3.1 features.
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 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 "apply update from sdcard"
Select "Yes - Install /sdcard/update.zip"
"Install from sdcard complete." will indicate that the update is completed.
.
Select "reboot system now"
New bootloader will install. The message, "Congratulation! Your bootloader was successfully upgraded" will be immediately followed by an automatic reboot.
Enjoy your rooted Xoom WiFi, running on Android 3.1!
POST-UPDATE NOTES
Custom kernels: As of 0730 11 May 2011, there are no kernels/boot.img that are compatible with the Android 3.1 update, though the devs are undoubtedly on it. Do not flash a custom kernel after performing this procedure unless you know that it's compatible with the 3.1 update.
Yes, but the official update won't flash in ClockwordMod Recovery unless it is modified, like the one in the OP of this thread. Posting the official version on this thread just adds to the confusion.
Yes, but the official update won't flash in ClockwordMod Recovery unless it is modified, like the one in the OP of this thread. Posting the official version on this thread just adds to the confusion.
All he posted in the OP was a modified script, you still need to get the update.zip from Google.
The Google server is much much faster than the 3rd party download sites too.
Given the amount of coverage that Android receives around here, you could almost be … more
XDA Developers was founded by developers, for developers. It is now a valuable resource for people who want to make the most of their mobile devices, from customizing the look and feel to adding new functionality. Are you a developer?