Homelab, Linux, JS & ABAP (~˘▾˘)~
 

[DerpFest] Xiaomi Pad 5 (nabu)

I recently bought a used Xiaomi Pad 5 for 139.99€ from homezesting.com. It arrived in perfect condition.
The latest official Android version by Xiaomi is Android 13 with MIUI 14.0.5. This is kinda old, and I directly ran into an issue due to the old webview version in combination with the Home Assistant app (see here).

I therefore looked for a custom ROM and the first ROM I found for this device was DerpFest. I’ve never used it before, but flashing it shouldn’t be too different from other ROMs.
There are not much information on their website, but I found everything needed to know in their related telegram group: https://t.me/c/2284318430/8189

Unlocking the bootloader for Xiaomi devices can be annoying, but turned out, the bootloader of my purchased Pad 5 was already unlocked. Great!
(Update 10.02.2025: I asked the customer support and apparently they already sell all devices unlocked. Good to know!)

To make my life even simpler, I used the Auto-Installer shell script to install DerpFest 15. Unfortunately, it was running into an error, but it was easy to fix. (Seems like there is already a fixed version when downloading from GitHub here).

# make it executable
sudo chmod +x install_derpfest_linux.sh         

# start script
./install_derpfest_linux.sh  
# resulted in the error: /bin/bash^M: bad interpreter

# fix
sudo apt-get install dos2unix
dos2unix install_derpfest_linux.sh   
./install_derpfest_linux.sh                                                                                

Then the script ran without any issues.

When starting the device the first time, I skipped the Google Login step, so I wasn’t able to use the Play Store. But since not even a web browser is installed by default (which I think is really great to not be bloated from the beginning :-), I had to enable USB-Debugging mode and sideload F-Droid to install basic apps like a file explorer and browser.

adb install F-Droid.apk 

The Tablet is running super smooth and so far I could not find any issues! 🙂

[Android] Upgrading LineageOS 20.0 to 21.0 on my Xiaomi Mi 8 (dipper)

Install the Android Debug Bridge (ADB)

https://wiki.lineageos.org/adb_fastboot_guide.html
https://github.com/M0Rf30/android-udev-rules#installation

# check if device is found
adb devices
# reboot into sideload modus
adb reboot sideload

Or manually boot into recovery, holding Volume Up + Power when the phone is off. Navigate to AdvancedADB Sideload.


Update MIUI Firmware

Following the docs, I first had to check the Firmware version. V12.0.3.0.QEAMIXM was required, and I already had it installed.
If you’re on an older version, download the right MIUI Firmware for your device from https://xiaomifirmwareupdater.com/firmware/dipper/.
Flash the new Firmware via TWRP or via ADB sideload.

adb sideload fw_dipper_miui_MI8Global_V12.0.3.0.QEAMIXM_7619340f8c_10.0.zip

Flash latest recovery

Since I follow the LineageOS subreddit, I have already seen posts with problems with the latest update. Check here: https://www.reddit.com/r/LineageOS/comments/1fxlmtq/regular_ota_update_20241005_on_xiaomi_mi8_dipper/
There it is recommended to flash the latest recovery to prevent any issues. Although this is step 1 in the upgrade guide, I skipped updating the recovery the last years, because I was using TWRP instead of the LineageOS recovery. But to be on the safe side, this time I flashed the LineageOS recovery (which meant loosing/removing TWRP). To flash the recovery, you must first boot into fastboot by using adb or Volume Down + Power when the phone is off, like it is described here.

# boot into fastboot
adb -d reboot bootloader
# flash recovery
fastboot flash recovery lineage-21.0-20241208-microG-dipper-recovery.img

Download and flash new LineageOS image

I’m using the LineageOS fork LineageOS for microG. Download it from here: https://download.lineage.microg.org/dipper/ (MI 8 = dipper)
The upgrade steps are the same as for the official rom: https://wiki.lineageos.org/devices/dipper/upgrade. As I’ve already flashed the latest recovery, I only had to flash the new LineageOS image.

# reboot again into recovery
adb reboot sideload
# flash again new image
adb sideload lineage-21.0-20241208-microG-dipper.zip

[Android] Gadgetbridge

“Gadgetbridge is a free and open source Android application that allows you to pair and manage various gadgets such as smart watches, bands, headphones, and more without the need for the vendor application. So in short, you can use Gadgetbridge instead of relying on your gadget’s own proprietary app.”

https://gadgetbridge.org

[LineageOS] When someone calls, my own number is appended to the caller’s number

I had an issue with my Xiaomi Mi 8 phone, which really annoyed me. For some callers, my phone number was somehow appended to the caller’s phone number. This also meant that the number was not matched with my contacts. It looked like this:

When searching, I found a reddit post (as always) where someone had the exact same problem, even using the same phone. Therefore, I’m not sure if the issue is Phone or Lineage related.

https://www.reddit.com/r/LineageOS/comments/inud0m/incoming_calls_caller_id_issue

The suggested solution is to disable VoLTE. To be honest, I didn’t even know what VoLTE was exactly. After reading a bit, I found the required setting under: Settings → Network and Internet → SIM cards → 4G calls.
And fortunately, it also helped in my case. I could not really notice a difference regarding the phone quality, therefore I’m fine with it.

[Android] Upgrading LineageOS 19.1 to 20.0 on my Xiaomi Mi 8 (dipper)

Install the Android Debug Bridge (ADB)

https://wiki.lineageos.org/adb_fastboot_guide.html
https://github.com/M0Rf30/android-udev-rules#installation

# check if device is found
adb devices
# reboot into sideload modus
adb reboot sideload

Or manually boot into TWRP recovery, holding Volume Up + Power when the phone is off. Navigate to AdvancedADB Sideload.


Update MIUI Firmware

Following the docs, I first had to check the Firmware version. V12.0.3.0.QEAMIXM was required, and I already had it installed.
If you’re on an older version, download the right MIUI Firmware for your device from https://xiaomifirmwareupdater.com/firmware/dipper/.
Flash the new Firmware via TWRP or via ADB sideload.

adb sideload fw_dipper_miui_MI8Global_V12.0.3.0.QEAMIXM_7619340f8c_10.0.zip

Download and flash new LineageOS image

I’m using the LineageOS fork LineageOS for microG. Download it from here: https://download.lineage.microg.org/dipper/ (MI 8 = dipper)
The upgrade steps are the same as for the official rom: https://wiki.lineageos.org/devices/dipper/upgrade. In my case only flashing the new image.

adb sideload lineage-20.0-20231204-microG-dipper.zip

[Android] Upgrading LineageOS 18.1 to 19.1 on my Xiaomi Mi 8 (dipper)

Install the Android Debug Bridge (ADB)

https://wiki.lineageos.org/adb_fastboot_guide.html
https://github.com/M0Rf30/android-udev-rules#installation

# check if device is found
adb devices
# reboot into sideload modus
adb reboot sideload

Or manually boot into TWRP recovery, holding Volume Up + Power when the phone is off. Navigate to Advanced -> ADB Sideload.


Update MIUI Firmware

Following the docs, I first had to check the Firmware version. V12.0.3.0.QEAMIXM was required, and I already had it installed.
If you’re on an older version, download the right MIUI Firmware for your device from https://xiaomifirmwareupdater.com/firmware/dipper/.
Flash the new Firmware via TWRP or via ADB sideload.

adb sideload fw_dipper_miui_MI8Global_V12.0.3.0.QEAMIXM_7619340f8c_10.0.zip

Download and flash new LineageOS image

I’m using the LineageOS fork LineageOS for microG. Download it from here: https://download.lineage.microg.org/dipper/ (MI 8 = dipper)
The upgrade steps are the same as for the official rom: https://wiki.lineageos.org/devices/dipper/upgrade. In my case only flashing the new image.

adb sideload lineage-19.1-20221217-microG-dipper.zip   

[Android] Upgrading LineageOS 17.1 to 18.1 on my Xiaomi Mi 8 (dipper)

Install the Android Debug Bridge (ADB)

https://wiki.lineageos.org/adb_fastboot_guide.html
https://github.com/M0Rf30/android-udev-rules#installation

# check if device is found
adb devices
# reboot into sideload modus
adb reboot sideload

Or manually boot into TWRP recovery, holding Volume Up + Power when the phone is off. Navigate to Advanced-> ADB Sideload.


Update MIUI Firmware

Following the docs, I first had to check the Firmware version. I was running V12.0.2.0.QEAMIXM, but V12.0.3.0.QEAMIXM is required.
Download the right MIUI Firmware for your device from https://xiaomifirmwareupdater.com/firmware/dipper/.
Flash the new Firmware via TWRP or via ADB sideload.

adb sideload Downloads/fw_dipper_miui_MI8Global_V12.0.3.0.QEAMIXM_7619340f8c_10.0.zip 

Download and flash new LineageOS image

I’m using the LineageOS fork LineageOS for microG. Download it from here: https://download.lineage.microg.org/dipper/ (MI 8 = dipper)
The upgrade steps are the same as for the official rom: https://wiki.lineageos.org/devices/dipper/upgrade. In my case only flashing the new image.

adb sideload Downloads/lineage-18.1-20220602-microG-dipper.zip