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 are no significant unacceptable bugs, nor any notable advantages in experience; it remains as bloated as ever. With 8+4 GB of RAM, there is consistently only about 3 GB free in the background, and with a bit more background usage, especially after playing domestic AAA titles, it still lags, 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 is less than 30 GB free out of 128 GB.
-
Currently, domestic phones often come with some "supervision" measures built-in, making it inconvenient for me to install some commonly used foreign applications, and there is 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've experienced so far:
- A clean and simple system that runs smoothly with quick animations (though it can also be described as a "shell house");
- Good compatibility with the K40, allowing for fingerprint payments and supporting Unicom's 5G network;
- Google Photos allows for free unlimited photo backups and supports magic photo editing features.
A few drawbacks I've 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 while 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 equal successful application; the specific result is subject to official notification.
For some models upgraded from MIUI to Surge OS, like my K40, there are some unofficial methods to bypass these requirements and unlock the BL directly following the usual process.
I successfully unlocked it by following the method in a Bilibili video: 「Surge OS Unlock BL Tutorial Without Answering Questions - Surge Answering Tool Usage Tutorial - Lingchuang Studio」.
2. Downgrading to MIUI System (Optional)#
Actually, after unlocking the BL, I immediately 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 into the PixelExperience system.
4. Installing Magisk (Optional)#
Since the BL is already unlocked and a non-official system is flashed, 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 flash the.zip
file via adb sideload; - 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
). -
Install 「冰箱」 to manage various AAA titles through the fridge.