[Xiaomi Poco X3 Pro] urbanman2004:
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.