# [GUIDE] nvFlash General Users Guide [Unbrick/Recover/Downgrade/Upgrade]- TF201



## craigacgomez

*AIM:* This is a general users guide to unbrick, recover, downgrade or upgrade using nvFlash for the Transformer Prime TF201. I will try my best to help anyone out so please feel free to PM me if you have any questions.

*REQUIREMENTS:*
1. Transformer Prime TF201 (duh!!!)
2. Enabled nvFlash access (Tegra 3 nvFlash by AndroidRoot)
3. Window or Linux computer [Linux recommended]
4. Ability to use a command prompt or terminal shell
5. nVidia APX drivers [Windows Only] (Universal Naked Drivers)
6. Wheelie & nvFlash binaries/executables
7. You device specific nvFlash backup files generated while enabling nvFlash

*THIS GUIDE COVERS:*
1. Manual steps for basic unbrick, recovery, downgrade or upgrade [Windows & Linux]
2. Automated complete factory reset & recovery [Linux Only]\

*IMPORTANT INFORMATION:*
At the moment, nvFlash can only be enabled on a device with the 9.4.2.28 ICS bootloader. If you have upgraded to the official Jelly Bean ROM before enabling nvFlash, you would have the new 10.4.2.15 bootloader and you will no longer be able to enable nvFlash. When following this guide, read the information provided carefully to prevent any permanent damages. Be patient as each step may take a while to complete. Make sure your device is charged (recommended more that 75% battery) before attempting anything detailed here. Do not forcefully power off your device at the wrong time. Keep you device connected to your computer during the whole process.

*WHY ENABLE NVFLASH:*
nvFlash would allow you to recover your device from almost any brick and would allow you to upgrade or downgrade your device.

*SETUP:*
1. Download the nvFlash binary/executable for your operating system [ Windows / Linux ]
2. Download the wheelie binary/executable for your operating system [ Windows / Linux ]
3. Install the APX drivers [ Windows Only ]

*FOR LINUX USERS:*
Make sure you always run nvflash and wheelie as root or sudo. If your user does not have root privileges or is not a sudoer, you will quite likely not be able to do this. If you are a root user, do not use the sudo prefix in the commands below.

*INSTRUCTIONS [MANUAL STEPS]:*
1. Download an un-blob'd ROM (links below). [Advanced users can use BlobTools (blobunpack) and unblob a ROM. Make sure you have compatible unblob'd images of the bootloader, recovery, kernel & system]
2. Extract wheelie, nvFlash and the unblob'd ROM to a directory (avoid spaces in the directory path)
3. Start your device in APX mode [Power On + Volume Up]. Your tablet screen will remain blank in APX mode.
4. Bootstrap your device (enter nvFlash mode) while your device is in APX mode using wheelie


> _Windows:_
> 
> 
> Code:
> 
> 
> wheelie.exe --blob blob.bin
> 
> _Linux:_
> 
> 
> Code:
> 
> 
> sudo ./wheelie --blob blob.bin


5. After wheelie does it's job, your device will be ready in nvFlash mode. You can now begin the process.
6. We start with the bootloader. In the case of the un-blob'd ROMs below, this is the blob.EBT file. To flash the bootloader, use this command:


> _Windows:_
> 
> 
> Code:
> 
> 
> nvflash.exe -r --download 4 blob.EBT
> 
> _Linux:_
> 
> 
> Code:
> 
> 
> sudo ./nvflash -r --download 4 blob.EBT


7. Next we move to the recovery image. In the case of the un-blob'd ROMs below, this is the blob.SOS file. To flash the recovery image, use this command:


> _Windows:_
> 
> 
> Code:
> 
> 
> nvflash.exe -r --download 5 blob.SOS
> 
> _Linux:_
> 
> 
> Code:
> 
> 
> sudo ./nvflash -r --download 5 blob.SOS


8. Next we move to the boot image. In the case of the un-blob'd ROMs below, this is the blob.LNX file. To flash the boot image, use this command:


> _Windows:_
> 
> 
> Code:
> 
> 
> nvflash.exe -r --download 6 blob.LNX
> 
> _Linux:_
> 
> 
> Code:
> 
> 
> sudo ./nvflash -r --download 6 blob.LNX


9. Next we move to the system image. In the case of the un-blob'd ROMs below, this is the blob.APP file. To flash the system image, use this command:


> _Windows:_
> 
> 
> Code:
> 
> 
> nvflash.exe -r --download 10 blob.APP
> 
> _Linux:_
> 
> 
> Code:
> 
> 
> sudo ./nvflash -r --download 10 blob.APP


10. Finally, we reboot the device. After you run the following command, you will see the text "AndroidRoot 9.4.2.28" and your device should reboot in a few seconds. If you device does not reboot after you see the text, force a reboot (long press the Power button)


> _Windows:_
> 
> 
> Code:
> 
> 
> nvflash.exe -r --go
> 
> _Linux:_
> 
> 
> Code:
> 
> 
> sudo ./nvflash -r --go


*SEMI-AUTOMATED COMPLETE RECOVERY - LINUX ONLY:*
This process completely wipes all partitions (except external SD/mSD cards) and reflashes everything, essentially returning your device to a near factory state. You will not lose you unlock status or nvFlash access. You will lose all data from your internal storage (/storage/sdcard0 or /data/media).
Unfortunately, due to technical reason, this process is possible only using Linux, since the nvflash executable for Windows is very old and cannot handle this process. I will be creating a detailed step-by-step guide for those not comfortable with Linux. But for now, this is available for all those who know how to use Linux.
To use this, you need to download one of the unblob'd stock ROMs below (or create your own) along with the semi-automated complete recovery zip below.
You will also need the device specific nvFlash backup generated when you enabled nvFlash.
Complete instruction are in the "README" file in the semi-automated complete recovery zip.

*DISCLAIMER:* nvFlash can save your device, but if used incorrectly, it could permanently brick your device. If you follow the instructions carefully, you should not have any problems. However, in the event that you do have a problem, neither I (craigacgomez), nor the AndroidRoot team can be held responsible. Use this guide at your own discretion. If you need help or do not understand something, PM me and I will try to help you as much as I can.

*DOWNLOADS:*

*UN-BLOB'D STOCK ICS 9.4.2.28 ROM*
- Un-blob'd stock ICS 9.4.2.28 ROM
- Completely unmodified

*UN-BLOB'D STOCK JB 10.4.2.15 ROM*
- Un-blob'd stock JB 10.4.2.15 ROM
- Completely unmodified

*SEMI-AUTOMATED COMPLETE RECOVERY - LINUX ONLY* [Read Info Above Before Using This!!]

*CREDITS:*
AndroidRoot - Everything you see here has been made possible because of the AndroidRoot team.
nVidia

*SUPPORT THE PROJECT*
Donate to AndroidRoot - They are the amazing people behind nvFlash for the Prime
Donate to me (craigacgomez)


----------



## craigacgomez

_What is APX mode?_
APX mode is basically a programming mode or download mode for nVidia based devices. On a development device or an unrestricted device, when you get into APX mode, you can program your device using nvflash commands. Most production devices lock down APX mode and disable nvflash access. This is where wheelie comes into the picture for our devices.

_What is wheelie?_
Wheelie is an nvflash pre-loader that boots the tablet into an nvflash ready mode that lets you use regular nvflash commands (with -r prepended!). Wheelie was created by the amazing folks at AndroidRoot. Wheelie uses the "device specific" blob.bin file to bootstrap the device in APX mode and allow nvflash access. The blob.bin file has information like the Chip UID which is different for each devices and cannot be used interchangeably. If you get you device repaired or RMA'd and the motherboard is replaced, you would need to regenerate the blob.bin file.

_What is nvflash?_
nvflash is a low-level flash utility for nVidia based devices which gives you low level access to the system to flash, format, recover, repartition and do many more functions. It is a very powerful tool and should be used with caution. Read and follow all instruction carefully when using nvflash.

_What is "--r" in the nvflash command?_
The whole purpose of -r or --resume is to tell nvflash that the device is already running the nv3pserver (nvflash recovery mode), without -r or --resume it will try to do the preflight that wheelie does for us.

_What is "--download X" in the nvflash command?_
This parameter in the nvflash command is used to download/flash the specified file to partition X in the device. So the command "nvflash -r --download 4 blob.EBT" with download/flash the file blob.EBT to partition 4. These partitions are defined in the device partition table. The flash.cfg file in your nvflash backup is the partition table description if you want to know more details.

_What is "--go" in the nvflash command?_
This parameter in the nvflash command is used to boot bootloader after nvflash completes instead of looping in nv3pserver in resume mode. Basically it should exit resume mode and reboot your device.

_What is BlobTools?_
Once again, this is the genius brainchild and result of the amazing folks at AndroidRoot. The Asus Transformer series uses "blobs" to flash stuff. A blob can have multiple partitions (system, boot, recovery, bootloader). Blobs are moved to the staging partition (/dev/block/mmcblk0p4) and are automatically flashed upon reboot. The blob header defines where the different files in a blob get flashed to (boot gets flash to the boot partition, system to the system partition, etc.). BlobTools in a utility to create and extract these staging blobs. All blobs need to be extracted before being using with nvflash.

_I have already upgraded to Jelly Bean. Can I still use nvFlash?_
At the moment, nvFlash can only be enabled if the device is using the 9.4.2.28 ICS bootloader. If you have not yet enabled nvFlash and you have upgraded to the stock Jelly Bean ROM, you will have the 10.4.2.15 bootloader and you will no longer be able to enable nvFlash.
If you have already enabled nvFlash before upgrading to the stock Jelly Bean ROM, you will continue to have nvFlash access even though your bootloader was upgraded.


----------



## andrewjt19

Dude, the best write-up in a long time, I've seen.. I already have a RMA for Asus to reformat my tablet, but I haven't sent it in yet.. I'll try this and hopeful circumvent sending it to them. I have no guarantee they would do it anyways since its been unlocked. My only saving factor is that it is sooooo bricked right now, it won't do anything. Just a black screen. I can get into APX mode though, but that's it...

Sent from my Galaxy Nexus using RootzWiki


----------



## craigacgomez

andrewjt19 said:


> Dude, the best write-up in a long time, I've seen.. I already have a RMA for Asus to reformat my tablet, but I haven't sent it in yet.. I'll try this and hopeful circumvent sending it to them. I have no guarantee they would do it anyways since its been unlocked. My only saving factor is that it is sooooo bricked right now, it won't do anything. Just a black screen. I can get into APX mode though, but that's it...
> 
> Sent from my Galaxy Nexus using RootzWiki


If you want to completely re-factory format & flash your device, I will be releasing an automated script for Linux users only... it will wipe everything & restore your device.


----------



## andrewjt19

craigacgomez said:


> If you want to completely re-factory format & flash your device, I will be releasing an automated script for Linux users only... it will wipe everything & restore your device.


Yea, I wouldn't mind starting fresh. At this point, I'm going to try what you have up above but would def. give the script a try. Is it compatible with Ubuntu 12.04LTS, that's what I'm using.


----------



## craigacgomez

I've added the semi-automated complete recovery zip and information. Download and info in the OP.

This process completely wipes all partitions (except external SD/mSD cards) and reflashes everything, essentially returning your device to a near factory state. You will not lose you unlock status or nvFlash access. You will lose all data from your internal storage (/storage/sdcard0 or /data/media).

Unfortunately, due to technical reason, this process is possible only using Linux, since the nvflash executable for Windows is very old and cannot handle this process. I will be creating a detailed step-by-step guide for those not comfortable with Linux. But for now, this is available for all those who know how to use Linux.

To use this, you need to download one of the unblob'd stock ROMs (or create your own) along with the semi-automated complete recovery zip.

You will also need the device specific nvFlash backup generated when you enabled nvFlash.

Complete instruction are in the "README" file in the semi-automated complete recovery zip.


----------



## bigzaqui

Thanks so much for your hard work, looks like finally I'll be able to update to JB, I've already have my 5+3 files and I'm using the virtous prime (rooted .28 ICS). Could you please if I use the restore tool with the stock JB ROM I'll lose the root right?, I've been looking for some *UN-BLOB'D rooted *ROM but i have nothing...


----------



## craigacgomez

bigzaqui said:


> Thanks so much for your hard work, looks like finally I'll be able to update to JB, I've already have my 5+3 files and I'm using the virtous prime (rooted .28 ICS). Could you please if I use the restore tool with the stock JB ROM I'll lose the root right?, I've been looking for some *UN-BLOB'D rooted *ROM but i have nothing...


You could flash the ROM and then flash TWRP via fastboot, and the flash Superuser or any other JB-bootloader compatible ROM of your choice...


----------



## Synical_99

This is probably a dumb question but here it goes. Is there a certain method on rooting your prime brick proof (meaning able to recover from any brick and restore back to factory)? I've never rooted since i got it and updated to the new JB stock OTA.


----------



## Voyager2k

Synical_99 said:


> This is probably a dumb question but here it goes. Is there a certain method on rooting your prime brick proof (meaning able to recover from any brick and restore back to factory)? I've never rooted since i got it and updated to the new JB stock OTA.


Enabling nvFlash makes your prime nearly brick proof, but it can't be done on the JB update.


----------



## Synical_99

So what will be the alternative if i took the JB update and never rooted my prime before???


----------



## Voyager2k

You can still unlock the bootloader , flash a custom recovery, and install a pre-rooted ROM, you just need to make sure it is built for the JB bootloader.

Sent from my Prime using RootzWiki


----------



## Synical_99

Voyager2k said:


> You can still unlock the bootloader , flash a custom recovery, and install a pre-rooted ROM, you just need to make sure it is built for the JB bootloader.
> 
> Sent from my Prime using RootzWiki


Thanks for the info. Now its a matter on working up the courage to do so. Dont know why but its so easy for me to do it on my mobile phones without hesitation but when it comes to my prime i just hold it ever so closely... >.<


----------



## kimir

craigacgomez said:


> 4. Bootstrap your device (enter nvFlash mode) while your device is in APX mode using wheelie


 It cannot find a blob.bin file... Should it be the ebtblob.bin file?
http://puu.sh/1J8C4 and http://puu.sh/1J8Ex


----------



## Voyager2k

I believe ebtblob.bin is the AndroidRoot bootloader. blob.bin should have been generated while enabling nvFlash. It also needs to be in the same directory as wheelie.


----------



## wwjoshdew

I have made a video on how to run NVFlash on the Transformer Prime. It's had a TON of good feedback and success stories, so I thought I'd share it on here as well! 






Sent from my ASUS Eee Pad Transformer Prime TF201 using Tapatalk HD


----------



## fullcontrol

where is location in root witch folder is blob.bin and other receovery files as needed for recovery
i want to know how to copy it without use any platform tools for terminal any backup utility

thank you


----------



## blade2k11

Hey, thanks for this. I made nvflash back in the day but had no clue how to use it to unbrick.Now I managed to sort out nvflash binaries to get into it. but I get stuck when trying to flash anything, because it looks like it can't find any partitions. I have a "factory-config.img" would that restore my partition table, and if so how to flash it in nvflash. By the way, it's now stuck in APX mode. Thx.


----------



## Bigsike

I can get the device into APX mode but windows will not load the driver any more no matter which one I use. Currently using the naked drivers but it just errors out. Any ideas anyone?


----------



## slomo64

@ craigacgomez - do you have a guide for people already on JB? with no NVFlash? could've sworn i installed it when i did my first ICS ROM flash :huh:

fixed tablet and nvflashed it using "Flatline Jelly Bean edition" using linux. windoze is useless


----------



## jawal37

nvflash give me erreur

0X04

AND DEVICE DESCONNCTE


----------



## madbas

Hi. I would like to protect my device with nvflash before setup first rom.
I read guide about access to nvflash: 
androidroot.mobi/pages/guides/tegra3-guide-nvflash-jellybean
and
matthill.eu/android/transformer-prime-tf201-jellybean-nvflash

But I am not sure it's valid for my bootloader version. I have TF 201 with Jelly Bean and 10.4.2.18 bootloader. This bootloader comes from officials updates.

I am especially afraid this step: "wheelie / advances / Step 1: Flash AndroidRoot BL". It is can brick my device because of other version of bootloader? In guide is marked version: *10.4.2.15*.

I really need help! 
Best regards.


----------



## mkpott

Hi

I'm trying to restore an old Transformer TF201 and have downloaded blob.bin and blob.EBT. However when I try to download blob.SOS I get a message to say that it has started and the [resume mode] message but then nothing further happens. I've even left it overnight but it just won't go any further.

Maybe I shouldn't have started this. Any help would be really appreciated

Thanks

Alan


----------



## wraskob

Do you know if there is anywhere else where the guide to access nvflash on an ICS tf201 is? The page is "not found" anymore on the androidroot blog. It seems everyone has upgraded to JB already, but I never got the JB ota update before I unlocked my bootloader, and I never performed the steps here to install a custom recovery. So it appears I am stuck.


----------



## Covetous02

Hello guys,

There is link on *UN-BLOB'D STOCK JB 10.4.2.15 ROM that is not working. *

*Please repair it.*

*Thx*


----------



## ivansword

Covetous02 said:


> Hello guys,
> 
> There is link on *UN-BLOB'D STOCK JB 10.4.2.15 ROM that is not working. *
> 
> *Please repair it.*
> 
> *Thx*


Do your *research*, *invest* the time, and* learn *how to make your own UN-BLOB'D files. If your to the point where you need 'em, you should know how to make em. If you can't, then respectfully it may be better you don't use them; whereas, it may end up even worse. Rely on yourself before others. Search for BLOB tools. You'll find the way. Good luck brother...


----------



## jonafun

ivansword said:


> Do your *research*, *invest* the time, and* learn *how to make your own UN-BLOB'D files. If your to the point where you need 'em, you should know how to make em. If you can't, then respectfully it may be better you don't use them; whereas, it may end up even worse. Rely on yourself before others. Search for BLOB tools. You'll find the way. Good luck brother...


Sorry for reviving this old thread, but I'm in a similar boat that seems to have sailed already. Lots of links are broken and the documentation on using NVFlash are very sparse and difficult to understand. I'm trying to revive a nearly bricked TF201 today. I've got the blobs and stuff when I enabled NVFlash, but i've a corrupted partition now that needs restoring in APX mode. If anyone is out there and can help me with this, I'd greatly appreciate that.

I have:

a TF 201 that only boots into APX mode (TWRP is stuck in a RecoveryScript loop and completely skips over Fastboot)
Windows 10 machine that interfaces in APX
WW firmware downloaded from ASUS
time and a willingness to research, learn, and try

I need:

unblobed stock JB on the WW firmware OR a guide on how to create one myself (or at least a working link to a guide!)
a working link to the semi-auto linux script
probably a linux machine, but I can use oracle if given a step-by-step guide

Thanks,
Jon


----------

