As domestic mobile phone systems become increasingly refined, major manufacturers are imposing stricter restrictions on Bootloader (BL) unlocking. This has led to fewer users willing to attempt rooting or flashing their Android phones for deep customization. After using the Surge OS for a few months, I ultimately decided to flash my Redmi K40 with the PixelExperience (PE) system. In this article, I will document the entire process of this "modding" experience in detail.
Reasons#
-
After using Surge OS for a few months, compared to the previous MIUI, there were no significant unacceptable bugs, nor any noticeable advantages in experience; it remained as bloated as ever. With 8+4 GB of RAM, I consistently had only 3 GB free in the background, and with a bit more background activity, especially after playing domestic AAA titles, it still lagged, not performing any better than my overheating iPhone 12 mini.
-
The system space usage is also quite severe; after installing various domestic AAA titles and having almost no photos, there was less than 30 GB free out of 128 GB.
-
Currently, domestic phones have some built-in "supervision" measures, making it inconvenient for me to install some commonly used foreign applications, and there’s always a feeling of being monitored, which is psychologically uncomfortable.
What is PixelExperience#
Pixel Experience is a third-party Android ROM system based on AOSP (Android Open Source Project), essentially a system that closely resembles the Google Pixel phone system. However, PE has stopped maintenance as of 2023, so the latest version that can be flashed is PE13.
Here are a few advantages I have experienced so far:
- A clean and simple system that runs smoothly with light animations (though it can also be described as a "shell house");
- Good compatibility with the K40, allowing for fingerprint payments and supporting China Unicom's 5G network;
- Google Photos allows for free unlimited photo backups and supports magic photo editing features.
A few drawbacks I have noticed:
- Special internet techniques are needed to have a reasonably good experience;
- Occasionally, there are minor bugs, such as the inability to bring up the background with a swipe;
- Automatic brightness fluctuates during gaming.
Starting the Modding Process#
1. Unlocking the BL#
BL (Bootloader) must be unlocked to flash the device. Xiaomi, "born for enthusiasts," has raised the requirements for unlocking the BL after upgrading to Surge OS:
- Accounts with level 5 or above on the Xiaomi community can apply;
- Surge OS users must register and answer questions in the official community to gain application opportunities;
- Successful registration does not equate to successful application; the specific result is subject to official notification.
For some models that upgraded from MIUI to Surge OS, like my K40, there are unofficial methods to bypass the above requirements and unlock the BL directly following the usual process.
I successfully unlocked it by following the method in the Bilibili video: 「Surge OS Unlock BL Tutorial No Need to Answer Questions Surge Bypass Answer Tool Usage Tutorial Lingchuang Studio」.
2. Downgrading to MIUI System (Optional)#
Actually, right after unlocking the BL, I followed the flashing process provided on the PE official website, but during the Recovery flashing step, the phone got stuck on the logo screen, unable to enter Recovery or boot. After consulting ChatGPT, it suggested that the baseband version might be incompatible and recommended downgrading the system first.
I chose the MIUI 14 fastboot package and followed the tutorial 「Xiaomi Phone Fastboot Flashing Guide」 to downgrade using the official flashing tool MiFlash.
⚠️ Note that in the flashing mode, select “Wipe All” and not “Wipe All and Lock,” otherwise the BL lock will be re-engaged after successfully unlocking it.
3. Flashing PixelExperience According to the Official Tutorial#
PixelExperience Official Website
Select the compatible model on the official website and follow the provided tutorial step by step. Here, I will take the K40 as an example. 「Install PixelExperience on alioth」. It’s best to follow the English guide; if you have difficulty reading English, you can refer to this blog post 「Try Native-like: Flashing Pixel Experience on Redmi K40」.
The general steps can be summarized as:
- Download vendor_boot.img, recovery.img, and the build package (I chose the 13 plus version);
- Set up the ADB and fastboot environment on the computer;
- Flash boot.img to the boot partition via fastboot mode;
- Flash recovery via fastboot;
- Reboot the phone into recovery and use adb sideload to flash PixelExperience;
- After successful flashing, reboot to enter the PixelExperience system.
4. Installing Magisk (Optional)#
Since the BL is already unlocked and I have flashed a non-official system, rooting is quite reasonable.
Steps:
- Download the version 23 APK file from the Magisk GitHub releases page (yes, use version 23);
- Change the file extension from
.apk
to.zip
; - Press and hold
Volume +
andPower button
simultaneously to re-enter the recovery interface, and use the same method as in "Step 3" to sideload the.zip
file; - After rebooting the phone, the Magisk icon will appear on the desktop;
- Enter Magisk, click install, and upgrade to the latest version using the
direct install
method.
5. Magisk Tuning#
-
Understand what Magisk is and flash the unbrick module: 「How to Install Magisk, LSPosed and Flash Your First Module」
-
Hide root and LSPosed:
「How to Hide Root and LSPosed」
「Three Steps to Hide」
6. Managing Domestic AAA Titles#
-
Try to install applications through Google Play
-
Install 「炼妖壶」 and place all domestic software in the partition (i.e., in the
in the pot interface
). -
Install 「冰箱」 to manage various AAA titles through the fridge.