GUIDE INFO PSA Redmi Note 8 Pro Megathread

Home » , » GUIDE INFO PSA Redmi Note 8 Pro Megathread

Redmi Note 8 Pro - The Megathread

Redmi Note 8 Pro - The Megathread

Background

Xiaomi sent many of us the Redmi Note 8 Pro (Indian variant - begoniain) back in November 2019. Development started out great, but came to an abrupt halt, when at one point all of us were bricked. A little bit of caution and a bit more of tinkering, and we're back!
Long story short, yes this device does brick, and yes there IS a method to avoid it!
I request you to take out some time and read the entire post, before you proceed. Following instructions is crucial, if you want to save yourself trips to the service center.

begonia? begoniain? what's happening?

There are 2 variants of the Redmi Note 8 Pro. "begonia" is the global variant whereas "begoniain" is the Indian variant. The only difference between the 2 is NFC. The Indian Variant has no NFC. And no, it's not as if it's disabled, the hardware is just not present. The TWRP and ROM builds target both, so you do not have to worry about a thing. Irrespective of where you bought the phone, all custom software is the same, and will run on both variants.

Unlocking the bootloader and gaining root

This has been covered by other post in the past, so i won't dive into too much detail here. You need to unlock your device using the Unlock Tool that Xiaomi provides and wait for almost a week (168 hours) to gain unlock permissions.
There's no way to get around this. Please follow any other guides for installing a recovery, flashing Magisk, disabling AVB and booting up.

Custom ROMs and bricking

Regarding bricks, yes this device will get bricked if you do stupid things or don't follow instructions. Chances are, someone has asked the same thing in the past.

Now, doing things like:
- Tripping AVB
- Flashing an incompatible boot and dtbo
- Flashing a weird boot image
- ???
Will result in a brick. You won't have fastboot, you won't have anything is such cases. Only Boot ROM download mode, which requires a Mi Authorized Account. In such cases, you will need to visit a service center.

Note: I do not recommend online services that promise to unbrick your device. Not only are they highly overpriced, but could result in you getting scammed, or have your data stolen. If you have a Mi Authorized Account and are willing to help us out, feel free to PM me. Any online service ads for the same will not be entertained.

Now, there is a way to prevent bricks entirely. However, is does not work with the MIUI 11 Android 10 Chine build that surfaced a few months ago. The factory firmware for begonia was leaked, @Xakep1993 discovered that the factory had a lot of security chechs disabled, and compiled in engineering mode.

Before we go any further, know that there is no way for you to unbrick a phone that's already bricked and is running the MIUI preloader. (Visit Service Center in such a case) The following applies only to devices that are in a good, working state and will prevent bricks.

Okay so how does that help?
Glad you asked. Every MediaTek device has 2 download connections. Boot ROM (aka BROM) and preloader. Boot ROM is burnt onto the SoC and is the first program to run. Preloader is loaded after. Boot ROM implements security measures against attacks, which includes flashing improper or malicious firmwares. This is "SLA" and "DAA", that is "Serial Link Authentication" or " Download Agent Authentication". This happens server side and requires the Mi Authorized Account, that only service centers have.

What's so different with this firmware?
Preloader runs after BROM, and does not require any security verification to write partitions. MIUI's preloader has download disabled. When you brick, you have Preloader starting and rebooting constantly. (And holding volume up gets you to BROM download). There's no way to talk to the MIUI Preloader. The Factory Preloader on the other hand, has download enabled. So, if something goes wrong, as long as the Factory Preloader is present you can unbrick!

How to install it?

if you are on MIUI 11 - Android 10, you will to downgrade to Android 9! This method will not work if you're on Android 10. Use MiFlashPro or fastboot to flash all partitions to a compitble MIUI 10 or 11 Android 9 build.
- Download preloader_begonia.bin and lk.img from download links
- Execute
Code:
'fastboot flash preloader preloader_begonia.bin'
'fastboot flash lk lk.img'
'fastboot flash lk2 lk.img'

(LK = Little Kernel = Bootloader)
You can now use SP Flash Tools to restore your "bricked" phone!
This will alse make the bootloader append certain debug flags to the kernel cmdline. So you may see some interesting behavior while Android is running!

Download Links

- preloader_begonia.bin
- lk.img

Okay, thanks for the "anti-brick" factory preloader! I'm gonna flash another MIUI build!
Hol' up, fam. You need to check whether the MIUI OTA you're installing contains Preloader and LK or not. If it does, remove it manually. Another method could be to install the OTA and then flash the factory Preloader and LK image again via fastboot.

Flashing ROMs

The install process is very simple and much like any other device:
- Download ZIP
- Push ZIP to device
- Flash using TWRP
- Install GApps (optional)
- Reboot

Unbricking

Assuming you have the factory preloader installed,
- Disconnect device from PC if connected
- Load SP Flash Tool
- Load firmware of choice
- Press download, SP Flash Tool will now wait for the device
- Connect device and don't hold any keys
- If the device doesn't detect, hold power for a 8-10 seconds
- If should start flashing right away without any authorization prompt!

Building ROMs

Things are still under development. Things may be broken, may or may not boot at all. Current code can be found below:
Device Tree - branch android-10
Vendor Tree - branch android-10
Kernel - branch master
DTBO Patch
Info about the patch: many partitions of the device (including DTBO) are signed using private keys. We don't have acces to these keys, and thus our generated dtbo images don't boot. I managed to strip out the certs, write a simple Python script and write custom dtbo generation rules that append the required certs.

Things may be missing here, more information will be added as necessary !!

Source: Forum-Xda
.
Share this article :