Installing a Custom ROM on an Out-of-service Xiaomi Poco X3 Pro (Vayu) (A-only Partition Scheme)
by Ahiyan Mahmud Haq in Circuits > Mobile
16 Views, 0 Favorites, 0 Comments
Installing a Custom ROM on an Out-of-service Xiaomi Poco X3 Pro (Vayu) (A-only Partition Scheme)
Installing a Custom ROM on an out-of-service Xiaomi Poco X3 Pro (Vayu)
Installing a custom ROM incorrectly may result in the “bricking” of even the most developer-friendly Android devices.
I am not responsible for any of damages that you may have inflicted on your device. Flash your device at your OWN risk.
Introduction: This is the document with everything I did during the process of installing a custom ROM on my phone. The custom ROM that I installed is crDroid 12.11 based on Android 16. The list of specifications for this install is given below:
Field
Details
ROM
crDroid
OEM
Poco
Codename
vayu
Maintainer
Pranav Vashi
Nickname
neobuddy89
Version
12.11
Android Version
16
Build Date
2026-06-09
ZIP Size
1.8 GB
[I do not know how to make tables in here]
Firstly, The main reason why I decided to install a custom ROM was to get acclimated with the Operating Systems (OSes) of different architectures. Since this was my first time gaining full access with the device changing the stock ROM of an Android smartphone, I encountered some rookie mistakes along the journey. Such hurdles include incorrectly unlocking the bootloader (not bricking, just got some errors) and going through many articles regarding the successful install of custom ROMs on this device. Most notably, I had to wait a full 168 hours for verification and permission to unlock the bootloader (this is a Xiaomi device; they don’t want you to unlock the bootloader).
Installing the right version and the recovery image for the EXACT model of your phone is extremely important.
I worked mindlessly and rather unproductively until I thought it was time to go to bed after installing the right custom recovery image to the phone (and replacing the existing OEM recovery). Since this is a Poco X3 Pro (vayu), the custom recovery image gets overwritten by the OEM ROM.
Woke up next morning and reflashed the recovery image and flashed it using:
fastboot flash recovery recovery.img
Booted into it using:
fastboot boot recovery.img
After that I started flashing important the crDroid zip file and sideloaded it using the Android Debug Bridge (ADB) and important Google Apps (GApps for short) using NikGapps which is best for the ROM I installed. I excluded distracting apps like YouTube and unnecessary apps like Digital Wellbeing or Google Contacts (I will use a open-source version; Google’s real intention is to profit lucratively).
Note: The custom recovery that I installed did not stay in the device and got overwritten even after “hotbooting” and then installing as prescribed by the makers of the recovery. (I was using OrangeFox R12 because it has one of the best guided user interfaces I’ve ever seen).
After flashing, I immediately encountered some unforeseen issues like not passing the all three device integrity levels, but had MEETS_ BASIC_INTEGRITY which was enough for me. A custom ROM allows for much more granular customization and thereby allows to meet your smartphone workflow demands, and since the build for me was based on Android 16, I got access to a lot of great features.
I saw that F-Droid and other Free and Open Source (FOSS) essential applications from that specific repository were missing, so I installed them. A custom ROM also allows for custom backups, instead of being limited to only Google’s annoying cloud storage service. For tinkerers like me, I recommend making your own storage solution (if possible, may depend on financial conditions and parts) as it is a more satisfactory to inaugurate and watch your own machine work than see money automatically flying out of your digital pocket at monthly intervals.
I later gained superuser privileges by hotbooting into OrangeFox and flashing Magisk and therefore negatively influenced my devices security and stability significantly. However, it was not a terrible experience, its just that some badly developed Chinese fitness apps did not work.
So, I had to unroot. I will root once that app receives a significant software update to see if it isn’t rudimentary anymore.
Overall, this was an amazing experience and I got to liberate my phone from greed and malintent (malevolent intention).
Many features improved, including digital privacy, speed, longetivity (upgraded from A12 to A16, A is short for Android), gaming performance (even though I don’t play video games) so I future-proofed it. Everything I use from Google is their search engine and Chrome (no custom ROM for Honor devices). However, I think the battery consumption increased significantly which is because I chose A16 for a A12 device.
The finished project is mainly significant GUI improvements; a photograph of the finished project is given below:
Supplies
Prerequisites (required hardware):
- A working personal computer (PC) (as Android Debug Bridge (ADB) host) with either GNU/Linux, Windows or MacOS (other Unix-like operating systems like FreeBSD or OpenBSD also work) because Android SDK tools are cross-platform.
- The stock or OEM USB cable that you got with your phone or a data-transfer enabled cable from reputable such as Ugreen or Anker.
- Be in physical and personal possesion of the Android phone itself. Make sure that others are not harmed due to loss of data on your phone. Although you can "jailbreak older Iphone models to run Android, this is not the tutorial or instructable to do so.
*Note: The prerequisites given above only apply for the method I used to install a custom ROM on my device.
Backing Up Important User Data and Using Device Info.
Step 0: Backup all important data on your phone and/or transfer others data on the phone to be in the possession of the owner of that data. This is labeled as 'Step 0' because it is, at most cases absolutely fundamental and OrangeFox documentation on the OrangeFox Wiki has the installation page labelled like this.
*Note:
- This is for non-rooted devices.
- This instructable or tutorial is for A-only partitioned devices. On Android phones, there usually can be 2 types of partition schemes:
- A-only
- A/B partitioning
- This is for non-Samsung devices. They are the easiest to install custom ROMs on.
- The hotkeys for booting into bootloader mode can be found using internet searches.
- If you make a mistake, look for the solution online by internet searching.
Checking Warranty and Finding Out the Model Name and Codename
Step 1: Find out the model name of your phone (allowing you to find codename of the phone) by going into 'About phone' in your system settings app.
Installing a Custom Recovery
Step 2: Firstly, Install the necessary software such as the Android Debug Bridge (ADB) (on the host device or your x86/ARM processor enabled computer), the .zip file containing the custom recovery like Team Win Recovery Project (TWRP) or OrangeFox Recovery compatible with your EXACT device (use EXACT model name or risk breaking your device forever), the .zip file build of custom ROM for your EXACT device like LineageOS or crDroid (for your device). The installation of ADB is usually done by downloading the files from the following website:
Enabling Developer Options
Step 3: Enable Developer Options on your phone by tapping build number or MIUI version 7 times on Xiaomi phones with MIUI installed (differs from stock or OEM ROMs) on your device.
Useful tutorial can be found in the web page given below:
https://www.android.com/intl/en_uk/articles/enable-android-developer-settings/
Unlocking the Bootloader
Warning: Unlocking the bootloader will result in the loss of all data on the device (factory reset) and introduction of new security vulnerabilities. Re-locking the bootloader while having a custom ROM installed will result in the permanent loss of your phone by extreme 'soft-bricking.' (as far as I know)
Step 4: Then, unlock the bootloader on your device. It is easy and does not require authentication on Samsung devices but is hard on Xiaomi devices devices due a mandatory waiting requirement of which timer can be restarted or increased on failure to comply with instructions, for what is claimed authentication. Huawei devices' bootloader cannot be unlocked; rendering the install of a custom ROM impossible. Attempting to unlock the bootloader will result in an error.
Unlocking the bootloader requires using a command in the bootloader mode:
Step 1: Power off your device.
Step 2: Enter bootloader mode by pressing power and the volume down key on your device (use your device's specific hotkey for entering bootloader mode).
Step 3: If your phone is not plugged in the host computer, plug it in and run the following command to attempt unlocking the bootloader:
Flashing the Custom Recovery
Step 5:
If you are using Windows:
Step 1: Open command prompt.
Step 2: Assuming that you have set up ADB properly, Navigate to the platform-tools (which must be the place where the recovery image file (usually 'recovery.img') of your custom recovery) directory in the place you installed inside command prompt.
Step 3: Enter bootloader mode or fastboot on your phone by using the bootloader or fastboot hotkeys for your device (it is usually volume down + power button)
Step 4: After entering bootloader mode; using the below command, flash the custom recovery's image ("hotboot" method):
If you are using a Debian based GNU/Linux distribution:
Step 1: Open the terminal application you use(you can open the terminal in the GNOME Desktop Environment (DE) by pressing using the shortcut: Ctrl+Alt+T)
Step 2: Assuming that you have set up ADB properly, Navigate to the directory where your recovery image (usually 'recovery.img') is located.
Step 3: Enter bootloader mode or fastboot mode on your phone by using the bootloader or fastboot hotkeys for your device (it is usually volume down + power button)
Step 4: If your device is not plugged into the host computer, plug it in and flash the custom recovery's image ("hotboot" method):
Booting Into Custom Recovery
Step 6: Since you have already done the initialization steps which differ from Operating System to Operating System in the previous step, continue:
Wait for the recovery image flashing to output 'OKAY,' then run the following command to reboot into recovery from fastboot (which has the old recovery replaced with the new recovery):
Using Custom Recovery to Sideload/flash the Custom ROM
Step 7: If you have successfully entered the custom recovery's GUI, then proceed by starting the 'ADB Sideload' feature (available on both OrangeFox and TWRP) and format data and wipe Dalvik/ART caches as well as Cache (remove old ROM data) then run the following command on the host device to sideload or flash the custom ROM of your choice (DO NOT COPY AND PASTE, USE AS A TEMPLATE FOR YOUR COMMAND):
Optional: Flash Google Apps
Warning: Read carefully! If you need Google Apps (GApps), sideload/flash them before continuing because it is considered impossible to flash GApps after first boot or setup, so if you want them after the first boot you will have to format A partition and then sideload/flash them afterwards. So flash GApps before first boot.
Flashing GApps:
Make sure you have the GApps installed in .zip file format (if not, install them) and flash them using the following command:
Boot Into the ROM for the First Time and Enjoy It!
Once sideloading/flashing has finished, then boot into the ROM by using the GUI of the custom recovery.
Once you have booted into the custom ROM, go through setup and initialize a backup and complete it if you need to and then install your required apps via your app repository of choice (like F-Droid or Play Store).