How To Guide [GUIDE][UNLOCK][ROOT] How to unlock bootloader, flash ArrowOS v11.0 ROM and root Xiaomi Poco X3 Pro

Search This thread

urbanman2004

Senior Member
Sep 16, 2013
386
172
Rock Town
If you've recently purchased a Xiaomi Poco X3 Pro, but were on the fence about using it until an AOSP ROM became available then you're in luck. Kudos to @kubersharma for his contribution by providing us the first official AOSP release, ArrowOS v11.0 [vayu].
Now, throughout this guide, I have linked the page or post based on information I gathered to put this guide together in order to credit that person instead of having to name drop them individually. These are fully detailed instructions to make it easier for newbs.
I've spent the better part of my day figuring all of this stuff out so hopefully you won't go through the trouble I did. PLEASE DO NOT PM ME FOR HELP. REPLY TO THIS GUIDE BELOW, THANKS. NOW LET'S BEGIN!!!

UNLOCK BOOTLOADER
1. Unlock the bootloader with Xiaomi Unlocker tool.
a. Be aware this process will factory reset the device before proceeding.
b. Download the Mi Unlock app onto your PC. Extract the contents within the zip file into an empty folder then run the app.
c. Register for Xiaomi account and sign in with your Mi Account.
d. Your Mi Account must be added to your Mi Settings
  • Sign into your Mi Account on the device.
  • Go to Settings –> About Phone –> tap on MIUI version (For POCO) until it says Developer options is enabled.
  • Back out of About Phone, Additional Settings –> Developer options –> Mi Unlock status.
  • Agree, then "Add account and device".
e. Shut down your phone manually, and hold Vol down + Power button to enter Fastboot mode.
  • Download and install the latest Xiaomi USB Drivers or here (or Google's latest USB drivers for Windows if all else fails) for your PC.
  • Connect the device to the computer via USB cable, and confirm that your phone shows up recognized as "Android Bootloader Interface" (in Device Manager), and click "Unlock" in the Unlock app.
  • NOTE: If Windows does not recognize the device due to it automatically installing the wrong "Kedacom Device Driver" then you will have to manually install the drivers for "Android ADB Interface/Android Bootloader Interface".
f. After your first initial unlock attempt, you MUST wait 168 hours before unlock process can fully complete.
  • Wiping the device or removing the Mi account from the device could result in the timer being reset.
g. After the waiting period expires, click "Unlock" in the Unlock app. You will notice the phone will restart followed by subsequent different screens during the phone's boot sequence including the "POCO" screen which now displays an "open lock icon" at the top, indicating your bootloader unlock attempt and will eventually end up on a "This device is locked" screen where you have to confirm you are the device owner by entering your Mi Account password to "activate this device"; connect to your WiFi prior to doing so if the device lacks an active sim card.

FLASH CUSTOM RECOVERY, DECRYPTION DISABLER, & ROM THEN ROOT
2. Download the Official ArrowOS v11.0-vayu fastboot ROM for POCO X3 Pro [direct link here].
a. NOTE: ArrowOS requires MIUI V12.0.4.0 firmware so it recommended to downgrade to this version before flashing ArrowOS otherwise the ROM may not boot.
b. Choose the GApps build type which "includes Play services and now some AOSP apps have been replaced with GApps... All GApps packages and other[sic] files [were] extracted from original firmware images for Pixel4XL (coral)."
3. [OPTIONAL] Download the latest version of Encryption Disabler then copy it along with the fastboot ROM into a folder named 'TWRP' on the root of your microSD.
4. Ensure USB Debugging is already enabled on your device (in Settings –> Additional Settings –> Developer options).
5. Remove any screen unlock (i.e., fingerprint, PIN, pattern or password) in MIUI.
6. Power off device and put it in Fastboot mode (Vol down + Power button).
7. Download the latest SDK Platform Tools from Google for adb compatibility and create a folder called "adb" in the root of the "C:\" drive.
a. Extract the files adb, AdbWinApi.dll, AdbWinUsbApi.dll, and fastboot into the folder.
b. Ensure the latest USB drivers are installed for your PC, connect the device to the computer via USB cable, and confirm that your phone shows up recognized as "Android Bootloader Interface".
c. Launch "Command Prompt" on your PC and run the command:
cd C:/adb
  • To show a list of devices (including your phone) connected to your PC, enter the command:
fastboot devices
8. Download the unofficial Pbrb (test3) recovery file (PitchBlack Recovery Project 3.1.0 unofficial) by Alex Besida and copy it into the ADB install folder and rename it to "recovery.img".
9. Flash custom recovery file in CMD, run commands:
fastboot flash recovery "recovery.img"
fastboot boot recovery.img
10. Your device should automatically boot into custom recovery. At this point, the microSD will become accessible from recovery or the PC, but the device's internal storage will not be which makes using a microSD card much more imperative for this process since the recovery is in early access development.
a. Go to Wipe –> Format Data, type "yes" to perform data wipe; Back out to the main menu.
b. Go to Install –> Navigate to the TWRP folder on the microSD (via "external_sd").
  • Select "Arrow-v11.0-vayu-OFFICIAL-20210424-GAPPS.zip" and flash the ROM, but do not change any of the checkboxes that show up before doing so.
  • Format data (not wipe) before rebooting into the new ROM.
  • NOTE: At most it takes around 1 minute to boot back up.
11. [OPTIONAL] Power off the device and boot back into recovery.
a. Go to Install –> Navigate to the TWRP folder on the microSD.
  • Select " Disable_Dm-Verity_ForceEncrypt_11.02.2020.zip" and flash it, but do not change any of the checkboxes that show up before doing so.
  • NOTE: This will disable forced encryption of data partition for better performance and internal SD + Data mounting in TWRP. It's not needed for the ROM to work, but due to disabling encryption it compromises security.
  • Reboot into the new ROM.
12. After going through the phone's boot sequence, you'll be presented with the initial phone setup process onscreen where you can begin recovering your data.
13. Go to Settings –> About phone –>tap on Build number until it says Developer options is enabled.
a. Back out to Settings –> System –> to access Developer options –> Enable USB Debugging.
14. Installing Magisk via custom recovery will fail in the background, resulting in an unresponsive "POCO" screen which is caused by installer scripts not being able to properly detect the correct device info or the recovery environment does not meet its expectation. In this case, you will need to use the Patch Image method as it is guaranteed to work 100% of the time. Installing Magisk through custom recoveries on modern devices is no longer recommended due to this reason.
a. Pull down the Notification Bar from the top of the screen and change "Charging this device via USB" to "File Transfer".
b. Open " Arrow-v11.0-vayu-OFFICIAL-20210424-GAPPS.zip " and copy "boot.img" to the phone's internal storage.
c. Download the latest version of Magisk (Magisk v22.1) and copy it to the phone's internal storage and use the native "Files" app to install the apk.
  • NOTE: Magisk binaries (ZIP) are now included within Magisk Manager APK file. Now you don’t have to download it separately. You can install the .apk file or rename its extension to .zip then flash it through custom recovery / TWRP.
d. Launch Magisk from the app drawer and go to "Install" under Magisk –> "Select and Patch a File," select the "boot.img" you copied internally –> "LET'S GO".
e. Copy the generated patched file to the ADB folder and flash it via fastboot by running the following commands:
cd C:/adb
fastboot flash boot boot.img
f. Reboot into the new ROM and voila!
fastboot reboot
g. Use an app such as Root Checker or BusyBox Checker (from the Play Store) to confirm root status.
h. To bypass/restore SafetyNet validation, open the Magisk app, go to Settings (cogwheel icon) and enable MagiskHide.
 
Last edited:

urbanman2004

Senior Member
Sep 16, 2013
386
172
Rock Town
Last edited:

kamild_

Senior Member
Excellent guide (y)
My suggestions in terms of improvements:
- 7-day waiting time before unlocking: I would mention that wiping the device or removing the Mi account from the device could result in the timer being reset;
- DFE/Encryption Disabler: it's optional, not needed for the ROM to work and thanks to disabling encryption it compromises security;
- Firmware: Arrow OS requires MIUI V12.0.4.0 firmware, so before flashing Arrow OS it's recommended to downgrade MIUI to this version, otherwise the ROM might not boot

In the future, once more custom ROMs come out, it should be easy to turn this guide into general flashing instructions instead and not just for Arrow OS, which would be a great resource to have here ;)
 

urbanman2004

Senior Member
Sep 16, 2013
386
172
Rock Town
Excellent guide (y)
My suggestions in terms of improvements:
- 7-day waiting time before unlocking: I would mention that wiping the device or removing the Mi account from the device could result in the timer being reset;
- DFE/Encryption Disabler: it's optional, not needed for the ROM to work and thanks to disabling encryption it compromises security;
- Firmware: Arrow OS requires MIUI V12.0.4.0 firmware, so before flashing Arrow OS it's recommended to downgrade MIUI to this version, otherwise the ROM might not boot

In the future, once more custom ROMs come out, it should be easy to turn this guide into general flashing instructions instead and not just for Arrow OS, which would be a great resource to have here ;)
Fair enough, thanks for the suggestions. I can add them in.
 

Aulig

Member
Dec 22, 2019
17
4
Thanks for this detailed guide! I'm currently on MIUI 12.0.2 - do you know if I have to update to 12.0.4 first or if I can follow your guide directly?
 
  • Like
Reactions: urbanman2004

urbanman2004

Senior Member
Sep 16, 2013
386
172
Rock Town
How stable is the PBRP Beta? Great Guide btw
More stable than other unofficial custom recoveries such as OrangeFox, especially when it comes to functionality. Based on my experience using OrangeFox, it failed to flash anything that was already present on my microSD, but PBRP worked OOB w/ no issues first time, and allowed me to copy over files onto the microSD while the device was in recovery while simultaneously being connected to my PC. Thanks btw.
 

Aulig

Member
Dec 22, 2019
17
4
Yes, you have to update to MIUI 12.0.4.0 before flashing.
Thank you, I did that now and then followed the guide (without disabling encryption as that's an important feature to me). Super easy to follow even though I haven't been modding a lot these past years. Worked perfectly, thanks @urbanman2004

Tip: make sure to check safetynet with an app and not magisk, as described in the thread linked regarding magisk hide :)
 
Last edited:

urbanman2004

Senior Member
Sep 16, 2013
386
172
Rock Town
Thank you, I did that now and then followed the guide (without disabling encryption as that's an important feature to me). Super easy to follow even though I haven't been modding a lot these past years. Worked perfectly, thanks @urbanman2004

Tip: make sure to check safetynet with an app and not magisk, as described in the thread linked regarding magisk hide :)
Thanks for the compliment... I didn't feel the need to include how someone could check their device's SafetyNet status, but the app I use is called SafetyNet Helper Sample in the Play Store.
 

bla.tiga

Senior Member
Aug 17, 2015
145
11
jakarta
Very detailed instruction thumbs up...

My questions
1. For miui requirement the MIUI V12.0.4.0 , is it free or need specific version like chinese or europe or asia or america for more clearly
2. In future when twrp or custom recovery available , can we just flash the rom via recovery as simple as that. Like other phone
 

urbanman2004

Senior Member
Sep 16, 2013
386
172
Rock Town
Very detailed instruction thumbs up...

My questions
1. For miui requirement the MIUI V12.0.4.0 , is it free or need specific version like chinese or europe or asia or america for more clearly
2. In future when twrp or custom recovery available , can we just flash the rom via recovery as simple as that. Like other phone
Thanks for the compliment. To answer your questions:
1) Any version of MIUI V12.0.4.0 will do.
2) To flash future OTA updates (ROMs), it will require flashing the "compatible recovery" (vayu ArrowOS Recovery) in fastboot mode, rebooting the device then followed by installing the OTA update once it becomes available and letting it flash automatically.
 
Last edited:

lulzor

Member
Dec 29, 2011
48
0
Xiaomi Mi 5
hello all,

I have flashed vanilla version of ArrowOS, and magisk...

could somebody help me with installing microG for VANILLA build ROM? I'm new to microG stuff, so I don't really know from where should I install, what version etc.


some apps are not running as they require Google play services
 

as400l

Member
Apr 8, 2021
16
9
Warmian-Masurian Voivodeship
I have asked this question elsewhere but maybe somebody here has some experience. Is it possible to install ArrowOS OTA with another TWRP than from ArrowOS ?

I'm asking because this AOS TWRP is very limited in functionality.
 

urbanman2004

Senior Member
Sep 16, 2013
386
172
Rock Town
I have asked this question elsewhere but maybe somebody here has some experience. Is it possible to install ArrowOS OTA with another TWRP than from ArrowOS ?

I'm asking because this AOS TWRP is very limited in functionality.
So I have some breaking news:
I can confirm that the latest unofficial alpha version of TWRP (TWRP-3.5.1-vayu-Nebrassy-1) is capable of decrypting and reading internal storage. Due to this advancement, I can also confirm that ArrowOS OTA updates will officially work using TWRP. There is NO NEED TO USE ANY OTHER CUSTOM RECOVERY BESIDES TWRP.
 

newbrn

New member
Feb 6, 2013
2
1
Xiaomi Poco X3 Pro
My bootloader unlocks in 4 days and I am planning to change the room using your guide. I have a doubt, I am a beginner. can I do step 8 with TWRP instead of Pbrb (test3)? Would the steps be the same with the change?
 
  • Like
Reactions: Chiranjeevi reddy

Top Liked Posts

  • There are no posts matching your filters.
  • 36
    If you've recently purchased a Xiaomi Poco X3 Pro, but were on the fence about using it until an AOSP ROM became available then you're in luck. Kudos to @kubersharma for his contribution by providing us the first official AOSP release, ArrowOS v11.0 [vayu].
    Now, throughout this guide, I have linked the page or post based on information I gathered to put this guide together in order to credit that person instead of having to name drop them individually. These are fully detailed instructions to make it easier for newbs.
    I've spent the better part of my day figuring all of this stuff out so hopefully you won't go through the trouble I did. PLEASE DO NOT PM ME FOR HELP. REPLY TO THIS GUIDE BELOW, THANKS. NOW LET'S BEGIN!!!

    UNLOCK BOOTLOADER
    1. Unlock the bootloader with Xiaomi Unlocker tool.
    a. Be aware this process will factory reset the device before proceeding.
    b. Download the Mi Unlock app onto your PC. Extract the contents within the zip file into an empty folder then run the app.
    c. Register for Xiaomi account and sign in with your Mi Account.
    d. Your Mi Account must be added to your Mi Settings
    • Sign into your Mi Account on the device.
    • Go to Settings –> About Phone –> tap on MIUI version (For POCO) until it says Developer options is enabled.
    • Back out of About Phone, Additional Settings –> Developer options –> Mi Unlock status.
    • Agree, then "Add account and device".
    e. Shut down your phone manually, and hold Vol down + Power button to enter Fastboot mode.
    • Download and install the latest Xiaomi USB Drivers or here (or Google's latest USB drivers for Windows if all else fails) for your PC.
    • Connect the device to the computer via USB cable, and confirm that your phone shows up recognized as "Android Bootloader Interface" (in Device Manager), and click "Unlock" in the Unlock app.
    • NOTE: If Windows does not recognize the device due to it automatically installing the wrong "Kedacom Device Driver" then you will have to manually install the drivers for "Android ADB Interface/Android Bootloader Interface".
    f. After your first initial unlock attempt, you MUST wait 168 hours before unlock process can fully complete.
    • Wiping the device or removing the Mi account from the device could result in the timer being reset.
    g. After the waiting period expires, click "Unlock" in the Unlock app. You will notice the phone will restart followed by subsequent different screens during the phone's boot sequence including the "POCO" screen which now displays an "open lock icon" at the top, indicating your bootloader unlock attempt and will eventually end up on a "This device is locked" screen where you have to confirm you are the device owner by entering your Mi Account password to "activate this device"; connect to your WiFi prior to doing so if the device lacks an active sim card.

    FLASH CUSTOM RECOVERY, DECRYPTION DISABLER, & ROM THEN ROOT
    2. Download the Official ArrowOS v11.0-vayu fastboot ROM for POCO X3 Pro [direct link here].
    a. NOTE: ArrowOS requires MIUI V12.0.4.0 firmware so it recommended to downgrade to this version before flashing ArrowOS otherwise the ROM may not boot.
    b. Choose the GApps build type which "includes Play services and now some AOSP apps have been replaced with GApps... All GApps packages and other[sic] files [were] extracted from original firmware images for Pixel4XL (coral)."
    3. [OPTIONAL] Download the latest version of Encryption Disabler then copy it along with the fastboot ROM into a folder named 'TWRP' on the root of your microSD.
    4. Ensure USB Debugging is already enabled on your device (in Settings –> Additional Settings –> Developer options).
    5. Remove any screen unlock (i.e., fingerprint, PIN, pattern or password) in MIUI.
    6. Power off device and put it in Fastboot mode (Vol down + Power button).
    7. Download the latest SDK Platform Tools from Google for adb compatibility and create a folder called "adb" in the root of the "C:\" drive.
    a. Extract the files adb, AdbWinApi.dll, AdbWinUsbApi.dll, and fastboot into the folder.
    b. Ensure the latest USB drivers are installed for your PC, connect the device to the computer via USB cable, and confirm that your phone shows up recognized as "Android Bootloader Interface".
    c. Launch "Command Prompt" on your PC and run the command:
    cd C:/adb
    • To show a list of devices (including your phone) connected to your PC, enter the command:
    fastboot devices
    8. Download the unofficial Pbrb (test3) recovery file (PitchBlack Recovery Project 3.1.0 unofficial) by Alex Besida and copy it into the ADB install folder and rename it to "recovery.img".
    9. Flash custom recovery file in CMD, run commands:
    fastboot flash recovery "recovery.img"
    fastboot boot recovery.img
    10. Your device should automatically boot into custom recovery. At this point, the microSD will become accessible from recovery or the PC, but the device's internal storage will not be which makes using a microSD card much more imperative for this process since the recovery is in early access development.
    a. Go to Wipe –> Format Data, type "yes" to perform data wipe; Back out to the main menu.
    b. Go to Install –> Navigate to the TWRP folder on the microSD (via "external_sd").
    • Select "Arrow-v11.0-vayu-OFFICIAL-20210424-GAPPS.zip" and flash the ROM, but do not change any of the checkboxes that show up before doing so.
    • Format data (not wipe) before rebooting into the new ROM.
    • NOTE: At most it takes around 1 minute to boot back up.
    11. [OPTIONAL] Power off the device and boot back into recovery.
    a. Go to Install –> Navigate to the TWRP folder on the microSD.
    • Select " Disable_Dm-Verity_ForceEncrypt_11.02.2020.zip" and flash it, but do not change any of the checkboxes that show up before doing so.
    • NOTE: This will disable forced encryption of data partition for better performance and internal SD + Data mounting in TWRP. It's not needed for the ROM to work, but due to disabling encryption it compromises security.
    • Reboot into the new ROM.
    12. After going through the phone's boot sequence, you'll be presented with the initial phone setup process onscreen where you can begin recovering your data.
    13. Go to Settings –> About phone –>tap on Build number until it says Developer options is enabled.
    a. Back out to Settings –> System –> to access Developer options –> Enable USB Debugging.
    14. Installing Magisk via custom recovery will fail in the background, resulting in an unresponsive "POCO" screen which is caused by installer scripts not being able to properly detect the correct device info or the recovery environment does not meet its expectation. In this case, you will need to use the Patch Image method as it is guaranteed to work 100% of the time. Installing Magisk through custom recoveries on modern devices is no longer recommended due to this reason.
    a. Pull down the Notification Bar from the top of the screen and change "Charging this device via USB" to "File Transfer".
    b. Open " Arrow-v11.0-vayu-OFFICIAL-20210424-GAPPS.zip " and copy "boot.img" to the phone's internal storage.
    c. Download the latest version of Magisk (Magisk v22.1) and copy it to the phone's internal storage and use the native "Files" app to install the apk.
    • NOTE: Magisk binaries (ZIP) are now included within Magisk Manager APK file. Now you don’t have to download it separately. You can install the .apk file or rename its extension to .zip then flash it through custom recovery / TWRP.
    d. Launch Magisk from the app drawer and go to "Install" under Magisk –> "Select and Patch a File," select the "boot.img" you copied internally –> "LET'S GO".
    e. Copy the generated patched file to the ADB folder and flash it via fastboot by running the following commands:
    cd C:/adb
    fastboot flash boot boot.img
    f. Reboot into the new ROM and voila!
    fastboot reboot
    g. Use an app such as Root Checker or BusyBox Checker (from the Play Store) to confirm root status.
    h. To bypass/restore SafetyNet validation, open the Magisk app, go to Settings (cogwheel icon) and enable MagiskHide.
    5
    I have asked this question elsewhere but maybe somebody here has some experience. Is it possible to install ArrowOS OTA with another TWRP than from ArrowOS ?

    I'm asking because this AOS TWRP is very limited in functionality.
    So I have some breaking news:
    I can confirm that the latest unofficial alpha version of TWRP (TWRP-3.5.1-vayu-Nebrassy-1) is capable of decrypting and reading internal storage. Due to this advancement, I can also confirm that ArrowOS OTA updates will officially work using TWRP. There is NO NEED TO USE ANY OTHER CUSTOM RECOVERY BESIDES TWRP.
    3
    SIDENOTES:
    These are either my comments or other user's comments that may be considered helpful as it relates to ArrowOS

    Picture guide unlock bootloader, flash custom ROMs & root Xiaomi Poco X3 Pro (Credits to @pl1992aw)

    Using TWRP to install OTA Updates

    Installing OTA updates

    Stability of 'PitchBlack Recovery Project' Recovery

    How to verify SafetyNet status

    Feel feel to let me know of other threads or comments that are also related to installing ArrowOS.
    2
    Excellent guide (y)
    My suggestions in terms of improvements:
    - 7-day waiting time before unlocking: I would mention that wiping the device or removing the Mi account from the device could result in the timer being reset;
    - DFE/Encryption Disabler: it's optional, not needed for the ROM to work and thanks to disabling encryption it compromises security;
    - Firmware: Arrow OS requires MIUI V12.0.4.0 firmware, so before flashing Arrow OS it's recommended to downgrade MIUI to this version, otherwise the ROM might not boot

    In the future, once more custom ROMs come out, it should be easy to turn this guide into general flashing instructions instead and not just for Arrow OS, which would be a great resource to have here ;)