Booting a custom OS on a Redmi “onc” 7
I was gifted a Redmi Note 7. MIUI is okay, but there’s ads baked into the app installer and I’d really rather run something like LineageOS or even postMarketOS. Unfortunately, this is not the
onclite variant that’s supported by things like TWRP, it’s a dual SIM variant that’s closer to the Redmi Y3, codename
Where I’m up to
I’ve grabbed the source code from https://github.com/KostyaJRZ/android_device_xiaomi_onclite-twrp and even managed to build it. When I run it with
fastboot boot recovery.img the phone seems to crash into Qualcomm EDL mode. Normally with Qualcomm EDL you’d be able to pull some kind of debug log, but this doesn’t seem to be the one that’s supported by official or unofficial utilities (QDLoader/Diagnostics 9008) - this is Diagnostics 900E, turning up with USB ID 05C6:900E. Without talking to a (former?) Qualcomm employee or stumbling on a PDF somewhere, I’ve got no real way of working out what state the phone is in.
Why I’ve stopped
Without pulling apart the phone and lucking out finding UART or JTAG, it’s really really difficult to work out what’s going wrong and to work towards a successful boot. The whole experience has been pretty discouraging - for the amount of time and money I’ve spent on phones like this, I should have just bought a couple of Pixel devices or a FairPhone
I would consider Xiaomi pretty hostile towards people who want to unlock or flash the hardware they’ve bought - just look at the people who’ve got a countdown before they’re allowed to even attempt an unlock.
Possible next steps
Unpacking and examining the official firmware
Booting the original kernel or the TWRP kernel in QEMU
Buying a mainboard and looking for UARTs