[HOW-TO] How to flash a factory image / return to stock / unlock / root #

Search This thread

efrant

Retired Senior Moderator & Developers Relations
Feb 12, 2009
11,469
10,985
Montreal
Samsung Galaxy S20
I have created this thread to give a step-by-step on how to flash a stock ROM build available on Google's developer site. (For those that are unaware, an unlocked bootloader is needed, and unlocking is part of the instructions below.)

I've also added a section on how to root for those that want it.

Note: There are other methods that are abbreviated and/or faster, but I wanted to spell out each step in the process for the purposes of learning. I'm a big believer in doing things manually before using a "toolkit", much the same way that, in school, we are taught to do math first, before being allowed to use a calculator. See here for some further explanation.

So, without further ado:

How to flash a stock ROM

Step-by-step

Notes:
1) For the n00bs: read the entire post before proceeding;
2) MacOS-specific instructions: a) no drivers needed, and b) replace fastboot in the steps below with ./fastboot-mac

A. Install the drivers
1) Do not install LG drivers or the PDAnet drivers, or any other driver you come across. If you have, and you are SURE they are working properly, fine, leave them. Otherwise uninstall them if you are unsure;
2) Download the drivers from here or from here;
3) Install the drivers. See here on how to install them. Note that the driver has to install twice: once when your device is booted normally (not required for this tutorial) with USB Debugging enabled in Settings, and once when your device is booted in fastboot (i.e., bootloader) mode (which is required for this tutorial). (To enable USB Debugging, you first need to enable Developer options by going to Settings->About phone and tapping 7 times on the build number.) If you are using Windows 8, you will need to do this before installing the drivers.

B. Backup your data
1) Backup all your personal data (e.g., photos, music, etc.) OFF of your device and onto your computer by using whatever method you want that works for you, e.g., MTP, ADB, email, Dropbox, Box.net, whatever.
2) This method will wipe your entire device, including the /sdcard folder, so once you do this, you will not be able to retreive anything that was on your device previously.
3) See here on how to backup your apps and app data if you don't have root.

C. Download the required files to your computer and extract them
1) All of the files that are required, need to be in one (i.e., the same) directory. It does not matter what it is called, but all the files need to be in there, with NO subfolders. EVERYTHING needs to be extracted into this one directory;
2) Download the attachment from the end of this post and extract the contents to the directory created in step 1. (Latest version for Windows is here). Note: if all you want to do is unlock your bootloader, skip to step 7 in this section (C).
3) Download the version of Android you want from here. Make sure you are using an occam image which is for the Nexus 4. Most old versions are not usually available on that site; however, there is a mirror on this site: Random Phantasmagoria.
4) Download the appropriate version (for your computer) of 7-zip from here and install it.
5) Extract the files from within the .tgz file which you downloaded in step 3 using 7-zip, not WinZip or WinRAR or whatever.
6) Make sure you have extracted ALL the files (including extracting any files in any archives inside the .tgz file). You should have six (6) files ending with .img in the directory you created in step 1. The other files you extracted from the .tgz are not necessary;
7) Reboot your device into bootloader mode (by turning it off, hold volume down, and press and hold power) and plug it into your computer;
8) Open a command prompt in the same directory (i.e., make sure you are in the same directory as your files are located). You can hold the shift key when you are in the folder in Windows explorer and right-click in a blank spot and it will open a command prompt.

D. Type in the commands into the command prompt
1) Make sure your computer recognizes your device by typing: fastboot devices
2) Unlock your bootloader (if you have not already done so): fastboot oem unlock
3) You will see a prompt on your device. This will wipe your entire device (including the /sdcard folder). Accept. Note: you use the volume keys to change the option and the power button to accept. You cannot use the touch screen.
4) Reboot by typing: fastboot reboot-bootloader
5) Flash the bootloader: fastboot flash bootloader bootloader-mako-makoz10o.img (or whatever the name of the bootloader image that you downloaded).
6) Reboot: fastboot reboot-bootloader
7) Flash the radio: fastboot flash radio radio-mako-m9615a-cefwmazm-2.0.1700.48.img (or whatever the name is of the radio image that you downloaded).
8) Reboot: fastboot reboot-bootloader
9) Flash the system partition: fastboot flash system system.img
10) Optional, but read note. Flash the data partition: fastboot flash userdata userdata.img Note: this command will wipe your device (including /sdcard), EVEN if your bootloader is already unlocked. See note 2 below.
11) Flash the kernel/ramdisk: fastboot flash boot boot.img
12) Flash the recovery partition: fastboot flash recovery recovery.img
13) Erase the cache partition: either a) fastboot erase cache OR b) fastboot format cache <<== the second option seems to work better for most people. Thanks joostburg.
14) Reboot: fastboot reboot
15) Done! The first boot will likely take quite a bit longer than you are used to, as Android builds the Dalvik cache.

Now you have a fully stock image on your device. The only thing that is different from out-of-the-box condition is that your bootloader is unlocked. See the notes section at the end of this post for information on re-locking the bootloader.

Note that some users indicate that they can't get past the X on boot. If this happens to you, reboot into the bootloader and select recovery. Then, when you see the Android with the red exclamation mark, hold power and press volume up to take you to the menu. Wipe cache. If that still doesn't work, boot back into recovery and do a factory reset (this will obviously delete all your data & files in /sdcard...).

If you have a 16GB device, and it now shows up as 8GB, reboot into recovery (hold power and press volume up when you are at the screen with the android and the red exclamation mark), and wipe cache. If that still doesn't work, boot back into recovery and do a factory reset (which will obviously delete all your data & files in /sdcard...). Or do this.

E. Optional -- Root
If you want to get root access follow the steps below. (And no, this will not flash a custom recovery, and not, it will not make you "not stock".) Unlocked bootloader required. See steps above.

1) Download (to your computer) the latest version of CWM (from here) or TWRP (from here) for your device;
2) Rename the file to customrecovery.img, and make sure it is in the same directory as your fastboot.exe file;
3) Download (to /sdcard on your device) the latest version of either ChainsDD's Superuser (not currently working), or Chainfire's SuperSU or Koush's Superuser; NOTE: So far, only SuperSU v1.43 and newer currently work properly with JWR66V (i.e., 4.3). I've attached v1.51 below.
4) Restart your device in fastboot mode and plug into computer;
5) Open a command prompt in the directory mentioned above and type: fastboot boot customrecovery.img Note: Only if you are running the z20i bootloader: the command would be: fastboot -c "lge.kcal=0|0|0|x" boot customrecovery.img Thanks hwti & el_charlie
6) Wait for it to boot;
7) Navigate the menus the recovery menu on your device and select an option like "update zip from sdcard". Find the zip that you downloaded, and apply it.
8) Reboot. Done.

Notes:
1) Yes, you will receive the OTA update notification (when it is available) for the next update. WHEN you get the update notification, IF you want it to install automatically, you will need to ensure that that you are using the bootloader, radio, boot, radio and recovery images for the .tgz package you downloaded. Otherwise, the update will not install automatically.
2) There has been a lot of uncertainty and questions around stock ROMs and losing/wiping data. You CAN flash a stock ROM WITHOUT losing the data stored in /sdcard (and possibly even all apps and app data, although this depends on which apps you have installed). This can be done by skipping step 10 in part D. However, if your device goes into a boot loop, you will need to boot CWM, and wipe data <-- this will wipe your apps and app data, but not /sdcard.
3) Do NOT re-lock your bootloader after you are finished. The is no need. 2) Having an unlocked bootloader does not affect anything related to the ROM/GoogleWallet/OTAs. Nothing at all. If your bootloader is locked, you CANNOT use fastboot commands. This is pretty much the only thing it affects. If your bootloader is locked, and you need to unlock it, it will wipe everything, including /sdcard. This is the major drawback of re-locking your bootloader. If you do want to lock your bootloader, the command is: fastboot oem lock
 

Attachments

  • platform-tools-v16.zip
    1.7 MB · Views: 41,275
  • UPDATE-SuperSU-v1.51.zip
    1.1 MB · Views: 13,766
Last edited:

efrant

Retired Senior Moderator & Developers Relations
Feb 12, 2009
11,469
10,985
Montreal
Samsung Galaxy S20
How to return to stock if your USB port is broken

I am adding this how-to in case people need it, for return their device to Google, etc.

This is NOT meant to replace going through the steps in post #1. They are there for your learning, and should be used as a primary method of returning your device to stock. However, if your USB port is indeed messed up, then you will not be able to use the instructions in post #1.

Warning: if your USB port is indeed broken, and you complete all the steps below, you will have NO possible way at all to unlock your bootloader, or get root, or install a custom recovery. Period.

1) Ensure that you have root, and a custom recovery (CWM or TWRP) installed;
2) Download segv11's BootUnlocker app from the Play Store, install it and lock your bootloader with it;
3) Download the odexed version of this file (stock JDQ39 ROM) and place it on your device;
4) Download the JDQ39 stock boot image from here and the stock JDQ39 recovery from here.
5) If you want, you can also download the 0.48 radio and the z10o bootloader from here.
6) Reboot into CWM and flash the three files you downloaded in steps 3 and 4, and the file(s) you downloaded in step 5;
5) Turn off your device and reboot into the bootloader;
6) Go to recovery and access the stock recovery menu (i.e., when you see the android with the red triangle, hold power and press vol up) and do a factory reset and then wipe cache.
7) Reboot your device. Do NOT install any OTA updates if they present themselves. Read and follow this post.
8) Done. Now you are fully stock JDQ39 with a locked bootloader.
 
Last edited:

tomedic

Senior Member
May 1, 2010
63
4
Ok...

So I consider myself fairly good at this stuff. I've been rooting and doing custom stuff since the N1. I have messed up somewhere...

So initially I used the "1-click" script method (I know) to unlock/root/BB/etc... It worked, but then I decided to go into recovery and wipe everything (inlcluding /format system) in CWR.

That ended up being unable to get passed the Google screen.

I then used your method, which appeared to work...

First time through it got to the "X" and just sat there for 5+ minutes (I unplugged the USB about a minute after it rebooted). I then attempted to restart and nothing.

I tried a second time and instead of it going to the "X" then screen just went black. The device is now recognized as a Nexus 4 under USB devices on my computer, but the screen is off and I can't turn it on. I just unplugged it and now nothing! It can't turn on!

Ummmm... ****! I even rooted the Desire HD back when you had to do a bunch of weird terminal stuff. What happened? Little help?

EDIT - Ummm I managed to get it turned on. I tried in bootloader and eventually it turned on. However it went staright to the Google screen with these weird graphical glitches, now it's on the "X" but I can still see "google" behind it. I'll leave it for a bit and see what happens....

Jesus...
 
Last edited:
  • Like
Reactions: hepatiit

efrant

Retired Senior Moderator & Developers Relations
Feb 12, 2009
11,469
10,985
Montreal
Samsung Galaxy S20
So initially I used the "1-click" script method (I know) to unlock/root/BB/etc...
Yeah, you know I personally don't recommend that ;)

It worked, but then I decided to go into recovery and wipe everything (inlcluding /format system) in CWR.

That ended up being unable to get passed the Google screen.
If you wipe system, there's nothing to boot to, so it certainly won't get past the Google screen.

I then used your method, which appeared to work...

First time through it got to the "X" and just sat there for 5+ minutes (I unplugged the USB about a minute after it rebooted). I then attempted to restart and nothing.

I tried a second time and instead of it going to the "X" then screen just went black. The device is now recognized as a Nexus 4 under USB devices on my computer, but the screen is off and I can't turn it on. I just unplugged it and now nothing! It can't turn on!

EDIT - Ummm I managed to get it turned on. I tried in bootloader and eventually it turned on. However it went staright to the Google screen with these weird graphical glitches, now it's on the "X" but I can still see "google" behind it. I'll leave it for a bit and see what happens....
Boot back into CWM, wipe data, then boot into the bootloader, and re-flash the boot and system images, and erase the cache. Then reboot, and wait a good 5-10 mins for it to start.
 

tomedic

Senior Member
May 1, 2010
63
4
Yeah, you know I personally don't recommend that ;)

If you wipe system, there's nothing to boot to, so it certainly won't get past the Google screen.

Boot back into CWM, wipe data, then boot into the bootloader, and re-flash the boot and system images, and erase the cache. Then reboot, and wait a good 5-10 mins for it to start.

Ya, I did the format system out of habit because I usually did that when flashing ROM's.

So I'm still staring at the X. The graphically glitches have cleared up, but it's been 10+ minutes. I restarted into bootloader, went to recovery and have the andoid showing with a red exclamation mark!

I turned the phone off. I await your guidance...
 

efrant

Retired Senior Moderator & Developers Relations
Feb 12, 2009
11,469
10,985
Montreal
Samsung Galaxy S20
Ya, I did the format system out of habit because I usually did that when flashing ROM's.

So I'm still staring at the X. The graphically glitches have cleared up, but it's been 10+ minutes. I restarted into bootloader, went to recovery and have the andoid showing with a red exclamation mark!

I turned the phone off. I await your guidance...
The android with the red exclamation mark is the main screen of the stock recovery. (I'm assuming you flash it if you followed the guide in post 1. You need to re-flash CWM if you want CWM.) As an aside: if you want to see the menu, hold power and press volume up.

Ok, do you have data on your device you want to keep?

If not, do this: reboot into the bootloader and flash the following images as per the instructions in the first post: boot, system and userdata, and then erase the cache partition as per the first post.

If yes, then do this: reboot into the bootloader and flash the following images as per the instructions in the first post: boot and system. Then flash CWM. Then boot into CWM, and wipe data, and wipe cache. Then reboot.
 

tomedic

Senior Member
May 1, 2010
63
4
The android with the red exclamation mark is the main screen of the stock recovery. (I'm assuming you flash it if you followed the guide in post 1. You need to re-flash CWM if you want CWM.) As an aside: if you want to see the menu, hold power and press volume up.

Ok, do you have data on your device you want to keep?

If not, do this: reboot into the bootloader and flash the following images as per the instructions in the first post: boot, system and userdata, and then erase the cache partition as per the first post.

If yes, then do this: reboot into the bootloader and flash the following images as per the instructions in the first post: boot and system. Then flash CWM. Then boot into CWM, and wipe data, and wipe cache. Then reboot.

I don't want to keep data. I chose that option (but didn't reboot the bootloader after boot.img because you said not too). It just went to the "X". I'll wait...

---------- Post added at 10:05 PM ---------- Previous post was at 09:50 PM ----------

I don't want to keep data. I chose that option (but didn't reboot the bootloader after boot.img because you said not too). It just went to the "X". I'll wait...

Still nothing. Just the "X" animation. No graphical glitches though. It's been 15 minutes.

Any other suggestions? Your stuff works, it's just not booting...
 

efrant

Retired Senior Moderator & Developers Relations
Feb 12, 2009
11,469
10,985
Montreal
Samsung Galaxy S20
Still nothing. Just the "X" animation. No graphical glitches though. It's been 15 minutes.

Any other suggestions? Your stuff works, it's just not booting...
Strange. All the images flashed fine (without errors) and it won't boot?

Can't think of anything else to try at the moment.



Sent from my Galaxy Nexus using Tapatalk 2
 

evaradar

Senior Member
Aug 29, 2010
261
34
Toronto
Question, is there a reason to flash stock image at all if we get the phone brand new? Or is this only if we are coming from a custom ROM? Reason I ask, its not the question of build versions like the Galaxy Nexus - yakjux, and then flashing to yakju/takju, etc.

Just verifying that's all.
 

tomedic

Senior Member
May 1, 2010
63
4
Strange. All the images flashed fine (without errors) and it won't boot?

Can't think of anything else to try at the moment.



Sent from my Galaxy Nexus using Tapatalk 2

No errors, I checked the MD5 of the factory image and it's fine. I even re-downloaded it. I did every step as listed in your procedure (even the optional ones). The phone is dead now, it's charging. It spent over 20 minutes on the X. Everything seems to work per your instructions. I don't get it. Could something be corrupted on my phone itself? System/Boot/Recovery images are all dated Jan 1/09, but I assume that's correct (it's from Google after all). Should I try directly flashing CWM recovery instead of stock during the initial process? I dunno...

I will try your method from the beginning again tomorrow.

I assume I'm not bricked if I can still do this stuff. It doesn't bode well if you don't know what's wrong either. I appreciate any further help/suggestions...
 

efrant

Retired Senior Moderator & Developers Relations
Feb 12, 2009
11,469
10,985
Montreal
Samsung Galaxy S20
Question, is there a reason to flash stock image at all if we get the phone brand new? Or is this only if we are coming from a custom ROM? Reason I ask, its not the question of build versions like the Galaxy Nexus - yakjux, and then flashing to yakju/takju, etc.

Just verifying that's all.

No, no reason to flash a stock image on a brand new phone. Only if you want to go back to stock following a custom ROM.

Sent from my Galaxy Nexus using Tapatalk 2
 

Maverick1707

Member
Nov 7, 2012
16
11
No errors, I checked the MD5 of the factory image and it's fine. I even re-downloaded it. I did every step as listed in your procedure (even the optional ones). The phone is dead now, it's charging. It spent over 20 minutes on the X. Everything seems to work per your instructions. I don't get it. Could something be corrupted on my phone itself? System/Boot/Recovery images are all dated Jan 1/09, but I assume that's correct (it's from Google after all). Should I try directly flashing CWM recovery instead of stock during the initial process? I dunno...

I will try your method from the beginning again tomorrow.

I assume I'm not bricked if I can still do this stuff. It doesn't bode well if you don't know what's wrong either. I appreciate any further help/suggestions...

It happened to me the same thing... I did everything right just as suggested in every step, but my phone won't get past the X logo... I solved it by going to the stock recovery (unhide the menu by pressing POWER+VOL. UP), wipe data/factory reset, wipe cache partition. Reboot (to me it rebooted automatically after wiping the cache partition) and everything went fine, it took very few time to get past the X logo...

Hope it works for you too.
 
Last edited:

efrant

Retired Senior Moderator & Developers Relations
Feb 12, 2009
11,469
10,985
Montreal
Samsung Galaxy S20
It happened to me the same thing... I did everything right just as suggested in every step, but my phone won't get past the X logo... I solved it by going to the stock recovery (unhide the menu by pressing POWER+VOL. UP), wipe data/factory reset, wipe cache partition. Reboot (to me it rebooted automatically after wiping the cache partition) and everything went fine, it took very few time to get past the X logo...

Hope it works for you too.
This is indeed strange, as steps D10 and D13 do exactly that: factory reset and wipe cache.

In any case, I will make a note of it in the first post.
 
Last edited:
  • Like
Reactions: tomedic

evaradar

Senior Member
Aug 29, 2010
261
34
Toronto
No, no reason to flash a stock image on a brand new phone. Only if you want to go back to stock following a custom ROM.

Sent from my Galaxy Nexus using Tapatalk 2

Gotcha. By the way when I rooted the Nexus 4 even before this guide, I know how to do it but I had one slight issue after flashing TWRP's latest recovery. When I tried to enter Recovery mode on the phone I got the Red Triangular Exclamation mark, even after flashing the stock recovery back. To get it working I had to type in fastboot erase cache to get it working then rebooted the bootloader to test it out and it was fine.

Then after installing SuperSu using TWRP, it got stuck on the Nexus logo, even after pressing down on the Power Key for 10 seconds or slightly longer same thing. Then I resolved the problem by clearing cache and dalvik cache using TWRP and it solved the problem.

So just a heads up if anyone runs into this problem.
 

tomedic

Senior Member
May 1, 2010
63
4
It happened to me the same thing... I did everything right just as suggested in every step, but my phone won't get past the X logo... I solved it by going to the stock recovery (unhide the menu by pressing POWER+VOL. UP), wipe data/factory reset, wipe cache partition. Reboot (to me it rebooted automatically after wiping the cache partition) and everything went fine, it took very few time to get past the X logo...

Hope it works for you too.

It worked! Thanks man!

And thank you efrant. Now to switch recoveries and get root! :laugh:

---------- Post added at 10:55 AM ---------- Previous post was at 10:40 AM ----------

Gotcha. By the way when I rooted the Nexus 4 even before this guide, I know how to do it but I had one slight issue after flashing TWRP's latest recovery. When I tried to enter Recovery mode on the phone I got the Red Triangular Exclamation mark, even after flashing the stock recovery back. To get it working I had to type in fastboot erase cache to get it working then rebooted the bootloader to test it out and it was fine.

Then after installing SuperSu using TWRP, it got stuck on the Nexus logo, even after pressing down on the Power Key for 10 seconds or slightly longer same thing. Then I resolved the problem by clearing cache and dalvik cache using TWRP and it solved the problem.

So just a heads up if anyone runs into this problem.

Yup, I just rooted and had to do the same thing.

I assume if I wanted to keep the custom recovery I would just have to: fastboot flash recovery customrecovery.img ?

Thanks again all. These little hiccups make it interesting!
 

efrant

Retired Senior Moderator & Developers Relations
Feb 12, 2009
11,469
10,985
Montreal
Samsung Galaxy S20
By the way when I rooted the Nexus 4 even before this guide, I know how to do it but I had one slight issue after flashing TWRP's latest recovery. When I tried to enter Recovery mode on the phone I got the Red Triangular Exclamation mark, even after flashing the stock recovery back. To get it working I had to type in fastboot erase cache to get it working then rebooted the bootloader to test it out and it was fine.
As I mentioned before, the "Red Triangular Exclamation mark" is the stock recovery. It gets flashed on every re-boot if you updated you stock ROM via an OTA update. More details on this in this thread.

Then after installing SuperSu using TWRP, it got stuck on the Nexus logo, even after pressing down on the Power Key for 10 seconds or slightly longer same thing. Then I resolved the problem by clearing cache and dalvik cache using TWRP and it solved the problem.
Again, interesting. Not sure why this is.

I assume if I wanted to keep the custom recovery I would just have to: fastboot flash recovery customrecovery.img ?
Correct.
 

jimmyz

Senior Member
Jun 29, 2007
376
26
As I mentioned before, the "Red Triangular Exclamation mark" is the stock recovery. It gets flashed on every re-boot if you updated you stock ROM via an OTA update. More details on this in this thread.


Again, interesting. Not sure why this is.


Correct.

I'm assuming that like the GN we need to rename the recovery-from-boot.p file if we want our custom recovery to survive a reboot?
EDIT- never mind I just looked through your 101 thread and answered my own question- thanks!!
 
Last edited:

spaceman860

Senior Member
Jan 11, 2012
2,642
3,278
Thank you for making this thread over here. Glad to have you as a moderator. I hope every noob reads all of your threads.

Sent from my BAKED N7
 

Top Liked Posts

  • There are no posts matching your filters.
  • 590
    I have created this thread to give a step-by-step on how to flash a stock ROM build available on Google's developer site. (For those that are unaware, an unlocked bootloader is needed, and unlocking is part of the instructions below.)

    I've also added a section on how to root for those that want it.

    Note: There are other methods that are abbreviated and/or faster, but I wanted to spell out each step in the process for the purposes of learning. I'm a big believer in doing things manually before using a "toolkit", much the same way that, in school, we are taught to do math first, before being allowed to use a calculator. See here for some further explanation.

    So, without further ado:

    How to flash a stock ROM

    Step-by-step

    Notes:
    1) For the n00bs: read the entire post before proceeding;
    2) MacOS-specific instructions: a) no drivers needed, and b) replace fastboot in the steps below with ./fastboot-mac

    A. Install the drivers
    1) Do not install LG drivers or the PDAnet drivers, or any other driver you come across. If you have, and you are SURE they are working properly, fine, leave them. Otherwise uninstall them if you are unsure;
    2) Download the drivers from here or from here;
    3) Install the drivers. See here on how to install them. Note that the driver has to install twice: once when your device is booted normally (not required for this tutorial) with USB Debugging enabled in Settings, and once when your device is booted in fastboot (i.e., bootloader) mode (which is required for this tutorial). (To enable USB Debugging, you first need to enable Developer options by going to Settings->About phone and tapping 7 times on the build number.) If you are using Windows 8, you will need to do this before installing the drivers.

    B. Backup your data
    1) Backup all your personal data (e.g., photos, music, etc.) OFF of your device and onto your computer by using whatever method you want that works for you, e.g., MTP, ADB, email, Dropbox, Box.net, whatever.
    2) This method will wipe your entire device, including the /sdcard folder, so once you do this, you will not be able to retreive anything that was on your device previously.
    3) See here on how to backup your apps and app data if you don't have root.

    C. Download the required files to your computer and extract them
    1) All of the files that are required, need to be in one (i.e., the same) directory. It does not matter what it is called, but all the files need to be in there, with NO subfolders. EVERYTHING needs to be extracted into this one directory;
    2) Download the attachment from the end of this post and extract the contents to the directory created in step 1. (Latest version for Windows is here). Note: if all you want to do is unlock your bootloader, skip to step 7 in this section (C).
    3) Download the version of Android you want from here. Make sure you are using an occam image which is for the Nexus 4. Most old versions are not usually available on that site; however, there is a mirror on this site: Random Phantasmagoria.
    4) Download the appropriate version (for your computer) of 7-zip from here and install it.
    5) Extract the files from within the .tgz file which you downloaded in step 3 using 7-zip, not WinZip or WinRAR or whatever.
    6) Make sure you have extracted ALL the files (including extracting any files in any archives inside the .tgz file). You should have six (6) files ending with .img in the directory you created in step 1. The other files you extracted from the .tgz are not necessary;
    7) Reboot your device into bootloader mode (by turning it off, hold volume down, and press and hold power) and plug it into your computer;
    8) Open a command prompt in the same directory (i.e., make sure you are in the same directory as your files are located). You can hold the shift key when you are in the folder in Windows explorer and right-click in a blank spot and it will open a command prompt.

    D. Type in the commands into the command prompt
    1) Make sure your computer recognizes your device by typing: fastboot devices
    2) Unlock your bootloader (if you have not already done so): fastboot oem unlock
    3) You will see a prompt on your device. This will wipe your entire device (including the /sdcard folder). Accept. Note: you use the volume keys to change the option and the power button to accept. You cannot use the touch screen.
    4) Reboot by typing: fastboot reboot-bootloader
    5) Flash the bootloader: fastboot flash bootloader bootloader-mako-makoz10o.img (or whatever the name of the bootloader image that you downloaded).
    6) Reboot: fastboot reboot-bootloader
    7) Flash the radio: fastboot flash radio radio-mako-m9615a-cefwmazm-2.0.1700.48.img (or whatever the name is of the radio image that you downloaded).
    8) Reboot: fastboot reboot-bootloader
    9) Flash the system partition: fastboot flash system system.img
    10) Optional, but read note. Flash the data partition: fastboot flash userdata userdata.img Note: this command will wipe your device (including /sdcard), EVEN if your bootloader is already unlocked. See note 2 below.
    11) Flash the kernel/ramdisk: fastboot flash boot boot.img
    12) Flash the recovery partition: fastboot flash recovery recovery.img
    13) Erase the cache partition: either a) fastboot erase cache OR b) fastboot format cache <<== the second option seems to work better for most people. Thanks joostburg.
    14) Reboot: fastboot reboot
    15) Done! The first boot will likely take quite a bit longer than you are used to, as Android builds the Dalvik cache.

    Now you have a fully stock image on your device. The only thing that is different from out-of-the-box condition is that your bootloader is unlocked. See the notes section at the end of this post for information on re-locking the bootloader.

    Note that some users indicate that they can't get past the X on boot. If this happens to you, reboot into the bootloader and select recovery. Then, when you see the Android with the red exclamation mark, hold power and press volume up to take you to the menu. Wipe cache. If that still doesn't work, boot back into recovery and do a factory reset (this will obviously delete all your data & files in /sdcard...).

    If you have a 16GB device, and it now shows up as 8GB, reboot into recovery (hold power and press volume up when you are at the screen with the android and the red exclamation mark), and wipe cache. If that still doesn't work, boot back into recovery and do a factory reset (which will obviously delete all your data & files in /sdcard...). Or do this.

    E. Optional -- Root
    If you want to get root access follow the steps below. (And no, this will not flash a custom recovery, and not, it will not make you "not stock".) Unlocked bootloader required. See steps above.

    1) Download (to your computer) the latest version of CWM (from here) or TWRP (from here) for your device;
    2) Rename the file to customrecovery.img, and make sure it is in the same directory as your fastboot.exe file;
    3) Download (to /sdcard on your device) the latest version of either ChainsDD's Superuser (not currently working), or Chainfire's SuperSU or Koush's Superuser; NOTE: So far, only SuperSU v1.43 and newer currently work properly with JWR66V (i.e., 4.3). I've attached v1.51 below.
    4) Restart your device in fastboot mode and plug into computer;
    5) Open a command prompt in the directory mentioned above and type: fastboot boot customrecovery.img Note: Only if you are running the z20i bootloader: the command would be: fastboot -c "lge.kcal=0|0|0|x" boot customrecovery.img Thanks hwti & el_charlie
    6) Wait for it to boot;
    7) Navigate the menus the recovery menu on your device and select an option like "update zip from sdcard". Find the zip that you downloaded, and apply it.
    8) Reboot. Done.

    Notes:
    1) Yes, you will receive the OTA update notification (when it is available) for the next update. WHEN you get the update notification, IF you want it to install automatically, you will need to ensure that that you are using the bootloader, radio, boot, radio and recovery images for the .tgz package you downloaded. Otherwise, the update will not install automatically.
    2) There has been a lot of uncertainty and questions around stock ROMs and losing/wiping data. You CAN flash a stock ROM WITHOUT losing the data stored in /sdcard (and possibly even all apps and app data, although this depends on which apps you have installed). This can be done by skipping step 10 in part D. However, if your device goes into a boot loop, you will need to boot CWM, and wipe data <-- this will wipe your apps and app data, but not /sdcard.
    3) Do NOT re-lock your bootloader after you are finished. The is no need. 2) Having an unlocked bootloader does not affect anything related to the ROM/GoogleWallet/OTAs. Nothing at all. If your bootloader is locked, you CANNOT use fastboot commands. This is pretty much the only thing it affects. If your bootloader is locked, and you need to unlock it, it will wipe everything, including /sdcard. This is the major drawback of re-locking your bootloader. If you do want to lock your bootloader, the command is: fastboot oem lock
    85
    How to return to stock if your USB port is broken

    I am adding this how-to in case people need it, for return their device to Google, etc.

    This is NOT meant to replace going through the steps in post #1. They are there for your learning, and should be used as a primary method of returning your device to stock. However, if your USB port is indeed messed up, then you will not be able to use the instructions in post #1.

    Warning: if your USB port is indeed broken, and you complete all the steps below, you will have NO possible way at all to unlock your bootloader, or get root, or install a custom recovery. Period.

    1) Ensure that you have root, and a custom recovery (CWM or TWRP) installed;
    2) Download segv11's BootUnlocker app from the Play Store, install it and lock your bootloader with it;
    3) Download the odexed version of this file (stock JDQ39 ROM) and place it on your device;
    4) Download the JDQ39 stock boot image from here and the stock JDQ39 recovery from here.
    5) If you want, you can also download the 0.48 radio and the z10o bootloader from here.
    6) Reboot into CWM and flash the three files you downloaded in steps 3 and 4, and the file(s) you downloaded in step 5;
    5) Turn off your device and reboot into the bootloader;
    6) Go to recovery and access the stock recovery menu (i.e., when you see the android with the red triangle, hold power and press vol up) and do a factory reset and then wipe cache.
    7) Reboot your device. Do NOT install any OTA updates if they present themselves. Read and follow this post.
    8) Done. Now you are fully stock JDQ39 with a locked bootloader.
    20
    10
    No errors, I checked the MD5 of the factory image and it's fine. I even re-downloaded it. I did every step as listed in your procedure (even the optional ones). The phone is dead now, it's charging. It spent over 20 minutes on the X. Everything seems to work per your instructions. I don't get it. Could something be corrupted on my phone itself? System/Boot/Recovery images are all dated Jan 1/09, but I assume that's correct (it's from Google after all). Should I try directly flashing CWM recovery instead of stock during the initial process? I dunno...

    I will try your method from the beginning again tomorrow.

    I assume I'm not bricked if I can still do this stuff. It doesn't bode well if you don't know what's wrong either. I appreciate any further help/suggestions...

    It happened to me the same thing... I did everything right just as suggested in every step, but my phone won't get past the X logo... I solved it by going to the stock recovery (unhide the menu by pressing POWER+VOL. UP), wipe data/factory reset, wipe cache partition. Reboot (to me it rebooted automatically after wiping the cache partition) and everything went fine, it took very few time to get past the X logo...

    Hope it works for you too.
    8
    It's the bootloader.

    It happens since the 4.3 leak and the z20i bootloader.

    You can try flashing the old z10o bootloader (it boots 4.3 just fine) and then fastboot boot command will work.

    It's very annoying because I use to keep the stock recovery and only use CWM or TWRP to root. Now I have to flash a custom recovery, do my thing and reflash the stock one again.

    Cheers!

    You can still boot a recovery without flashing it, but you have to specify the kernel command line

    Solution 1 (works on my N4, not sure it will work for all hardware revisions) :
    1. fastboot boot customrecovery.img
    2. you see a blank screen
    3. get the default fastboot kernel command line : adb shell cat /proc/cmdline
    4. adb reboot-bootloader
    5. Append lge.kcal=0|0|0|x to the default fastboot kernel command line :
      fastboot -c "your_default_command_line lge.kcal=0|0|0|x" boot customrecovery.img

    Solution 2:
    1. fastboot flash recovery customrecovery.img
    2. launch the recovery from the bootloader
    3. wait until it's loaded
    4. get the bootloader kernel command line : adb shell cat /proc/cmdline
    5. adb reboot-bootloader
    6. fastboot flash recovery stockrecovery.img
    7. Use the bootloader command line to launch the recovery from fastboot :
      fastboot -c "your_bootloader_command_line" boot customrecovery.img