Trying to run the Mi Note 10 port on Mi Note 10 Lite

I have tried to boot without installation, looks that it is working
# fastboot boot TWRP_3.5.0_10-Q-toco-AndroidHQ254.img

Now, I can install TWRP, this commands should be correct?
# fastboot devices
# fastboot flash recovery TWRP_3.5.0_10-Q-toco-AndroidHQ254.img
# fastboot reboot

Yup. Usually there are documented in the twrp site Xiaomi Mi 10 Lite for each device

1 Like

Okey, the twrp site says about additional step - vbmeta:
#fastboot --disable-verity --disable-verification flash vbmeta vbmeta.img
Verified Boot Metadata are referred to as “vbmeta” in Android devices.
I find a empty “empty_vbmeta.img” file (empty_vbmeta.img | by Franky_39 for Generic Device/Other)
This topic (HOT - Download empty vbmeta to disable verified boot | Martview-Forum) says that need to flash empty_vbmeta.img

So, firstly I should flash empty_vbmeta.img using commang:
# fastboot flash vbmeta empty_vbmeta.img
Or
I should flash stock vbmeta, but with flags
# fastboot --disable-verity --disable-verification flash vbmeta vbmeta.img
What option is better? (Method3/4 - How to disable dm-verity or Android Verified Boot (AVB))

and then
# fastboot devices
# fastboot flash recovery TWRP_3.5.0_10-Q-toco-AndroidHQ254.img
# fastboot reboot

Correct me if I am wrong?

That should be correct. I don’t remember if I myself used the empty vbmeta, but I assume the instructions are correct.

Step 2 is complete.
image
Yes, Boot into recovery mode is vol-up + power button.

To make sure that I’m doing everything right:
3.1 Clear/format /data from TWRP or OrangeFox UI

In the main menu I choose “Wipe”


and here I should choose “Format Data” right? or “Advanced Wipe”?

3.2 adb push sailfishos-tucana-release-$xyz.tar.gz /data/ (replace $xyz with what you have)
I boot phone to fastboot mode, and here I execute command from PC (linux terminal) # adb push sailfishos-tucana-release-4.6.0.13-pre.zip /data/
Right?

3.3 adb shell
I execute command from PC (linux terminal) # adb shell

3.4 mkdir -p /data/.stowaways/sailfishos
I execute command from PC (linux terminal) # mkdir -p /data/.stowaways/sailfishos

3.5 tar --numeric-owner -xvzf sailfishos-tucana-release-$xyz.tar.gz -C /data/.stowaways/sailfishos
I execute command from PC (linux terminal) # tar --numeric-owner -xvzf sailfishos-tucana-release-$xyz.tar.gz -C /data/.stowaways/sailfishos

Format data.
And adb commands not from fastboot mode but from recovery/TWRP node.
For the rest of the commands, they might need adjusting based on paths you choose. They are from PC, but the moment you enter adb shell they are run effectively on the device

Okey, I will start “Format Data”.
I think that I got it, in the TWRP main menu under “Advanced” tab I found “ADB Sideload”

So, I should use “ADB Sideload”, right?

No, just adb commands from your PC when TWRP is running.

Step 3 is complete. I think :slight_smile:
Result:


So, I will start step 4.
Reboot into fastboot, and flash the kernel “fastboot flash boot hybris-boot.img”

Step 4 is complete.
image

Step 5. dmesg lists content Mer Boat Loader when USB is connected
image

But when I start phone as usally, I seeing only “mi” logo

Maybe I forgot something?

Maybe, I forgot this step:
The last step just unpacked the rootfs where the boot image tries to find it. Clearing /data from now on will also clear the rootfs so you have to redo steps 3.1-3.5 if so

Where I can get sailfishos-rootfs.tar.bz2?

You can leave it on the mi logo longer.
Also connect through telnet and issue journalctl -f as early as possible (follow) or -b if later (from beginning of boot) into a console that has large buffer size so you can select and paste the output in a pastebin service

The rootfs is the sailfishos-tucana-release tar gz you used. Btw, which one did you use?

last available version: sailfishos-tucana-release-4.6.0.13-pre.tar.gz

I can connect to telnet after ~3 min from phone starting
https://paste.fo/caea231d91a1

1 Like

Ok, we’re in porting debug mode now:)

Maybe port 2323 works earlier.
You can edit /etc/systemd/journalctl.conf to make Storage=Persistent and have more backlog.
In the next reboot try to connect from two terminals and also issue logcat in the second one.

I have a feeling that a LineageOS-based ROM’s system.img is needed though. Can you search a 17.1 Lineage fir toco and try flashing just system.img?

1 Like

I will try to find Lineage OS 17.1 for Xiaomi Mi Note 10 Lite (toco). I known that it exist

I will try to edit /etc/systemd/journalctl.conf to make Storage=Persistent and provide new logs, I will let you known, when it is done.

Looks like that this “lineage-17.1-20201110-UNOFFICIAL-toco.zip” image is gone from network. Links for downloading are dead. I find and downloaded other firmware “lineage-18.1-20210403-UNOFFICIAL-toco.zip”, but it is 18.1.
It is not suitables for my case?
One guy told me that I can use system.img from any GSI-firmawe (Generic System Image). I don’t known what it mean. But he give me a link.
I suppose that it related with Project Treble - Android Developers Blog: Here comes Treble: A modular base for Android?

I. GSI: Sure, it is worth a try. Especially if GSI is based on Lineage. The device does not have A/B as far as I remember, for example this version encoding suggests avN image should be enough - however only avS is provided there (with superuser). Maybe it is not a problem.

II. Other thing is that we still don’t have complete logs to diagnose what is actually the error with your current system.img maybe it is unrelated. I know at least of one feature that would not work without Lineage, and that is fingerprint, but it should not block boot (and may not even work on toco at all). And FOD may not work with GSI either :wink:

III. And as last point, even if a build is not available, with a decent hardware one can imagine you can build one of the Lineage 17.1 for toco system images yourself, provided that there are sources out there (+ manifest entries).