*** very important ***
It is not in this guide, if something goes wrong, and you receive error while running MiFlash.exe, just start over.
Remove registry key HKEY_CURRENT_USER\SOFTWARE\XiaoMi
xiaomi note 3 miflash catastrophic failure receiving hello packet
***
[ROM][7.1][kenzo] CyanogenMod 14.1
http://forum.xda-developers.com/redmi-note-3/development/rom-cyanogenmod-14-0-t3461068
[ROM][OFFICIAL][kenzo][6.0.1] CyanogenMod 13.0
http://forum.xda-developers.com/redmi-note-3/development/rom-cyanogenmod-13-t3431866
Short Instructions-Rooting and Flashing OTA's
Divided in two parts:
PART 1
How to root?
1. Falsh complete 7.1.8 with unlocked emmc_appsboot.mbn instead of the one in the rom .tgz and unlock using fastboot- After this our bootloader is unlocked.
2. We will now flash the twrp recovery using fastboot (with help of minimal adb and fastboot)- we have a custom recovery to apply modified ota zip (all future ota zips need to be modify before flashing) and also to flash supersu and patched boot.img
3. We will make a backup of 7.1.8 system+boot in TWRP.
4. We will now modify the ota zip (replace emmc_appsboot.mbn and updater-script) and flash in the recovery (system mounted as read only on first TWRP boot) but will NOT flash supersu.- updated to 7.2.5 now
5. We will now make a backup of 7.2.5 system+boot with NO compression in TWRP.- we got 7.2.5 boot.img (boot.emmc.win is the name )to patch it (#8 in things needed)
6. We will take this backed up boot.emmc.win in Android Image Kitchen in pc and patch it.- we now have patched 7.2.5 boot.img and a way to patch all future boot.img's
7. We will now mount system as read/write and flash supersu and this patched boot.img in twrp.- we have successfully rooted the phone.
PART 2
Future OTA's will fail as they will verify system and boot too before flashing. We have altered both here. But we have a recovery and a backup to restore before flashing ota.
So, how to apply future updates?
1. Download the ota but DO NOT flash it.
2. Modify the OTA zip as we did for 7.2.3 and 7.2.5
3. Restore unrooted system and not patched boot.img (the 7.2.5 TWRP backup)
4. Mount system and read only
5. Patch the OTA zip by replacing emmc_appsboot.mbn and updater-script. Flash the OTA
6. Make a new boot+system backup.
7. Patch the new boot.img.
8. Mount system as read/write
9. Flash patched boot.img along with supersu.
Follow up post three for detailed Rooting guide if things are not clear for you.
-- long ---
Unlocking bootloader, Flashing TWRP, Flashing 7.2.5 OTA, Rooting
It is particularly focused on rooting latest (at writing this) version of Miui i.e. 7.2.3
How to Root?
For rooting we have to flash SuperSu from custom recovery i.e. TWRP. So, obviously we need to flash TWRP first in Redmi Note 3.
But, to flash TWRP we need to unlock bootloader first
Unlocking Bootloader:
Downloads from post one:
1. Download and Install Mi Flash Tool
2. Download and Extract 7.1.8 Fastboot Rom (You can also use latest fastboot rom, just skip OTA part from this guide)
3. Download, Extract and Replace unlocked_emmc_appsboot.mbn in the extracted rom folder
4. Download and Install Minimal ADB and Fasboot Tools
Instructions:
1. Turn Your Phone On and Connect USB Cable to the phone and the Computer
2. Go to settings-about phone and tap Miui versoin five times.
3. Go back and go to Additional settings-Developer Options and enable USB debugging (if disabled) and Enable OEM Unlock (if disabled)
4. Open Device Manager in PC and check to find your phone Installed as ADB Device
5. See if there is any pop up in phone asking to Authorization (Allow USB debugging). Check Always allow from this Computer and tap ok.
6. Run the Minimal ADB and Fastboot From the Start Menu
7. Check if your Device is Detected in ADB by typing this command
You should see the output like this
If not, then you have to install drivers. Go to topic #5. Then try again.
8. Type the following command to Reboot the Phone to EDL mode
9. Check the Device Manager you should see the Phone as shown in the Screenshot below
NOTE: The Driver can be Either the one Shown in the Image (which is a default driver loaded by windows)
or
can be from Qualcomm which will read as
Note that there is a possibility that You might End up in
But Don't Panic and Follow the Steps from Step No. 1 again
10. Now Start the MI Flash Tool and Browse to the Location Where you have Extracted the Fastboot ROM
11. Go to Advanced (arrow in front of browse) and Select:
Flash Programmer, Raw XML File and Patch XML File
from the Fastboot ROM\Images folder and press enter on keyboard
12. Press Refresh in MI tool and You should see you phone in the MI Flash tool With the same COM# as in the Device Manager
13. Press Flash and wait. It would take some time to flash about 170-250 seconds or more ( if Miflash shows a error on clicking Flash , please restart Miflash and try again)
14. After the Miflash fastboot is completed successfully, hard boot phone to Fastboot mode by pressing and holding Volume Down+Power On. You will see mi bunny on screen.
15. Again run Minimal ADB and Fastboot from start menu (as Administrator)
16. Type:
It will show you the current Bootloader Status .
17. Now again Type:
Optional: Type in the previous command again to check if the status of Bootloader had changed or not.
18. Type:
to reboot the phone.
Bootloader is unlocked now but do not disconnect the phone from pc yet.
Credits:
http://en.miui.com/thread-253680-1-1.html
http://en.miui.com/thread-261019-1-1.html
Flashing TWRP:
Downloads from post one:
1. TWRP recovery
Instructions:
1. Once done with bootloader unlock guide, without disconnecting the phone, restart phone in fastboot mode (use steps 1-8 from unlocking guide and replace edl command with fastboot, i.e. write fastboot instead of edl in cmd) or Press and hold volume down+power to hard boot it to fastboot.
2. Go to Minimal ADB and Fastboot directory
and copy/move downloaded twrp-3.0.2-2-kenzo.img here.
3. Type following in cmd once the phone is in fastboot mode.
fastboot flash recovery twrp-3.0.2-2-kenzo.img
4. Once done, hard boot phone to recovery by Pressing and holding Volume Up+Power On. TWRP should boot.
Note: When asked to mount system as read only or as read/write select read only in TWRP. This step is important otherwise you will face bootloop after flashing ota.
Flashing 7.2.3 OTA and then 7.2.5 OTA:
Downloads from post one:
1. Miui 7.2.3 OTA and Miui 7.2.5 OTA
2. unlocked_emmc_appsboot.mbn
Downloads from internet
1. 7zip Or WinRAR
Instructions:
1. Download the OTA in your PC or move it in your pc from phone after downloading.
2. Open the OTA file in Windows with Winrar/7zip
3. Locate the emmc_appsboot.mbn in firmware-update folder and delete from the zip (it will take a while for the deletion please be patient)
4. Drag and drop the (unlocked)emmc_appsboot.mbn to the firmware-update folder of the OTA
5. Navigate to "META_INF/com/google/android/" and extract the updater-script file and then delete it from the zip.(make sure to keep a backup of the zip)
6. Open the file in a text editor, (I prefer Notepad++) and delete the following lines and save the file
(Edit the 7.2.5 OTA the same way or use updater-scripts provided for both OTA's from post 1)
7. Now again navigate to "META_INF/com/google/android/" and drag and drop the modified updater-script file inside the folder
8. Move this modified OTA zip to your (internal/external sd) and flash using TWRP.
9. Once done, make a system+boot bakcup in twrp, name it "7.1.8 stock"
10. Apply future updates like this and make backup with naming. Delete old backups.
Example: Make a backup named "7.2.5 stock" just after flashing 7.2.3 and 7.2.5 updates. Then root it and flash patched boot.img. If the phone starts up normal, reboot to recovery and delete 7.1.8 stock backup and keep 7.2.5 stock backup to use it for flashing future OTA.
Rooting:
Downloads from post one:
1. SuperSU zip
2. 7.2.5 boot patched.img
Instructions:
Note: Now change the mode to read/write for system partition from mount option in TWRP. Otherwise these zips will not flash.
1. Copy/Move/Download SuperSU zip and patched boot.img in your phone.
2. Extract the .rar containing the patched boot.img.
3. Reboot to recovery and Tap on Install in the TWRP main screen.
4. Select SuperSu.zip
5. To flash boot.img, the default mode is to flash zip files, you will need to toggle the mode to images.
6. To do so, tap on the Images… button on the bottom-right of the screen
7. The recovery will now only see the image files, select the patched boot.img
8. Once you select, you will be prompted to select the type of image it is, select Boot or Recovery. Select Boot.
9. Finally, swipe the button on the bottom of the screen to start the flashing process.
10. Once complete, you can go to Reboot > System.
How to Root?
For rooting we have to flash SuperSu from custom recovery i.e. TWRP. So, obviously we need to flash TWRP first in Redmi Note 3.
But, to flash TWRP we need to unlock bootloader first
Unlocking Bootloader:
Downloads from post one:
1. Download and Install Mi Flash Tool
2. Download and Extract 7.1.8 Fastboot Rom (You can also use latest fastboot rom, just skip OTA part from this guide)
3. Download, Extract and Replace unlocked_emmc_appsboot.mbn in the extracted rom folder
4. Download and Install Minimal ADB and Fasboot Tools
Instructions:
1. Turn Your Phone On and Connect USB Cable to the phone and the Computer
2. Go to settings-about phone and tap Miui versoin five times.
3. Go back and go to Additional settings-Developer Options and enable USB debugging (if disabled) and Enable OEM Unlock (if disabled)
4. Open Device Manager in PC and check to find your phone Installed as ADB Device
5. See if there is any pop up in phone asking to Authorization (Allow USB debugging). Check Always allow from this Computer and tap ok.
6. Run the Minimal ADB and Fastboot From the Start Menu
7. Check if your Device is Detected in ADB by typing this command
Code:
adb devices
If not, then you have to install drivers. Go to topic #5. Then try again.
8. Type the following command to Reboot the Phone to EDL mode
Code:
adb reboot edl
NOTE: The Driver can be Either the one Shown in the Image (which is a default driver loaded by windows)
or
can be from Qualcomm which will read as
Quote:
Qualccomm HS-USB QLoader 9008
Quote:
Qualcomm HS-USB Diagnostics 900E
10. Now Start the MI Flash Tool and Browse to the Location Where you have Extracted the Fastboot ROM
11. Go to Advanced (arrow in front of browse) and Select:
Flash Programmer, Raw XML File and Patch XML File
from the Fastboot ROM\Images folder and press enter on keyboard
12. Press Refresh in MI tool and You should see you phone in the MI Flash tool With the same COM# as in the Device Manager
13. Press Flash and wait. It would take some time to flash about 170-250 seconds or more ( if Miflash shows a error on clicking Flash , please restart Miflash and try again)
14. After the Miflash fastboot is completed successfully, hard boot phone to Fastboot mode by pressing and holding Volume Down+Power On. You will see mi bunny on screen.
15. Again run Minimal ADB and Fastboot from start menu (as Administrator)
16. Type:
Code:
fastboot oem device-info
17. Now again Type:
Code:
fastboot oem unlock-go
18. Type:
Code:
fastboot reboot
Bootloader is unlocked now but do not disconnect the phone from pc yet.
Credits:
http://en.miui.com/thread-253680-1-1.html
http://en.miui.com/thread-261019-1-1.html
Flashing TWRP:
Downloads from post one:
1. TWRP recovery
Instructions:
1. Once done with bootloader unlock guide, without disconnecting the phone, restart phone in fastboot mode (use steps 1-8 from unlocking guide and replace edl command with fastboot, i.e. write fastboot instead of edl in cmd) or Press and hold volume down+power to hard boot it to fastboot.
2. Go to Minimal ADB and Fastboot directory
Quote:
C:\Program Files (x86)\Minimal ADB and Fastboot
3. Type following in cmd once the phone is in fastboot mode.
fastboot flash recovery twrp-3.0.2-2-kenzo.img
4. Once done, hard boot phone to recovery by Pressing and holding Volume Up+Power On. TWRP should boot.
Note: When asked to mount system as read only or as read/write select read only in TWRP. This step is important otherwise you will face bootloop after flashing ota.
Flashing 7.2.3 OTA and then 7.2.5 OTA:
Downloads from post one:
1. Miui 7.2.3 OTA and Miui 7.2.5 OTA
2. unlocked_emmc_appsboot.mbn
Downloads from internet
1. 7zip Or WinRAR
Instructions:
1. Download the OTA in your PC or move it in your pc from phone after downloading.
2. Open the OTA file in Windows with Winrar/7zip
3. Locate the emmc_appsboot.mbn in firmware-update folder and delete from the zip (it will take a while for the deletion please be patient)
4. Drag and drop the (unlocked)emmc_appsboot.mbn to the firmware-update folder of the OTA
5. Navigate to "META_INF/com/google/android/" and extract the updater-script file and then delete it from the zip.(make sure to keep a backup of the zip)
6. Open the file in a text editor, (I prefer Notepad++) and delete the following lines and save the file
Quote:
ui_print("Verifying current system...");
getprop("ro.build.fingerprint") == "Xiaomi/kenzo/kenzo:5.1.1/LMY47V/V7.1.8.0.LHOMICL:user/release-keys" ||
getprop("ro.build.fingerprint") == "Xiaomi/kenzo/kenzo:5.1.1/LMY47V/V7.2.3.0.LHOMIDA:user/release-keys" ||
abort("Package expects build fingerprint of Xiaomi/kenzo/kenzo:5.1.1/LMY47V/V7.1.8.0.LHOMICL:user/release-keys or Xiaomi/kenzo/kenzo:5.1.1/LMY47V/V7.2.3.0.LHOMIDA:user/release-keys; this device has " + getprop("ro.build.fingerprint") + ".");
apply_patch_check("EMMC:/dev/block/bootdevice/by-name/boot:33721674:bf5d61ecd25d0026e768f6258f3206403859 76fd:34037066:22a19fe883c5fe4b25852702a1bd25bcaeed d9a0") || abort(""EMMC:/dev/block/bootdevice/by-name/boot:33721674:bf5d61ecd25d0026e768f6258f3206403859 76fd:34037066:22a19fe883c5fe4b25852702a1bd25bcaeed d9a0" has unexpected contents.");
if block_image_verify("/dev/block/bootdevice/by-name/system", package_extract_file("system.transfer.list"), "system.new.dat", "system.patch.dat") then
ui_print("Verified system image...");
else
(range_sha1("/dev/block/bootdevice/by-name/system", "2,0,1") == "e04e9788c17630b4088243d8b3ee29509568b793") || (range_sha1("/dev/block/bootdevice/by-name/system", "2,0,1") == "3b8aeee76a291f2b1647c9bbcbece5be948a83fc") || abort("/dev/block/bootdevice/by-name/system has been remounted R/W; reflash device to reenable OTA updates");
(range_sha1("/dev/block/bootdevice/by-name/system", "80,0,32770,32929,32931,33439,65535,65536,65538,66 046,98303,98304,98306,98465,98467,98975,131071,131 072,131074,131582,163839,163840,163842,164001,1640 03,164511,196607,196608,196610,197118,229375,22937 6,229378,229537,229539,230047,262143,262144,262146 ,262654,294911,294912,294914,295073,295075,295583, 327679,327680,327682,328190,360447,360448,360450,3 60958,393215,393216,393218,393726,425983,425984,42 5986,426494,458751,458752,458754,459262,476353,491 520,491522,524288,524290,557056,557058,589824,5898 26,622592,622594,623102,650190,650191,655320") == "a75d23fa6067c58c166603cfac0b3d0df9b81919") ||
abort("system partition has unexpected contents");
endif;
getprop("ro.build.fingerprint") == "Xiaomi/kenzo/kenzo:5.1.1/LMY47V/V7.1.8.0.LHOMICL:user/release-keys" ||
getprop("ro.build.fingerprint") == "Xiaomi/kenzo/kenzo:5.1.1/LMY47V/V7.2.3.0.LHOMIDA:user/release-keys" ||
abort("Package expects build fingerprint of Xiaomi/kenzo/kenzo:5.1.1/LMY47V/V7.1.8.0.LHOMICL:user/release-keys or Xiaomi/kenzo/kenzo:5.1.1/LMY47V/V7.2.3.0.LHOMIDA:user/release-keys; this device has " + getprop("ro.build.fingerprint") + ".");
apply_patch_check("EMMC:/dev/block/bootdevice/by-name/boot:33721674:bf5d61ecd25d0026e768f6258f3206403859 76fd:34037066:22a19fe883c5fe4b25852702a1bd25bcaeed d9a0") || abort(""EMMC:/dev/block/bootdevice/by-name/boot:33721674:bf5d61ecd25d0026e768f6258f3206403859 76fd:34037066:22a19fe883c5fe4b25852702a1bd25bcaeed d9a0" has unexpected contents.");
if block_image_verify("/dev/block/bootdevice/by-name/system", package_extract_file("system.transfer.list"), "system.new.dat", "system.patch.dat") then
ui_print("Verified system image...");
else
(range_sha1("/dev/block/bootdevice/by-name/system", "2,0,1") == "e04e9788c17630b4088243d8b3ee29509568b793") || (range_sha1("/dev/block/bootdevice/by-name/system", "2,0,1") == "3b8aeee76a291f2b1647c9bbcbece5be948a83fc") || abort("/dev/block/bootdevice/by-name/system has been remounted R/W; reflash device to reenable OTA updates");
(range_sha1("/dev/block/bootdevice/by-name/system", "80,0,32770,32929,32931,33439,65535,65536,65538,66 046,98303,98304,98306,98465,98467,98975,131071,131 072,131074,131582,163839,163840,163842,164001,1640 03,164511,196607,196608,196610,197118,229375,22937 6,229378,229537,229539,230047,262143,262144,262146 ,262654,294911,294912,294914,295073,295075,295583, 327679,327680,327682,328190,360447,360448,360450,3 60958,393215,393216,393218,393726,425983,425984,42 5986,426494,458751,458752,458754,459262,476353,491 520,491522,524288,524290,557056,557058,589824,5898 26,622592,622594,623102,650190,650191,655320") == "a75d23fa6067c58c166603cfac0b3d0df9b81919") ||
abort("system partition has unexpected contents");
endif;
7. Now again navigate to "META_INF/com/google/android/" and drag and drop the modified updater-script file inside the folder
8. Move this modified OTA zip to your (internal/external sd) and flash using TWRP.
9. Once done, make a system+boot bakcup in twrp, name it "7.1.8 stock"
10. Apply future updates like this and make backup with naming. Delete old backups.
Example: Make a backup named "7.2.5 stock" just after flashing 7.2.3 and 7.2.5 updates. Then root it and flash patched boot.img. If the phone starts up normal, reboot to recovery and delete 7.1.8 stock backup and keep 7.2.5 stock backup to use it for flashing future OTA.
Rooting:
Downloads from post one:
1. SuperSU zip
2. 7.2.5 boot patched.img
Instructions:
Note: Now change the mode to read/write for system partition from mount option in TWRP. Otherwise these zips will not flash.
1. Copy/Move/Download SuperSU zip and patched boot.img in your phone.
2. Extract the .rar containing the patched boot.img.
3. Reboot to recovery and Tap on Install in the TWRP main screen.
4. Select SuperSu.zip
5. To flash boot.img, the default mode is to flash zip files, you will need to toggle the mode to images.
6. To do so, tap on the Images… button on the bottom-right of the screen
7. The recovery will now only see the image files, select the patched boot.img
8. Once you select, you will be prompted to select the type of image it is, select Boot or Recovery. Select Boot.
9. Finally, swipe the button on the bottom of the screen to start the flashing process.
10. Once complete, you can go to Reboot > System.