Some of the system images are specific to a SKU, which normally would refer
to a product code but in this context appears to be ASUS' jargon for the
regulatory domain of the product, i.e.
US, JP (Japan), TW (Taiwan), CN (China), WW (worldwide). To find it
look in Settings-About Tablet-Build Number. Mine is
JR003C.US_epad-10.4.4.20-20121026 and the country code before
_epad is the SKU. On other devices different actual hardware is
used in different regions, though I haven't heard any mention of this
for the TF700T, but don't tempt fate, use the correct SKU.
Several of the steps involve flashing entire system images, including
wiping app data. Use your favorite backup scheme to save important app data,
and restore it when finished. Beware of two points: First, when apps are
reinstalled their user and group IDs rarely are the same as before, and a low
level backup will mess them up by setting the old, wrong UID/GIDs. Second,
up/downgraded apps may have
improved table schemas and may have trouble
to deal with the schema from another major version. This is particularly true
for system settings, and on cellphones the Phone app is a frequent and critical
offender. The best is to abandon low-value data such as the browsing history,
but make a high level semantic backup of the important stuff; for example, use
Google's backup service if your security rules allow it, or export an XML file
of your bookmarks and a vCard file of your contacts. These can then be
imported into the respective upgraded apps. Just record your system settings
by hand; automated restoration is useless and dangerous.
You should also
make a list of apps that you installed from the Android Market (Play Store).
For a list, see the Play Store app under
Your device's stock image may have licensed apps, ringtones, etc. which you have paid for. You will want to copy some of these, the ones you use, to your support computer and restore them on CyanogenMod.
Here's a summary of the procedure so you can keep straight all the steps. Throughout, I have interspersed the download steps with the instructions using the resulting files, but I recommend that you download everything first, to avoid hacking the machine halfway and then being unable to find a file.
Back up important data, files and apps that are special on the stock image to be overwritten.
Documentation suggested that it would be necessary to
downgrade to Android 4.0.x
Ice Cream Sandwich
(ICS) before I could run the unlocker. I tried and failed to do the
downgrade, but the unlocker turned out to function with
You need to unlock the device before you can use fastboot.
You need to install a custom Recovery before you can install an image not signed by ASUS, such as CyanogenMod.
blob(image file) for ClockworkMod Recovery by Koush. Other ones can be used if you prefer them.
Now you can install CyanogenMod and Google Apps.
Reinstall your apps; set your settings; restore saved data.
Transformer Infinity product page for CyanogenMod.
Installation instructions. The following is a summary of what's on that page, annotated for my specific use-case.
Android SDK. You will need this on your support computer (Linux
or Windows) for the
adb program that
copies files to the device and the
fastboot program used to
flash custom Recovery.
CyanogenMod system image (cm-10.1.0-RC5 dated 2013-06-07, 164Mb). An exact match to your hardware is required. This is the one I used, but check the download page for a more recent version.
The Installation Instructions page also has links for Google Apps (zip file) and ClockworkMod Recovery by Koush (.img file) which you will need to download. Get the ones for your CyanogenMod version (Google Apps) and your hardware and version (ClockworkMod Recovery).
This thread on XDA-Developers.com by Pretoriano80 collects
procedures and links for
all your hacking activities on the Transformer Pad Infinity.
It is referred to below as the
ASUS Support Site for TF700T. Under Download/Android/Utilities,
Unlock Device App V7 (filename:
UnLock_Device_App_V7.apk, 0.6Mb). Copy it to your SD card.
However, you will only be able to use this app with an Android 4.0.x
Ice Cream Sandwich system image. [Update: I used it
successfully on Android-4.1
Jelly Bean. Apparently the
works on warning means it will not work on back versions such
I also saved on the support computer the current stock system image: US_epaduser_10_6_1_14_8_UpdateLauncher.zip dated 2013-05-30 (500Mb, oink), for disaster recovery. An exact match to your hardware and SKU is required. See above about the SKU.
Forum post by Pretoriano80 on XDA-Developers (2012-10-20) containing the only link that actually has the needed ICS system image out of 20 or 30 that I tried. The link is:
Link for firmware v188.8.131.52 (Android
4.0.3) for US SKU. See below about
the TF700T for the trick to get it to cough up the payload.
Key combinations: From http://outskirtsofobscurity.blogspot.tw/p/tf700.html (By Erik Larson, no date)
This thread on XDA-Developers.com collects procedures and links for all your hacking activities on the Transformer Pad Infinity.
TF700. 99% likely this is really the TF700T, since the TF700KL (with a 4G LTE modem and a dual core Snapdragon CPU) is very rare, but since you brick your device if you install a bootloader etc. that does not exactly match your hardware, I'm going to defer this for the moment.
My main activity here is to save the Polaris Office app. I tried to use VX ConnectBot to upload it to my support computer, but that failed (authentication problems I think), and so I copied it to my SD card like this:
dd if=/system/app/$t of=/storage/sdcard0/$t
Ice Cream Sandwich
ASUS has provided an unlocking tool, but the description on their support
site says that it only works with Android-4.0.x
Ice Cream Sandwich. There are comments in some forums that it also
Jelly Bean (which Android version, 4.1.x or 4.2.x?); in other
words, it won't work with waaay back versions like 3.x
I'm going to be anally retentive and take ASUS' warning literally. That means
downgrading to 4.0.x ICS.
I put considerable effort into doing the downgrade but was unable to flash the image. I've moved my tale of woe to the end of this page, for historical interest.
If the unlocker actually works on Android 4..x
Bean then I would not have to get past the dead android issue.
On TransformerForums, OP lkanant (2012-10-20). k0ldun has
build JRO03C.US_epad-10.4.4.20-20121026. He refers to the Big
Howto. The Big Howto refers to a thread on XDA-Developers
telling how to download and execute the unlocker. But no
indication which OS version it was done on. However, k0ldun
had Jelly Bean (see above for version) and reports
closed. He doesn't use the word
success on Jelly Bean
but he doesn't say it failed.
On XDA-Developers, OP Bryan195 (2012-10-06). He did the OTA
for Jelly Bean and now wants to unlock. jtrosky replies,
it has been confirmed to work on Jelly Bean by multiple
users. Eckka (2012-10-06) replies, he did it yesterday.
It's not really yours until you void the warranty!
I think this is enough: I'm going to try it.
Make sure both the support computer and the device are reasonably charged. Over 50% battery should be plenty. Just to be safe, charge it and wait for the charge light to turn green. On other devices like the Motorola Droid-3 it is bad mojo to flash while on line power (though I've never seen any such comment about the TF700T); disconnect line power and make a suitable oblation to Thomas J. Watson.
On the support computer, install the Android SDK if you don't already
have it. See the link on the instruction page for where to get it.
A seriously back-version ADB, like for Android-1.5
not talk to a modern bridge agent and will need to be upgraded.
On the device, go to Settings-Developer Options. In the headline there is a slider to turn on the whole page; do it. Then turn on Debugging-USB Debugging (may say Android Debug Bridge on some OS versions). Also go to Settings-Security and turn on Install from Unknown Sources. This may not be necessary if you use ADB install, but definitely is if you use the browser to navigate to ASUS' support site and install the app from there.
Connect the 40 pin connector to the tablet or dock (I'm doing this
while docked). The other end goes to the support computer. There, do
lsusb and you should see
Bus 002 Device 002: ID 0b05:4c90 ASUSTek
Computer, Inc. Transformer Pad Infinity TF700. (The bus and device
number depend on which port you used.) If this is missing, there is
something wacked with your USB.
adb devices. You can do this as a user, i.e. doesn't
require root on the support computer. It should show your device, giving
the correct serial number. If it shows nothing, you may not have turned on
USB Debugging. The stock image shows the serial number in ASCII and
decimal digits; CyanogenMod shows a 64 bit hex integer. In either case you
can compare with the serial number shown in Settings-About Tablet.
From ASUS' support site, download the unlocker (filename: UnLock_Device_App_V7.apk) to your support computer.
They require you to create an account. You must/should specify your Google account (email@example.com) and they rely on Google's bastardized OpenID to authenticate you. And then they independently require you to set a password and give your full name. Idiots! I'm using the generic low security password.
Per the CyanogenMod instructions page, the most convenient to install the unlocker app is:
adb install UnLock_Device_App_V7.apk
On the device, open the App Drawer (on home page, cluster of dots in
the upper right corner, on stock image) and find
Unlock Device in
alphabetical order. Execute (click on) it.
Read the EULA in which you acknowledge that unlocking the device voids
the warranty, and that you cannot put the device back to a warrantable
state. Any second thoughts, now's the time.
You need to read the entire license agreement. Scroll in the textarea
to get to the end. Until you read the whole thing the
checkbox is greyed out. Now agree to the license: click the checkbox
and hit OK.
There is a second page summarizing what is in the EULA. Click the
Agree checkbox then the Unlock icon.
It asks for the password of your Google account. Give it. Assuming it's correct the device goes through these steps:
Received command to unlock device, wait a few minutes.
This device is unlocked. (That would be the cue for customer service techs to refuse warranty service.)
The CyanogenMod instruction page has a link to a back-version recovery
image and the given MD5 sum did not match the linked-to file, so I declined to
use that link. Instead I went
directly to Koush's site, the Rom Manager section. Under
Transformer Pad Infinity I downloaded to the support computer the latest
Recovery, the touch variant (which I've used on other devices, and like). As of
this writing it's 184.108.40.206. Make sure to get the correct device or you may
Returning to the CyanogenMod instructions:
Locate the fastboot binary. It's in …/android-sdk/platform-tools/fastboot where … represents where you put the SDK.
Your USB cable should still be connected between the TF700T and the support computer.
Execute: adb reboot bootloader ; or power off the TF700T and hold down Volume Down then Power.
When the booter screen appears, release the keys, then press Volume
Down enough times (for me, twice) to highlight the fastboot row or the USB
icon: the third item. Press Volume Up to select it. You have 10 seconds to
accomplish this. The bootloader screen stays visible but small writing in the
upper left corner says
Starting fastboot USB download protocol.
On the support computer do this: fastboot devices ; it should show a device ID in hex. I'm pretty sure this is the serial number that CyanogenMod will show once installed, but I didn't copy it down so I can't be sure.
fastboot flash recovery recovery-clockwork-touch-220.127.116.11-tf700t.img
It tells what it is doing and reports OKAY for success. The whole process takes about 10 seconds. There is also a progress bar on the device.
Reboot into Recovery to make sure it works. The booter reported
Booting Recovery kernel image. After about 20 seconds the ClockworkMod
logo (a hat over a circle) appeared followed after a moment by the main menu.
There was a background image of the dead android. I wish it would go away.
Leave ClockworkMod Recovery running to do the CyanogenMod installation.
I actually did this step after installing CyanogenMod…
Oh, crap, a bootloop. Try re-flashing the OS. Didn't help. The CyanogenMod splash screen animation plays, but after about 20 secs it freezes, and the watchdog reboots the machine after about 30 secs. I held down Volume Up then Power, and it dropped into the bootloader menu, from which I booted Recovery; then I let it sit there while figuring out what to do next.
In the CyanogenMod forum, OP dcmbullet (2013-05-10) installed a nightly build (doesn't say which one, probably similar to RC5) and he gets a bootloop. I've seen reports of a bootloop on the Galaxy S3 starting with CM-10.1-RC4. Jnko has the same problem (on TF700T), using the 20130502 nightly. He refers to this post on XDA-Developers, OP dasunsrule32 (2013-04-23).
There, the issue is that the latest CyanogenMod needs a non-stock bootloader. (This loader can load a stock kernel too.) He gives links for the bootloader zip or blob files. Get the one for your SKU; US and WW are listed. (1.1Mb).
Put it on your SD card (see the next section for methods), insert in the TF700T, flash it with ClockworkMod Recovery (takes about 5 secs), reboot, and…
The booter splash screen says
The device is unlocked; Signature
match for about 30 secs, then it (watchdog?) reboots. Whatever image
you have installed, will then boot.
Boot into Recovery unless you left it running from the previous step.
Wipe Data/Factory Reset first. Leftover data from the stock OS will not be appreciated by CyanogenMod. The dead android has been resurrected! But /sdcard has been cleared. This is why you need to wipe data before copying the image files there.
Download the version of CyanogenMod that you are going to install. For me this is going to be cm-10.1.0-RC5-tf700t.zip . Be sure to get the one for your hardware; otherwise you'll brick it. (Best to download the files before starting any hacking steps.)
Copy it from the support computer to the device, at the root of the internal SD card. You can do this with Recovery running. Command line (substitute your own filename):
adb push cm-10.1.0-RC5-tf700t.zip /sdcard/
It takes over 2 minutes with no progress bar, but finally reports what it did (1.3e6 bytes/sec).
Also download and push over Google Apps: gapps-jb-20130301-signed.zip (when this is written). Takes a little over 1 minute.
An alternative method: Insert in the support computer a SD card formatted with VFAT. Copy the CyanogenMod and Google Apps zip files onto it. Unmount the card (use the OS's GUI or the umount command). Insert the card in the TF700T; you can do this with Recovery running.
Select Install Zip from SDCard. In which SD card did you put the images? Select Choose Zip from [Internal] SDCard (internal or external depending on where you put the images). It gives a directory listing. You could navigate to a subdirectory if the files were there (which they aren't).
Select the CyanogenMod file first: for me, cm-10.1.0-RC5-tf700t.zip
Confirm installing it. It reports action steps (referring to an
update) and takes about 2 minutes.
Do the same thing to install Google Apps. This takes under 1 minute.
Go Back to the main menu and pick
Reboot System Now
(the first item).
You are now booting CyanogenMod. The CyanogenMod splash animation plays for at least a minute (compiling bytecode), and you land in the Welcome dialog. For details on this, and other setup steps, see the setup page.
From Settings - About Tablet, this image is identified as:
Super Jelly Bean
Ice Cream Sandwich
Documentation suggested that the unlocker would only run on Android-4.0.x
Ice Cream Sandwich, so I attempted to downgrade. However, it turned out
that the unlocker would run on 4.1.x
Jelly Bean. Even so, I'm
preserving my tale for posterity.
Presently (2013-06-20) the ICS system images are no longer avaiiable on ASUS' support site. See these links:
Blog post by Terry Pearson posted (or updated?) 2012-12-16.
Forum thread by Steve Hamilton who Terry credits for the procedure. (I think Terry's instructions are easier to follow.)
This thread on XDA-Developers.com by Pretoriano80 (the
HOWTO). Look for
Factory Restore after a softbrick.
Forum post by Pretoriano80 on XDA-Developers (2012-10-20) containing the only link that actually has the needed system image out of 20 or 30 that I tried.
Link for firmware v18.104.22.168 (Android
4.0.3) for US SKU. Click on the exclamation point after
Links; that's the link element that yields the payload! There
not able to activate them using Firefox-21.0 for Linux.
I'm remembering the good old days:
You are standing in the road outside
a decrepit wooden shack. In front of you is a RFD-type mailbox…
Follow the instructions in the three blog posts above. What we're doing is basically this:
Get the back-version system image for which the various tools will work. If you downloaded from ASUS' support site it will be a zipped zip; you want US_epad_user_9_4_5_30_20120907_UpdateLauncher.zip .
Copy it to /sdcard on the device (not a subdirectory, not the removable card).
Reboot into Safe Mode (this sounds a lot like booting Recovery).
It should recognize the
update. Let it install the thing.
You can now use various hacking tools. In my case the unlocker is my next step.
[Edited two weeks later:] Oh, crap! I think I discovered why my updates were failing. You need US_epad-user-22.214.171.124.zip -- the file I downloaded was identical to what in previous years was on the ASUS support site, and needed to be unzipped, with US_epad-user-126.96.36.199.zip as the only content. I assumed that since I had obtained the file listed in forum posts, it was ready to be flashed, and I wasn't on my toes enough to verify what was inside.
Now that I have the system image on the support computer, how do I get
it onto the TF700T? Normally I would use
adb push $file /sdcard, but
you need to turn on Settings-Developer-Android Debugging, and this is greyed
out in the stock image. To get this you need to have already unlocked the
device, or gotten root, or both. So what's an alternative procedure?
On my desktop system I would use scp (Secure Shell copy). So I installed VX ConnectBot, the SSH/SCP client for Android. Follow the link for credits and usage hints. Now these files are in /sdcard (internal flash); note that some are hidden in a subdirectory:
Following Terry's instructions. While doing this it's helpful to set the tablet at 90 degrees to the keyboard because you're going to be holding down buttons and the keyboard will slide at other angles.
Starting with the device booted normally.
Hold down power and volume down for 10 seconds. It shows the power off dialog and runs the volume down to 0, then after 10 seconds it reboots. Hitting Volume Up makes it say it's going to boot into Recovery, which it does after about 30 seconds. You end up with a picture of a dead android and an exclamation point on a red background. After about 2 minutes of no action (because I was writing these notes) it gave up and did a normal reboot.
Well, let's try that again. This time, powering off normally, then hold Volume Down then Power until the screen shows, then press Volume Up. Again I get the dead android.
Thread about the dead android, OP is Erroneus (2012-11-13). HellcatDroid replies: You got the stock recovery… Press and hold Power and then press Volume Up, then let go of the buttons. (I tried, didn't help.)
Forum post on AndroidCentral OP is Patrick Schroedl (2011-12-15) on Galaxy Nexus. ac7822 said he was able to flash ClockworkMod Recovery via Fastboot without encountering the dead android, and after that it was OK. The dead android is a message from stock Recovery. Bovineyard says he had to delete /system/reboot-from-recovery.p before flashing ClockworkMod Recovery. Without this file, or with it renamed, you don't get the red triangle. I do not have this file.
Forum post on DroidForums.net, OP is BHubartt26 (2012-12-06) on Droid Razr with Jelly Bean. GoCliffGo05 and StiffOneEye say that when you see the dead android, you need to hold Volume Down and then tap Volume Up once. Didn't help for me.
Forum post on XDA-Developers, OP is theorion (2013-06-11) on
TF700 WW (Nordic).
He discovered this link.
The key item was to call the zip file EP201_768_SDUPDATE.zip.
He says he got the dead droid until he renamed the file to use upper
case letters as shown, then Recovery would run.
that the dead android is a symbol saying that it could not apply
Thread on XDA-Developers by cheltenham2004 (2012-06-06, updated 2013-05-29 for the latest OTA system image). He gives the procedure to do the update. Summarizing his posting:
For me, the SD card was mounted but the notification icon for the update was not present. Yes I did remove all other zip files from the root of both the internal and removable SD cards.
I booted into Recovery but it still had the dead android. Even minus the SD card.
Now there are no zip files anywhere in /storage/sdcard0 (or anywhere else that I could find). Still the dead android. Hmm, I declined an OTA update, probably to 10.6.1.14.8-20130514 4.2.1. Is it sitting somewhere? Somewhere to which I lack read permission? Scorched earth solution: I will do a factory reset using fastboot. And not enable wi-fi. See here for the procedure. Very simple: find it in Settings-Backup and Reset. Goodbye, cruel world. It reboots, drops into Recovery for longer than on previous tries, does whatever it's doing for about a minute, then reboots. This reboot takes extra time because it wiped the Dalvik cache and it has to compile all the Java bytecode. Eventually it gets to the Welcome dialog. I skipped Wi-Fi setup, and therefore I could not specify my Google account. Now I powered off the device and inserted the SD card with the ICS system image. Then booted into Recovery. Another dead android. With or without the SD card.
I noticed that the booter menu includes an icon for fastboot, not greyed out. Nonetheless, I think I need to unlock the machine before the bootloader will boot the CyanogenMod image.