149
[GUIDE] OnePlus 3: How to Unlock Bootloader, Flash TWRP, Root, Nandroid & EFS Backup and More !

  1. Funk Wizard KitKat Moderator May 31, 2016

    Last edited: Jun 22, 2016

    #1
  2. Naman Bhalla Recognized developer May 31, 2016

    Naman Bhalla, May 31, 2016 :
    Information
    Rooting this device is actually quite a simple and easy process. Before you begin, it is recommended that you at least try to understand what each part of the process will do. Although this guide will elongate each step in order to show all of the details, the method used can be broken up into 3 main steps: Unlocking the Bootloader, Installing a Custom Recovery and finally Rooting. Each new step relies on the previous step to have been completed, and a basic summary of each part is:

    1. Unlocking Bootloader: Opens the door to the internal memory of the device to be written on to. This allows you to flash images onto the main partitions of the phone.
    2. Installing a Custom Recovery: A custom recovery is flashed onto the recovery partition of the device and overwrites the stock recovery that exists by default. Custom recoveries bring lots of functionality and give you the ability to perform wipes, install flashable zips, create full backups of your NAND (Nandroid backup), and various other features. An unlocked bootloader is needed to install a custom recovery.
    3. Rooting: You can gain root by either flashing via recovery a pre-rooted custom rom, or flashing a zip containing the SuperSU binaries. A custom recovery is necessary to do this.

    After completing these steps your phone will be rooted, the phone will have a custom recovery installed, and the phones bootloader will be unlocked. This, in our opinion, is the most practical and beneficial method for rooting your phone. It gives you some basic adb/fastboot knowledge, and should hopefully help you have a decent understanding of what is going on. Also this method will work regardless of what android version your phone has.

    If you are confused by anything in this guide, we would highly suggest getting it clarified being before moving on. Ask your question in this thread and we or someone else will likely answer. Also we would suggest that you read over the whole thread a few times before actually doing anything to the phone.

    Understood? Good...let's begin
     
    Last edited: Jun 14, 2016

    #2
  3. Funk Wizard KitKat Moderator May 31, 2016

    Funk Wizard, May 31, 2016 :
    Setup, Preparation and Prerequisites

    Basic tasks that may be referred to throughout this guide:
    • Open command prompt - Press Shift + Right Click anywhere on the screen and select Open Command Window here/
    • Enter fastboot mode- Turn the phone off. Hold volume up + power until the "fastboot" screen appears. [Alternatively, if Advanced Reboot is enabled, you can press Reboot -> Bootloader from the power menu.]
    • Enter recovery mode - Turn the phone off. Hold volume down + power until the "OnePlus Logo" screen appears. [Alternatively, if Advanced Reboot is enabled, you can press Reboot -> Recovery from the power menu.]
    ADB and Fastboot Installation
    1. Download the ADB For Windows from here :- https://drive.google.com/open?id=0B0MKgCbUM0itNVB1elljU2NPR0k

    2. Run the .exe file downloaded from above as Administrator.
    3. Press 'Y' every time the installer asks for.
    4. Continue Driver Installation.

    Now,ADB and Fastboot have been installed on your PC. Great !


    Some Important Things

    • Show File Extensions - Open a command prompt window and run "Control folders" (without the quotes). Go to the View tab and uncheck the "Hide extensions for known file types" option. This will help avoid confusion when renaming files.
    • Battery - Ensure that your phone has at least 60% battery remaining, and that your PC is plugged in and wont shut down spontaneously during the process. The procedure doesn't take very long , but its best to have enough charge in case something goes wrong.
    • Backup (Optional) - Unlocking the bootloader will/should completely wipe all data from the device. This includes apps, settings and even the contents of the internal sdcard (pictures, music, etc.). Copy all important files off the phone onto a PC or upload them to a cloud.

    Downloads
    Download a custom recovery and the SuperSU zip below. Place both files on the desktop.

    TWRP:
    Modified TWRP | Credits @eng.stk


    Root
    SuperSu
     
    Last edited: Feb 21, 2017

    #3
  4. Naman Bhalla Recognized developer May 31, 2016

    Naman Bhalla, May 31, 2016 :
    • USB Debugging - On your phone go to Settings > About phone > Tap on Build number 7 times. This will enable Developer options. Now go back to Settings > Developer options > Enable USB debugging
    • Enable OEM Unlocking - On your phone go to Settings > Developer options. Then enable the 'OEM Unlocking' option. Also,a free advice, make sure that from now on,OEM unlocking option is enabled before you reboot. Sometimes,it might get disabled itself.
    • Enable Advanced Reboot - On your phone go to Settings > Developer options. Then enable the 'Advanced Reboot' option.
    1. Unlocking Bootloader
    • Turn the phone off. Then boot it into fastboot mode by holding volume up + power. The phone will display "fastboot" text indicating that it has successfully entered fastboot mode.

    • Plug the phone into your PC, then open a command prompt window on the desktop (Shift + Right Click -> Open Command Window here) and type :-
      Code:
      fastboot devices
      This command will list the connected devices. If your phones serial number shows up you are good to go and may continue. If the phone is NOT listed this indicates that your drivers are not installed correctly. In order for you to continue you must fix your drivers so that your phone is listed under fastboot devices.

    • If the phone has been recognized by the command above, proceed to unlocking the bootloader with the following command:
      Remember that this step will/should wipe EVERYTHING off the phone
      Code:
      fastboot oem unlock
    • After the above command has finished excuting, run the following
      Code:
      fastboot reboot
    Now, your phone will reboot. Continue to the next step to install Custom Recovery ...
     
    Last edited: Jun 14, 2016

    #4
    outtacontroy, lbop, Smutjes and 24 others like this.
  5. Funk Wizard KitKat Moderator Jun 14, 2016

    Funk Wizard, Jun 14, 2016 :
    Wait until the phone has fully booted up into android, then adjust the following settings on the phone:
    • USB Debugging - On your phone go to Settings > About phone > Tap on Build number 7 times. This will enable Developer options. Now go back to Settings > Developer options > Enable USB debugging
    • Enable OEM Unlocking - On your phone go to Settings > Developer options. Then enable the 'OEM Unlocking' option. Also,a free advice, make sure that from now on,OEM unlocking option is enabled before you reboot. Sometimes,it might get disabled itself. [Most probabaly,it will already be enabled as you did it above.Then,NO NEED to disable and enable it.]
    • Enable Advanced Reboot - On your phone go to Settings > Developer options. Then enable the 'Advanced Reboot' option.
    2. Flashing TWRP
    • Turn the phone off. Then boot it into fastboot mode by holding volume up + power.
    • Rename the recovery file that you downloaded above to recovery.img. *Make sure that you rename it to recovery.img NOT recovery.img.img* ,Make sure that this file is placed on the desktop.
    • Open a new command prompt on desktop and run the following commands:
      Code:
      fastboot flash recovery recovery.img
    • Once the flash has completed, Don't use the "Fastboot Reboot" Command Instead Unplug Your phone then Manually boot it into recovery by keeping Power + Volume Down button pressed.
    • In TWRP, select Reboot and then select System. Now your phone will boot into System and you have cleared Steps 2/3
    So, now, time has come to do what we want to achieve through all this. The 'ROOT' . Keep following .

    But,before that, take a Nandroid Backup.

    3. Making a Nandroid Backup
    Warning: before you make a backup with TWRP you must remove all lockscreen security. If you do not do this you will not be able to unlock your device after restoring your backup (entering your pin will result in an "incorrect pin" message), you'll be forced to perform a factory reset to boot into Android. To remove lockscreen security go to Settings>Security>Screen Lock and set it to swipe/none.

    A Nandroid Backup is a very important thing to have before installing any custom software on your device. It's basically a backup of your stock system that you can fall back on if anything goes wrong or if you just want your stock ROM back. You can also use Nandroid Bckup to create a backup of your favorite ROM set up exactly the way you like it. The backup you create can be easily restored using the restore tool in TWRP recovery.

    1. Boot into TWRP Recovery .
    2. Go to Backup Menu and select all the listed partitions.
    3. Swipe to take Backup. The process will take some time.
    4. Reboot
    Now, let us continue to rooting !
     
    Last edited by a moderator: Jun 25, 2016

    #5
    outtacontroy, lbop, Smutjes and 24 others like this.
  6. Naman Bhalla Recognized developer Jun 14, 2016

    Naman Bhalla, Jun 14, 2016 :
    4. Rooting

    Now that your phone has an unlocked bootloader and a custom recovery installed, you have two options to gain root (Pick one or the other. You don't need to do both. ).

    Option A) Flash SuperSU binaries which will give you root with the stock ROM
    • Confirm that you have downloaded the SuperSU zip from the downloads section above. Connect OP3 to PC and send SuperSU to your phone.
    • Turn the phone off. Then boot into recovery mode by holding volume down + power. Leave the phone at the main screen of the custom recovery for now.
    • Install > browse to SuperSU zip and select it
    • Swipe to confirm the installation. Then reboot.
    Option B) Flash a custom rom which will come pre-rooted
    • Note that not all custom roms will be pre rooted, however the majority of them are. Read the OP of the ROM thread to see what the verdict is.
    • Copy a custom rom (you can find these in the OnePlus 3 ROMs, Kernels, Recoveries, & Other Development section of XDA or Custom OP3 Software section on OnePlus Forums) onto the phone (remember the location of where you copy it to)
    • Turn the phone off then boot into recovery mode by holding volume down + power. To install a custom ROM the general procedure to follow is: wipe Dalvik + System + Data + Cache, flash ROM, flash GApps.
    • Wipe > Advanced Wipe > Select Dalvik + System + Data + Cache > Swipe to Wipe
    • Install > browse to the location where you previously copied the ROM zip and select it > Swipe to confirm the installation
    • Install GApps using same process as ROM, then reboot.
    Keep in mind that the first boot after installing a custom ROM & wiping the phone may take longer than usual, as the phone will need to rebuild the dalvik cache and initialize other first boot stuff.

    Congrats! That is all! Your phone now has an unlocked bootloader, a custom recovery installed and is rooted. Enjoy !

    The very first thing we highly recommend you to do now is to take EFS Backup and save it at your cloud and PC. It is very very important.


    5. Making an EFS Backup

    All too often, we've seen folks who have a corrupted or missing EFS Partition. This results in your IMEI being lost and no cellular activity on the device at all. This can be a royal PITA to fix, and some folks haven't been able to fix it at all. You can take a precautionary measure to safeguard yourself against this by taking a couple of minutes to back up your modemst files.

    1. Open up Terminal Emulator on your phone (if you don't have it you can download it here).
    2. Once it's open you'll be greeted with a command line prompt, in which you can enter text commands, the first thing you need to do is enable root access by entering this line (press the enter key on your on-screen keyboard after each command to issue it):
      Code:
      su
      If this is the first time you've used Terminal Emulator a Superuser or SuperSU popup will appear, make sure you grant root access.
    3. Now enter these two commands:
      Code:
      dd if=/dev/block/sdf1 of=/sdcard/modemst1.bin bs=512
      Code:
      dd if=/dev/block/sdf2 of=/sdcard/modemst2.bin bs=512

    This will place two files (modemst1.bin & modemst2.bin) on your internal storage. Make sure you copy them to your PC and other Clouds immediately so that you have a backup there to use if you need to restore it in future.

    That's it !! Incase you ever need to restore Nanroid or EFS Backups, see the next post.
     
    Last edited: Jun 21, 2016

    #6
    outtacontroy, lbop, Smutjes and 21 others like this.
  7. Funk Wizard KitKat Moderator Jun 14, 2016

    Funk Wizard, Jun 14, 2016 :
    6. Restoring a Nandroid Backup
    Note: If you happened to forget to remove lockscreen security (PIN/Pattern/Fingerprint) before creating your backup, and you cannot get into your OS after restoring, you can do the following to fix the issue.

    Boot into TWRP and use the built in file manager to delete /data/sytem/locksettings.db. This should be enough to get you into your OS again. If it isn't you can also try deleting /data/system/locksettings.db-shm and /data/system/locksettings.db-wal.

    If this still doesn't fix your issue you can delete /data/system/gatekeeper.password.key and /data/system/gatekeeper.pattern.key

    1. Reboot the phone and (if you've set a PIN) enter it to decrypt the storage one more time. After that you can simply unlock your phone with a swipe.
      1. Go into Settings > Security and set your preferred unlock method again, Android will ask you if you want to set a boot-time code too so select as per convenience.
    1. Boot into TWRP Recovery .
    2. [Only and Only if you want to restore /system and /data too from the Backup] Wipe > Advanced Wipe > Select Dalvik + System + Data + Cache > Swipe to Wipe. Go back to TWRP Home.
    3. Go to Restore Menu and select the backup you want to restore.
    4. Select the partitions you want to restore.
    5. Swipe to Restore. The process will take some time.
    6. Reboot
    7. Restoring an EFS Backup

    If by chance you end up with a corrupt EFS partition all you need to do is flash the files back to your device using fastboot.

    1. Boot into fastboot mode (power + volume up) and connect your phone to your PC via usb cable.
    2. Keep modemst1.bin and modemst2.bin (backed up earlier) on your desktop and open command window there.
    3. These fastboot commands will restore the files:
      Code:
      fastboot flash modemst1 modemst1.bin
      Code:
      fastboot flash modemst2 modemst2.bin
    4. Reboot your device.
      Code:
      fastboot reboot
    Now disconnect phone from PC. Hope your IMEI etc is back.

    That's it for the guide. Enjoy !
     
    Last edited: Aug 19, 2016

    #7
    outtacontroy, lbop, djvortax and 25 others like this.
  8. Naman Bhalla Recognized developer Jun 14, 2016


    #8
  9. jobber72 Jelly Bean Jun 14, 2016

    jobber72, Jun 14, 2016 :
    Excellent guide. You might want to add that under Linux people might need to run fastboot using sudo.
     

    #9
    Igetin likes this.
  10. cheese112 Ice Cream Sandwich Jun 14, 2016


    #10
    mithilmja and Funk Wizard like this.
  11. Funk Wizard KitKat Moderator Jun 14, 2016

    Funk Wizard, Jun 14, 2016 :
    IF YOU WISH TO FLASH A DIFFERENT/CM BASED ROM:

    Currently encryption is forced on Stock ROM. If you want to get rid of encryption, then reboot to fastboot and execute:

    Code:
    fastboot format userdata

    This will wipe your data partition, including storage!
     

    #11
    quaddropop, unease, nirgale and 2 others like this.
  12. mido25 Ice Cream Sandwich Jun 14, 2016


    #12
  13. Funk Wizard KitKat Moderator Jun 14, 2016


    #13
  14. josefn24 Jelly Bean Jun 15, 2016

    josefn24, Jun 15, 2016 :
    Yessssss! Damn Daniel back at it again with those fresh new guids!!!!
     

    #14
    Alvie, Funk Wizard and Naman Bhalla like this.
  15. josefn24 Jelly Bean Jun 15, 2016

    josefn24, Jun 15, 2016 :
    When I click on this link it gives me one of those pop-ups that says your system is critically damage and and you need to download this app. And stop yanking it so much or something lol. So annoying people actually call me when those pop up asking what they should do lol.. then I mess with them and tell them to stay off those sites lol:p.. anyway hopefully you guys get your devices soon...
     

    #15
  16. Naman Bhalla Recognized developer Jun 15, 2016

    Naman Bhalla, Jun 15, 2016 :
    Weird. You mean the one linking to XDA ? That shouldn't be there.
     

    #16
    Alvie likes this.
  17. Naman Bhalla Recognized developer Jun 16, 2016


    #17
    mithilmja and Alvie like this.
  18. rahulnegi1409 Eclair Jun 16, 2016


    #18
    cdisxm and Mrchawla like this.
  19. MagicTwat Gingerbread Jun 16, 2016


    #19
  20. Naman Bhalla Recognized developer Jun 16, 2016

    Naman Bhalla, Jun 16, 2016 :
    Why do you need stock recovery so much ? Everything can be done via TWRP without any issues. And, don't worry, it will come before any ota even though it isn't needed.
     

    #20
    Neil_S and Vector like this.