Related
LG Pro Lite D680
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
Boot On Charge
Non-generic feature for commercial purposes
URGENT NEED! - WILL DONATE
What we need:
I am looking for an urgent solution to boot-on-charge LG D680 cell phone, I am asking for help to developers who have experience on this area. The subject is related to unlock the bootlaoder, fastboot and custom rom. I understand the task is not simple, I am looking forward to donate whoever hacks the non generic feature.
What we do:
We provide video service through LG D680 cell phone (Also known as LG Pro Lite D680), the phone has 3G connection and is plugged to the power supply when is working.
Problem:
Most of the day the phone is plugged and working properly, however when the weekend comes the cell phone is unplugged and the energy is completely consumed. Currently, when the power is back to the cell phone we need to start the cell phone MANUALLY by pressing the power on button.
Goal:
We need the phone to be booted into the OS automatically when is plugged into the power USB cable (the phone initial status is powered off).
Possible Solutions / Alternatives:
Unlock the bootloader and run fastboot command fastboot oem off-mode-charge 0.
Continue our research, based on the steps described below (see LG D680 experience)
Replace charge animation with boot file command /system/bin/reboot (see Huawei experience below replacing ipod file).
Finding a custom ROM that already contains a Boot on Charge behaviour.
Finding a custom ROM that at least has “Power On Schedule” feature (AOSP certificate permissions level).
Finding a generic Android vestion with “Power On Schedule”.
Cellphone specifications:
PLATFORM
OS - Android OS, v4.1.2 (Jelly Bean), upgradаble to v4.4.2 (KitKat)
Chipset - Mediatek MT6577
CPU - Dual-core 1 GHz Cortex-A9
GPU - PowerVR SGX531
Previous work and research:
We did this "boot on charge" research in two types of cell phones. One is HUAWEI G730 and the other is LG D680. Fortunately, it worked fine in G730, but we haven’t the same results up to now on LG D680.
In Huawei G730, we replaced charging animation located at /system/bin/ipod with an ipod file containing “/system/bin/reboot” and worked like charm!
LG D680, we could not find the animation file, but we found that it might be inside the boot image. We did some research in order to modify it, but we got blocked (someone might continue our steps if useful).
HUAWEI G730 Extended Procedure:
Since this phone has a Mediatek chipset, the “battery animation” app is running on /system/bin folder. Is running with the filename ipod. The main task is to exchange ipod content (which is originally binary) to an ipod file with this content: /system/bin/reboot.
So, create a brand new file called ipod, and wrote the line in there. We transferred the file to the phone via adb push, as shown in next steps below.
Copy procedure: So, we set our phone to USB Debugging Mode, then we connected it to the PC, and run the following script:
adb shell mkdir /storage/sdcard0/carga/ (We created a folder to store files being pushed from the PC to the phone)
adb push ipod /storage/sdcard0/carga/ (We are pushing the file to the storage folder within the phone)
adb shell "su -c 'mount -o rw,remount -t ext4 /dev/block/mmcblk0p5 /system'" (This step is very important, here we remount the /system folder with read-write permissions. Only doing this we will be able to copy programmatically the “hacked” file ipod to /system/app. Look out that we used mmcblk0p5 because the system folder is mapped there in this phone. You can check this running cat /proc/dumchar_info)
adb shell "su -c 'chattr -i /system/bin/ipod'" (doing this we took out immutability to the original file ipod)
adb shell "su -c 'cp /system/bin/ipod /storage/sdcard0/carga/ipod.old'" (just creating a backup file from the original ipod)
adb shell "su -c 'rm /system/bin/ipod'" (here we are removing original ipod file)
adb shell "su -c 'cp /storage/sdcard0/carga/ipod /system/bin/'" (now we copy the new file ipod to the destination folder)
adb shell "su -c 'chmod 755 /system/bin/ipod'" (change the permission ro rwx-rx-rx)
adb shell "su -c 'mount -o ro,remount -t ext4 /dev/block/mmcblk0p5 /system'" (we remount the /system folder with read-only permissions)
adb shell "su -c 'reboot'" (Finally we reboot the phone)
RESULT: Whenever you plug in the phone to the charger when it is off, it will try to boot on the battery animation, but instead, it will be redirected to a “reboot” command, which in turn will be redirecting execution to the O.S.
LG D680 Procedure:
We found that this phone also has a Mediatek chipset. Moreover, it also has a file called ipod within /system/bin. But in this case, the bootloader image doesn’t call ipod whenever it displays the battery animation. So we had to check where is mapped the boot image on the phone by executing adb shell "cat /proc/dumchar_info". As the picture shows, the boot image (bootimg) is mapped in /dev/block/mmcblk0, from offset 0x1200000, and with size 0x900000.
We tried the following steps, in order to test if we were able to download / upload booting without bricking the phone:
We copy bootimg partition to boot.img by doing adb shell "su -c dd if=/dev/block/mmcblk0 of=/storage/sdcard0/boot.img bs=1024 skip=18432 count=9216’. (Skip and Count are measured on KBytes, and those values are offset and size translated from hexa to dec).
Then we did the inverse operation by executing: adb shell "su -c dd if=/storage/sdcard0/boot.img of=/dev/block/mmcblk0 bs=1024 seek=18432”
RESULT: The phone WASN’T bricked, and reboot normally (obviously without any change on bootimg).
Because these steps worked, we went even further, this time by unpacking and repacking boot.img file. The steps done were:
Same as (b)
We pulled boot.img file from the phone to a folder within the PC, and then we unpacked the image with bootimg.exe as the picture shows below. One interesting fact is that the pulled file sized almost 9MB.
Then we repacked it without any change inside the image, as the picture shows below. The “repacked” image is now on file “boot-new.img”, but its size is almost 7.4MB. We don’t know why we have this difference.
Same as step (ii) on (b).
RESULT: The phone resulted in a SECURITY_ERROR. It is weird because we didn’t change anything. We didn’t tried further since we are not able to unpack-repack the same image, and loading it successfully.
Edited: The security error can be avoided please follow the just below instructions.
Avoid Security Error:
In order to avoid the security error above mentioned, you need to edit the default.prop file (located at /bootimg/initrd)
Change the value from 1 to 0.
FastBoot Note LG:
Fastboot is a solution performing these commands, the problem is that the bootloader is locked for these operations on the generic vesion:
fastboot oem unlock
fastboot oem off-mode-charge 0
fastboot oem lock
fastboot reboot
The command "adb reboot bootloader" does not enter on fastboot upon reboot. There seems to be an opened option while booting on "Download Mode". What I did find out is that when you go into "Download Mode" a new ADB Device is detected on my computer however no driver matched the device. I assume fastboot could be avilable on Download Mode. I have been suggested by romulocarlos to Install the drivers on LG's website however did not work out.
Files:
For making the tests your will need the system.img, boot.img images files. If you brick your phone and want to un-brick the phone please follow this guide [Guide] LG G PRO LITE- Unroot/Unbrick - flash official factory firmware. Currently we are using this kdz image.
Forum:
G Pro Lite D680 Android Development at Android General.
XDA considered the case and opened a new forum for the phone. Thanks very much laufersteppenwolf (aka Wolf), MikeChannon (forum moderator) and svetius.
Conclusion:
We have reached this spot and need help from more advanced hackers. As you guys can see, we have been working hard to trying to hack the boot-on-charge feature on the D680 however has not been yet possible. There is no precedent on this phone on custom CWM & TWRP and custom roms yet therefore the is no out of the box solution as on many other phones (i.e. cyanogen list). We have also tried XDA University practices with no results.
I am ready to donate whoever would help us in solving this problem, its an urgent matter that needs to be solved as soon as possible. I will reward a developer by making a donation.
Appreciate very much the help in advance and reading.
Best,
Jose
Well, it's not that easy without having the actual device, but it'd help quite a bit if you could upload a system dump as well as the boot.img
laufersteppenwolf said:
Well, it's not that easy without having the actual device, but it'd help quite a bit if you could upload a system dump as well as the boot.img
Click to expand...
Click to collapse
Hi laufersteppenwolf,
Congratulations for your achievements and career, amazing.
I am hereby sharing two link resoruces to download what you have asked for, system.html containing the system.img and boot.html containing boot.img. Please let me know if you have problems downloading.
I understand the side effects of not having the cellphone by your side, hope we can mitigate it with the image files you are asking. As extended solution I can open a vnc session or whatever remote tool you can consider.
Thanks so much for the answer and support.
Best,
Jose
JoseVigil said:
Hi laufersteppenwolf,
Congratulations for your achievements and career, amazing.
I am hereby sharing two link resoruces to download what you have asked for, system.html containing the system.img and boot.html containing boot.img. Please let me know if you have problems downloading.
I understand the side effects of not having the cellphone by your side, hope we can mitigate it with the image files you are asking. As extended solution I can open a vnc session or whatever remote tool you can consider.
Thanks so much for the answer and support.
Best,
Jose
Click to expand...
Click to collapse
I am DL'ing the files now, but please use another hoster, as 4shared is not allowed on XDA
laufersteppenwolf said:
I am DL'ing the files now, but please use another hoster, as 4shared is not allowed on XDA
Click to expand...
Click to collapse
Hi laufersteppenwolf,
Thanks for clarifying, I was not aware 4shared was not allowed. I am changing the hosting and updating the link.
Cheers,
Jose
Alright, what I have done so far is I have unpacked the boot image and the ramdisk, edited the ramdisk so it shoud execute /system/bin/reboot when the phone boots because of the charger. Then I repacked both and signed the boot.img again so the bootloader would accept it.
The result, however, is a bootloop. I am just not yet sure whether it is caused by a "false alarm" (the ramdisk always thinking the phone is being booted because of a plugged in charger) or caused by either the bootloader or other low-level security checks. But I also doubt that, as the bootloader seems to accept the repacked image (doesn't show the security error screen).
But I currently do not have any logs, which is why all this is wild guessing. So the highest priority now is to get some proper logs so I know what's going on
laufersteppenwolf said:
Alright, what I have done so far is I have unpacked the boot image and the ramdisk, edited the ramdisk so it shoud execute /system/bin/reboot when the phone boots because of the charger. Then I repacked both and signed the boot.img again so the bootloader would accept it.
The result, however, is a bootloop. I am just not yet sure whether it is caused by a "false alarm" (the ramdisk always thinking the phone is being booted because of a plugged in charger) or caused by either the bootloader or other low-level security checks. But I also doubt that, as the bootloader seems to accept the repacked image (doesn't show the security error screen).
But I currently do not have any logs, which is why all this is wild guessing. So the highest priority now is to get some proper logs so I know what's going on
Click to expand...
Click to collapse
Hi Wolf,
Great advance! Keep the great work up .
I have made some modifications on the original post. Yes you are right, the bootloader friendly accepts the original image and we have figured out the security error. We have found on our end that you need to edit the default.prop file (located at /bootimg/initrd) and set ro.secure to value 0. I also added the files to the post (yet to change the server origin on the boot.image though), added the kdz image to unbrick. Also appended the new forum for the phone.
I appreciate that you have favored to create the forum for the G Pro Lite D680 Android Development. Its great that we can help the community with our achievements.
Best,
Jose
JoseVigil said:
Hi Wolf,
Great advance! Keep the great work up .
I have made some modifications on the original post. Yes you are right, the bootloader friendly accepts the original image and we have figured out the security error. We have found on our end that you need to edit the default.prop file (located at /bootimg/initrd) and set ro.secure to value 0. I also added the files to the post (yet to change the server origin on the boot.image though), added the kdz image to unbrick. Also appended the new forum for the phone.
I appreciate that you have favored to create the forum for the G Pro Lite D680 Android Development. Its great that we can help the community with our achievements.
Best,
Jose
Click to expand...
Click to collapse
ro.secure doesn't trigger the security checks, this prop is only for other things like adb on early boot, enabling adb remount, adb as root by default,...
I also set ro.secure to 0 in the builds I sent you, so that's not the cause of the issue
@JoseVigil
I have some pretty good news The phone now does exactly what you want it to do, as soon as you plug in the charger, the phone boots into offline charging mode, but then directly reboots again into the normal system.
The reboot is not that nice, but it's by far the easiest, as well as safest, way to do it.
Turns out, LG did a pretty sloppy job, giving me adb access to the device when in offline charging mode, giving me the chance to read which process is running and patching the binary to run my hack before actually executing the binary. And that's it. A few lines of bash code and you're good to go
Now my question, do you want me to write a tiny script to do all the work patching the system, or shall I just explain what to do?
laufersteppenwolf said:
@JoseVigil
I have some pretty good news The phone now does exactly what you want it to do, as soon as you plug in the charger, the phone boots into offline charging mode, but then directly reboots again into the normal system.
The reboot is not that nice, but it's by far the easiest, as well as safest, way to do it.
Turns out, LG did a pretty sloppy job, giving me adb access to the device when in offline charging mode, giving me the chance to read which process is running and patching the binary to run my hack before actually executing the binary. And that's it. A few lines of bash code and you're good to go
Now my question, do you want me to write a tiny script to do all the work patching the system, or shall I just explain what to do?
Click to expand...
Click to collapse
You are the man Wolf!
Its great that you have been able to find a workaround.
Yes, ideally both. I would appreciate if you can write the script so we can run it on our rooted phones pragmatically and a brief description of what it does (comprehensive from reading the script too) with implementation steps to reproduce too.
With the script I will do the proper test on my end and provide you feedback in case we have an issue. I will place the donation the coming week early on right after the test, I will be pleased that you get your reaward .
Once that, I think It would be pertinent though that we can expose how far we have reached with our research. If you agree, we can set the ground for someone (either me or you or anyone) to get a bootable customized boot image and unlock the door for CM.
I would love to see this running on CM. But I also know we have to be realistic, as you mentioned, this could be a hell of a work to have a working custom recovery, the device tree and blobs with kernel (almost XDA University I have not been able to deal with too).
It has been a lot of fun and a pleasure to know you and interact with you. I hope this is our first experience.
Thanks very much for the great work.
Best,
Jose
JoseVigil said:
You are the man Wolf!
Its great that you have been able to find a workaround.
Yes, ideally both. I would appreciate if you can write the script so we can run it on our rooted phones pragmatically and a brief description of what it does (comprehensive from reading the script too) with implementation steps to reproduce too.
With the script I will do the proper test on my end and provide you feedback in case we have an issue. I will place the donation the coming week early on right after the test, I will be pleased that you get your reaward .
Once that, I think It would be pertinent though that we can expose how far we have reached with our research. If you agree, we can set the ground for someone (either me or you or anyone) to get a bootable customized boot image and unlock the door for CM.
I would love to see this running on CM. But I also know we have to be realistic, as you mentioned, this could be a hell of a work to have a working custom recovery, the device tree and blobs with kernel (almost XDA University I have not been able to deal with too).
It has been a lot of fun and a pleasure to know you and interact with you. I hope this is our first experience.
Thanks very much for the great work.
Best,
Jose
Click to expand...
Click to collapse
Alright, in the attachment I have uploaded the script, including all needed files in order to execute it. The script will also tell you what it's about to do before doing it, so in case you run into issues, you know where to look into
So, what the installer script is going to do:
It will first of all push a script temporarily to the internal sdcard, then it will back up /system/bin/rtcd to /system/bin/rtcd_original, as we need to execute it later again. Next it will copy the script over from the sdcard to /system/bin/rtcd, replacing the original binary (and setting the correct permissions to both modified files). As the last step it will delete the temp file from the sdcard again.
That's all the installer script does.
The actual "magic" is inside the script being pushed to /system. It gets executed before starting chargemon and reads out the devices boot mode. If the boot mode is charger, it executes /system/bin/reboot. Otherwise it executes the original binary in /system/bin/rtcd_original.
And that's about it As simple as it could only be
Regarding further development, up until now, every device I own received a werewolf kernel, and I'm not planning on making an exception for this phone
I will definitely keep on looking into it, though it will not be as high on my priorities list as this workaround was
I will most likely open a new thread in the next couple of days, stating my findings regarding the phone/boot image/bootloader.
@JoseVigil @laufersteppenwolf
I'm New In Rom Developing . But I Think This Can Help You To Find Security Checks
I need lg g pro lite dual d686 custom twrp recovery i cant find anywhere plz provide working recovery link for d686 as iam new it seems custom recovery for specific d686 dosnt exits so share tested link for d686
Sent from my LG-D686 using xda Forums PRO
Hello I need boot on charge on my LG E460 with MTK. I done ipod change, rctd replace from laufersteppenwolf file without results. I can't went into fastboot mode of course to set oem mode charge for 0
Phone have root, bootloader unlock, busybox and supersu. Any suggestions?
Maxjimme said:
I need lg g pro lite dual d686 custom twrp recovery i cant find anywhere plz provide working recovery link for d686 as iam new it seems custom recovery for specific d686 dosnt exits so share tested link for d686
Sent from my LG-D686 using xda Forums PRO
Click to expand...
Click to collapse
TWRP RECOVERY
http://forum.xda-developers.com/optimus-g-pro/d680-development/d686-unsecured-boot-img-twrp-2-8-7-x-t3163144
Same Problem here with LG E460. Is there a solution for fastboot mode with this device?
hi, do you think this script could work on a LG G Pro 2 ?
hi guys, any chance i could get this working on a chinese mediatek device running kitkat 4.4.2 ??
Hola! There's little information or resources for this phone so far so I'm gonna give a summary of the ways to get root and install ROMs on the phone with a lot of links.
First you can install Magisk on the stock ROM using the Armor 6 method as described in this thread (via this post).
Secondly I built latest TWRP, download it here. I included my sloppy build for the Armor 7, and also the more proper Oppo RenoZ build that I slimmed down to fit into the 32MB recovery partition and confirmed it works. I don't know who made the Oppo ReonZ build, it's more complete but you have to switch from Chinese to English on init. I had to remove the SuperSU and unroot zips to slim it down. You might be able to remove some unused flash partitions and load bigger recovery images.
Via TWRP you can sideload magisk, SuperSU, gapps and whatever you wish on custom ROMs.
Thirdly you can load Phhusson's Quack Treble ROM (AOSP) or LineageOS, possibly many other custom GSIs too. Here's a list of known GSIs assembled by user phusson. These all come with the su binary pre-installed. The Android 9 (Pie) versions seem to work out of the box. The Android 10 (R) versions currently require that you run the following command from a PC during boot, otherwise bootup never finishes:
Code:
adb shell setprop debug.stagefright.ccodec 0
I'm told this has been fixed in the upstream code but it's not in the R releases yet. Additionally there are some screen artefacts on those builds which can be worked around by disabling the HW compositing feature in:
System -> Developer -> HW Accelerated Rendering -> Disable HW overlays
You may also want to disable the annoying "Wake-on-lift" feature in Display settings.
Pretty much everything works in those ROMs, battery life seems good, but the Armor 7 Camera features are not enabled in the stock Camera apps. I'm going to try to get the Camera app from the stock ROM copied and update this post with instructions.
The default firmware has the downside that it runs a service that basically kills all background processes and there are reports that it's hard to disable -- there's no such problem in the custom ROMs.
For the record, the official stock ROM is downloadable here (click EU or non-EU), for whenever you want to go back to the factory system or factory recovery (to remove TWRP). Remember you need to enable or disable dm-verity in the vbmeta partition, depending on which firmware you want to run. This is done by extracting the vbmeta.img file from the stock ROM linked above, rebooting into fastboot and running one of the following commands:
Code:
fastboot --disable-verity --disable-verification flash vbmeta vbmeta.img
or
Code:
fastboot --disable-verification flash vbmeta vbmeta.img
Also remember after flashing LineageOS (fastboot flash system lineage-17.1-20200607-UNOFFICIAL-treble_arm64_bvN.img), if you want GApps on the system, you should boot into TWRP and use ADB sideload to load the .zip downloaded from opengapps.org before doing the setup wizard on LineageOS for the first time.
Post here aboue whatever new ROMs and solutions you find for this phone.
Also quick info on how to modify the boot logo partition from Linux, there are already Windows tools for that (probably works for the Armor 7) but no info on how to do this from under Linux so here's how I flashed my own logo from my Ubuntu pc. Requires mono and Imagemagick installed.
1. Download and unzip that same Windows LogoBuilder utility for mediatek phones,
Code:
$ unzip ~/Downloads/LogoBuilder_v1.6.1.zip
$ cd LogoBuilder_v1.6
2. Extract the logo partition image from the phone or from the Armor 7 stock ROM package, in my case:
Code:
$ unzip ~/Downloads/GQ3083TF1_KSX90T_ulefone_EEA_20200327_V02\(EU\).zip X90T88C.GQU.Ulefone.EEA.HB.FHD.AYAZ.1225.V3.02/logo-verified.bin
3. Unpack the 40+ individual images from the logo partition using Windows/C# utility under mono:
Code:
$ mkdir unpacked
$ mono logo.exe unpack X90T88C.GQU.Ulefone.EEA.HB.FHD.AYAZ.1225.V3.02/logo-verified.bin unpacked
3. The bootloader splashscreen/bootlogo is now in unpacked/block1.dat and we need to convert it to a format that you can edit in Gimp or any other editor:
Code:
$ cp unpacked/block1.dat logo.rgba
$ convert -size 1080x2340 -depth 8 logo.rgba logo.png
4. Edit logo.png or replace it with a new PNG file. The file *must* be 1080x2340px in size and be a 24-bit RGB colors with alpha (transparency.)
5. Convert new logo back to .rgba. Use the command below and then check the size of the resulting new logo.rgba -- it must be exactly 10108800 bytes which is 1080 * 2340 * 4. If it's 7581600, or 1080 * 2340 * 3, that will mean you forgot to add the alpha channel to your png file (in Gimp, it's in Layer -> Transparency -> Add Alpha Channel).
Code:
$ convert logo.png logo.rgba
If the new file size is 10109312 instead, strip the 512 header using dd:
Code:
$ dd if=logo.rgba of=logo2.rgba bs=512 skip=1 # only if the file size was 10109312 instead of 10108800
6. re-pack the logo partition image:
Code:
$ cp logo.rgba unpacked/block1.dat # or logo2.rgba...
$ mono logo.exe pack unpacked logo-new.bin
The new img size is not exactly as the original img but it works nevertheless.
7. flash it over the logo partition, as root:
Code:
# fastboot flash logo logo-new.bin
A big thanks to you. I successfully installed LineageOS on my Ulenfone Armor 7
The biggest problem is this line to type on each reboot
Code:
adb shell setprop debug.stagefright.ccodec 0
atricault said:
A big thanks to you. I successfully installed LineageOS on my Ulenfone Armor 7
The biggest problem is this line to type on each reboot
Click to expand...
Click to collapse
Couldn't this be added to build.prop?
clewis.it said:
Couldn't this be added to build.prop?
Click to expand...
Click to collapse
Yeah, I think I added it to default.prop eventually, I'm back to the stock ROM for now so can't check. Try:
Code:
adb shell
su
mount -o remount,rw /
echo debug.stagefright.ccodec=0 >> /default.prop
I'm back to the stock ROM because I can't get the Camera app working on lineageos, I managed to extract the stock app and fix some missing class errors but I think it depends on all those mediatek services. Maybe there's an Android 10 stock ROM from some other device from which those could be copied...
balrog-kun said:
Yeah, I think I added it to default.prop eventually, I'm back to the stock ROM for now so can't check. Try:
Code:
adb shell
su
echo debug.stagefright.ccodec=0 >> /default.prop
I'm back to the stock ROM because I can't get the Camera app working on lineageos, I managed to extract the stock app and fix some missing class errors but I think it depends on all those mediatek services. Maybe there's an Android 10 stock ROM from some other device from which those could be copied...
Click to expand...
Click to collapse
I got this error :
/system/bin/sh: can't create /default.prop: Read-only file system
But I'll go back to stock ROM too, because of Camera and I don't have enought knowledges to try to solve the problem
Oh right I forgot, for future reference you need to remount the filesystem read-write before that last command:
mount -o remount,rw /
Adding this to the previous post.
balrog-kun said:
Oh right I forgot, for future reference you need to remount the filesystem read-write before that last command:
mount -o remount,rw /
Adding this to the previous post.
Click to expand...
Click to collapse
Sorry I'm back to stock ROM.
But before that I tried this line
Code:
mount -o rw, remount /
And got this error
Code:
mount: 'remount'->'/': No such file or directory
Do you fix the background process killer on stock ROM?
atricault said:
Code:
mount -o rw, remount /
And got this error
Code:
mount: 'remount'->'/': No such file or directory
Click to expand...
Click to collapse
That's gonna be because of the space between rw, and remount.
atricault said:
Do you fix the background process killer on stock ROM?
Click to expand...
Click to collapse
Honestly I haven't had this problem so far. I have Don't keep activities disabled in System->Developer Options->Apps but I think it was off by default. Maybe Standby apps also affects this?
I was recording a hike track in Strava today for a few hours, and I took pictures, made calls, googled, etc. while Strava was running.
balrog-kun said:
Secondly I built latest TWRP
Click to expand...
Click to collapse
Do you have any instructions on how to build TWRP for the armor phones? I would like try building one for the Armor 3W.
Camera works well in daylight (but not in the dark) on the latest Havoc-OS 3.6 20200613 arm64-ab. Screen artefacts still there though unless HW overlays is disabled.
clewis.it said:
Do you have any instructions on how to build TWRP for the armor phones? I would like try building one for the Armor 3W.
Click to expand...
Click to collapse
Not really, I roughly followed https://forum.xda-developers.com/showthread.php?t=1943625 and one or two other places. I used the omni "minimal" manifest which includes TWRP:
Code:
repo init -u git://github.com/minimal-manifest-twrp/platform_manifest_twrp_omni.git -b twrp-9.0
(the branch "twrp-9.0" is because the stock kernel is for Android 9, if Armor 3 comes with Android 8, use twrp-8.0)
Then I needed to create the "device tree" (apparently not related to Linux device trees...), I started with https://github.com/TeamWin/android_device_ulefone_Armor_6 and went about renaming files and updating all the values in all the files based on the values in build.prop / default.prop in the stock system.img. Also replaced prebuilt/kernel with the kernel from stock boot.img. Apparently using a prebuilt kernel is deprecated but it worked and I guess the build is faster.
I also replaced the init.*.rc files with the ones from the stock recovery.img but honestly I can't tell you exactly which files to use. I didn't exactly know what needs to go in which init.*.rc file and when they're called, and I didn't bother looking for documentation for that, but I did have to move some fragment between files to make adb work.
Another caveat was making sure the build system uses python 2 because apparently most scripts are not python 3-compatible.
CodeParadise said:
Camera works well in daylight (but not in the dark) on the latest Havoc-OS 3.6 20200613 arm64-ab. Screen artefacts still there though unless HW overlays is disabled.
Click to expand...
Click to collapse
Do you never get the "can't connect to camera" errors?
The main thing about the stock camera app is that you can be almost sure that you're getting the max available performance from the camera in terms of zoom, color, etc. I.e. it probably automatically switches to the 2x camera when you zoom in (no idea), there's the fast HDR mode, UHD mode, slow motion, etc.
With any 3rd party app my guess it's only using one of the rear cameras. With the stock app honestly I can't know for sure if/when it ever uses the aux rear cameras, I hope it does though. Honestly the 3-camera setup on this phone doesn't seem very useful but hopefully there's some logic behind it...
And BTW even on the stock ROM I'm unable to record in more than 30fps using HedgeCam 2 (OpenCamera). It looks like it detects the frame rates supported by the hardware (30, 60, 120) but it crashes when I start recording.
balrog-kun said:
Do you never get the "can't connect to camera" errors?
The main thing about the stock camera app is that you can be almost sure that you're getting the max available performance from the camera in terms of zoom, color, etc. I.e. it probably automatically switches to the 2x camera when you zoom in (no idea), there's the fast HDR mode, UHD mode, slow motion, etc.
With any 3rd party app my guess it's only using one of the rear cameras. With the stock app honestly I can't know for sure if/when it ever uses the aux rear cameras, I hope it does though. Honestly the 3-camera setup on this phone doesn't seem very useful but hopefully there's some logic behind it...
And BTW even on the stock ROM I'm unable to record in more than 30fps using HedgeCam 2 (OpenCamera). It looks like it detects the frame rates supported by the hardware (30, 60, 120) but it crashes when I start recording.
Click to expand...
Click to collapse
I do get those errors, more so after trying different camera apps. The GSI camera implementation on this phone certainly needs more work. I notified the phh GSI group on Telegram and hopeful newer GSI versions will begin to fix the issue but as you say, getting the full camera functions equivalent to the stock ROM camera may be a long stretch.
this version of twrp does not work with the armor 7 made my phone bootloop and I had to reflash stock recovery.
grenskul said:
this version of twrp does not work with the armor 7 made my phone bootloop and I had to reflash stock recovery.
Click to expand...
Click to collapse
Could be wrong vbmeta image, they work for me.
Anyone tired this with the Armor 7E ?
Hi,
I'm stuck in a pickle here and would much appreciate any guidance.
Firstly, I'm a bit of a noob. So please bear with me.
I managed to unlock my Armor 7 and I'm able to fastboot into it (I see the device appearing through the shell after typing 'fastboot devices').
I followed balrog-kun guidance and downloaded his/her modified TWRP, and even Oppo's one, and flashed firstly balrog's TWRP onto the phone, but that made my phone keep booting, get a message of 'Orange State - Your device has been unlocked and cannot be trusted. Your device will restart in 5 seconds', takes about 10 seconds, restarts, and the same thing keeps happening.
I then tried flashing Oppo's. The same thing keeps happening.
When I flash them, I use the following:
fastboot flash recovery recovery.img
EDIT: If I may add, I also tried:
fastboot boot recovery.img
and the same thing happens.
Update: I managed to get the stock recovery flashed back into the phone and it is back up and running. Now, how do I flash barlog's TWRP successfully without running into a boot loop?
Any guidance would be much appreciated.
Thank you.
grenskul said:
this version of twrp does not work with the armor 7 made my phone bootloop and I had to reflash stock recovery.
Click to expand...
Click to collapse
Hey grenskul, I think I'm facing the same issue. Can you please share where you got the stock recovery? Thanks.
Update: I managed to find it from Ulefone's website, flahsed it and the phone is back up. Thanks.
Further update: after reading towards the end of Balrog's first post, I got the vbmeta.img from the stock and flashed it using the first command from the same post. That made flashing balrog and Oppo's TWRPs smoothly - the phone doesn't get stuck in a bootloop anymore.
BUT, when I go into recovery, I still get the stock recovery and not TWRP....?
Any thoughts?
UPDATE: For some reason, I had to reflash the recovery a couple of times (!) - used the TWRP supplied by balrog and now I got TWRP working (thank you!).
By the way: In my journey I'm following this post to upgrading my Amror 7 from Android 9 to Android 10 using the supplied Lineage version (17.1), but I also found 18.1 from the same contributor (Andy).
Hello everyone:
Going back from Xiaomi.EU to STOCK EEA stable for a little f3, tried to flash by fastboot but it gives me the antirollback error. In fact, if I double-click or run the "flash_all_lock" file as administrator (because I would like to close the bootloader) it doesn't run, but instead makes a pretense of opening and closing. I can only run it by opening a command window (cmd) and running it from there, but it doesn't work.
Later, he tried to do it with the MI FLASH, which he did not know, and it gives me the same error. So, I followed the instructions in this video (
) ) ) (take a look at it, please, it lasts only 1:30 minutes), and after solving the two errors that it solves, it gives me a third one, something like "file It's too big" or something like that.
I would appreciate, please, if you help me.
A greeting and thanks in advance.
Tukan41 said:
Hello everyone:
Going back from Xiaomi.EU to STOCK EEA stable for a little f3, tried to flash by fastboot but it gives me the antirollback error. In fact, if I double-click or run the "flash_all_lock" file as administrator (because I would like to close the bootloader) it doesn't run, but instead makes a pretense of opening and closing. I can only run it by opening a command window (cmd) and running it from there, but it doesn't work.
Later, he tried to do it with the MI FLASH, which he did not know, and it gives me the same error. So, I followed the instructions in this video (
) ) ) (take a look at it, please, it lasts only 1:30 minutes), and after solving the two errors that it solves, it gives me a third one, something like "file It's too big" or something like that.
I would appreciate, please, if you help me.
A greeting and thanks in advance.
Click to expand...
Click to collapse
Try to follow this guide to the letter.
How to flash a stock rom [alioth]
Hello everyone. The purpose of this guide is to illustrate two methods to flash the stock rom on F3, both with the use of xiaomi flash tool (which for convenience I will call "miflash") and with cmd. Warnings! Before starting I would like to...
forum.xda-developers.com
Hey! Thank you for the soon reply. I have read the tutorial quickly, but i will reread slowly as soon as i can. Anyway, i think that i have tried with all this and the errors persist. But, as i have said, i will re read slowly and let you know what happened with with my retry following your instructions.
Thanks a lot!
Put miflash and rom on local disk C.
Thx a lot for the help! I have tried these two options, and it gives me the "file is too large" error.
RollDload said:
Try to follow this guide to the letter.
How to flash a stock rom [alioth]
Hello everyone. The purpose of this guide is to illustrate two methods to flash the stock rom on F3, both with the use of xiaomi flash tool (which for convenience I will call "miflash") and with cmd. Warnings! Before starting I would like to...
forum.xda-developers.com
Click to expand...
Click to collapse
Fiend, would yo be so kind to provide me the exact link to de file of "SDK platform tools", please? The page you gave me is a little bit chaotic. Thx in advance!
Tukan41 said:
Fiend, would yo be so kind to provide me the exact link to de file of "SDK platform tools", please? The page you gave me is a little bit chaotic. Thx in advance!
Click to expand...
Click to collapse
If you have followed my guide to the letter and it gives you an error again, try changing the USB port, or the cable, or with another pc, if it has intel cpu and win10 it is better. Try to download the rom again from one of the sites linked in the guide.
I have attached sdk for Windows:
RollDload said:
If you have followed my guide to the letter and it gives you an error again, try changing the USB port, or the cable, or with another pc, if it has intel cpu and win10 it is better. Try to download the rom again from one of the sites linked in the guide.
I have attached sdk for Windows:
Click to expand...
Click to collapse
Thx a lot for the file and for all your help. What do you think about "the file is too large" error? I have read over there that is relationed with Hard Disk FAT 32 format, but i have NTFS.
Thx in advnace.
Tukan41 said:
Thx a lot for the file and for all your help. What do you think about "the file is too large" error? I have read over there that is relationed with Hard Disk FAT 32 format, but i have NTFS.
Thx in advnace.
Click to expand...
Click to collapse
Honestly, this has never happened to me and it is the first time that I have ever heard this error. I know that the fat32 file system does not allow the storage of a single file larger than 4gb, but this does not seem to me to be the case. In addition to the advice I have already given you, such as downloading the rom again, or a different version, change usb port, cable, and do it all over again, you could try using the february 2021 version of miflash, I do not know what to think. It could also be a conflict on your pc, if you can't use another one try to create a small partition and install a clean version of win10 Otherwise I don't know ...
Thx a lot one more time, friend.
Do you think it could affect (if there is any difference) using cmd or using MI Flash? Do you think that wanting to close the bootloader or not can influence on the success flashing? Do you think it can influence to use MIUI GLOBAL or MIUI EEU, which is the one that corresponds to me, or not?
Tukan41 said:
Thx a lot one more time, friend.
Do you think it could affect (if there is any difference) using cmd or using MI Flash? Do you think that wanting to close the bootloader or not can influence on the success flashing? Do you think it can influence to use MIUI GLOBAL or MIUI EEU, which is the one that corresponds to me, or not?
Click to expand...
Click to collapse
No problem bro!
There is no difference between cmd and miflash, because miflash performs the same operations that the script on cmd does, I don't think that's the problem.
I don't think it even depends on closing the bootloader, also because it is a command that is done at the end of the ROM flash. (I wouldn't close it unless absolutely necessary. I advise you to do it only with the original rom of the phone, like if you bought it with global, close only with global and not with eea, it could go into brick, even if some have succeeded.)
I have changed region a couple of times, bought it with rom eea and flashed the global and went back to eea without problems (without blocking the bootloader) so it shouldn't cause any problems.
More than anything else, I think it's a conflict in your pc system, maybe in the drivers. I would try to make a partition in the hd and install win10 and everything you need for the flash and see if it works. What pc are you using?
Thx one more time for your help and patience (are you spanish or spanish speaker?).
I'm using a Huawei Matebook D, with an Inter(R) Core(TM) i5-7200U CPU @ 2.50GHz 2.70 GHz, 8,00 GB RAM Memory. I have never ever had any issue with the performance of my PC.
Anyway, yesterday night i followed your guide, firstly i tried the "1) How to flash a stock rom using miflash", but when i refreshed in order to check if MIFlash detected my Phone, a strange little window error appeared ("Unhandled exception from the application. If you click Continue, the application will ignore this error and try to continue. If you click Quit, the application will close immediately"). So, when if i clicked "Continue" and i tried to refresh again, the error reapeared, and when i clicked "Quit" MiFlash closed. I recognize that i didn't do the "Disable driver signature enforcement in windows" step (is it mandatory?).
Due to this unexpected error, i tried the way "2) How to flash a stock rom using cmd",with not doing, again, i recognize, the "Disable driver signature enforcement in windows". So when i flashed from the cmd, unlike all the precedent tries doing with this way, the rom started flashing succesfully. All seems to going perfectly, but when the process arrived to the 7/10 poing, i had an "super flash error" (actually, the cmd screen specified me one concrect error, but i was a little bit nervous and didn't copy it; i think was (or it was something like) the "sparcecrclist error", but i'm not very sure). The rom, then stopped flashing, the phone was blocked (as the other precedent failed times) at fastboot mode, and i could only recuperate it by flashing the Xiaomi.eu room.
It was very sad, because i really thought that in this time i would succeed. I don't really know what to do. I got really scared, because that "super flash error" terrified me, but fortunately nothing bad happened thanks to the succesfull flash of the Xiaomi.EU rom. I could flash the rom stock again, in order to copy here the exact error i had on "7/10" step, but that "super flash error", which i have never had, really scares me. It seems like you are my only help here and, anyway, following your guide has been has been the nearest point of installing the stock rom succesfully.
I would love to hear from you again.
***EDIT: that MIFlash error never happened to me preciously. I used the last version which was on the link of your guide.
Tukan41 said:
Thx one more time for your help and patience (are you spanish or spanish speaker?).
I'm using a Huawei Matebook D, with an Inter(R) Core(TM) i5-7200U CPU @ 2.50GHz 2.70 GHz, 8,00 GB RAM Memory. I have never ever had any issue with the performance of my PC.
Anyway, yesterday night i followed your guide, firstly i tried the "1) How to flash a stock rom using miflash", but when i refreshed in order to check if MIFlash detected my Phone, a strange little window error appeared ("Unhandled exception from the application. If you click Continue, the application will ignore this error and try to continue. If you click Quit, the application will close immediately"). So, when if i clicked "Continue" and i tried to refresh again, the error reapeared, and when i clicked "Quit" MiFlash closed. I recognize that i didn't do the "Disable driver signature enforcement in windows" step (is it mandatory?).
Due to this unexpected error, i tried the way "2) How to flash a stock rom using cmd",with not doing, again, i recognize, the "Disable driver signature enforcement in windows". So when i flashed from the cmd, unlike all the precedent tries doing with this way, the rom started flashing succesfully. All seems to going perfectly, but when the process arrived to the 7/10 poing, i had an "super flash error" (actually, the cmd screen specified me one concrect error, but i was a little bit nervous and didn't copy it; i think was (or it was something like) the "sparcecrclist error", but i'm not very sure). The rom, then stopped flashing, the phone was blocked (as the other precedent failed times) at fastboot mode, and i could only recuperate it by flashing the Xiaomi.eu room.
It was very sad, because i really thought that in this time i would succeed. I don't really know what to do. I got really scared, because that "super flash error" terrified me, but fortunately nothing bad happened thanks to the succesfull flash of the Xiaomi.EU rom. I could flash the rom stock again, in order to copy here the exact error i had on "7/10" step, but that "super flash error", which i have never had, really scares me. It seems like you are my only help here and, anyway, following your guide has been has been the nearest point of installing the stock rom succesfully.
I would love to hear from you again.
***EDIT: that MIFlash error never happened to me preciously. I used the last version which was on the link of your guide.
Click to expand...
Click to collapse
Ciao! no i am not spanish, but i love spain and i have been there for six months and i speak some spanish, however i am sardinian, italy.
So, disabling driver signing in Windows is essential to be able to correctly install unsigned drivers such as those present in the miflash program.
Sparse crclist It happened to me as an error, I solved it by downloading the rom again and unzipping it and renaming it with a small name and no spaces in the miflash folder and then it successfully flashed and special characters like $ # & etc.
I asked you which pc you use because some users with pc with amd processor the miflash program gave problems, even if you use the front usb ports or usb3.1, hence the advice to use rear doors and 2.0.So try to follow the guide to the letter by changing the usb port and downloading the fastboot rom again, I am sure that sooner or later you will be able to flash the rom, or at least I hope so. I too got scared when that error appeared to me.I hope it works, and what you tell me more and more makes me think that it is a conflict between miflash and the system. Happy flash bro!
Also try the February 2021 version of miflash, I used that. They have recently updated it and I haven't tried it, maybe the bag is his fault.
Ok, i will repeat the guide adding the step of driver disabling driver signing.
And i have checked the device administrator and, of my 3 usb ports, two of them are "3.0 - 1.0", but ¿how can i know which of the 3 are the 3.0? Sorry about my inexperience. And thank you a lot.
***EDIT: And when you mention "renaming it with a small name and no spaces in the miflash folder", you refer to the rom's folder or the rom (.bat) properly said?
***EDIT(again): And all the difficualties couldn't be related to the fact of the "Rollback" problems, because i'm trying to get back from Android 12 to Android 11? i don't know.
Tukan41 said:
Ok, i will repeat the guide adding the step of driver disabling driver signing.
And i have checked the device administrator and, of my 3 usb ports, two of them are "3.0 - 1.0", but ¿how can i know which of the 3 are the 3.0? Sorry about my inexperience. And thank you a lot.
***EDIT: And when you mention "renaming it with a small name and no spaces in the miflash folder", you refer to the rom's folder or the rom (.bat) properly said?
***EDIT(again): And all the difficualties couldn't be related to the fact of the "Rollback" problems, because i'm trying to get back from Android 12 to Android 11? i don't know.
Click to expand...
Click to collapse
Ok. follow the guide it should work with the February 2021 version of miflash.
Generally the USB 3 ports are of a different color, usually blue or light blue, the 2.0 are black.
Don't worry, no one is born with infused wisdom
When I say to rename the folder, I am referring to that of the rom, I generally use the version like 12.5.6 or in any case choose a name that has no spaces or special characters such as% $ # etc.
The anti rollback is only present on stock roms so you don't run the risk if you switch from custom like xiaomi.eu. i also checked the stock miui 13 china and it is not active on this phone.
What your bootloader status now..?, you can check it by typing fastboot command "fastboot oem device-info"
did you remember exactly of what the stock rom version (detail MIUI version including region code) that came from the phone before you flashing it..?
JJeamy said:
What your bootloader status now..?, you can check it by typing fastboot command "fastboot oem device-info"
did you remember exactly of what the stock rom version (detail MIUI version including region code) that came from the phone before you flashing it..?
Click to expand...
Click to collapse
Thx a lot for your interest in helping me. This is what i had with that command:
fastboot oem device-info
(bootloader) Verity mode: true
(bootloader) Device unlocked: true
(bootloader) Device critical unlocked: true
(bootloader) Charger screen enabled: false
OKAY [ 0.007s]
Finished. Total time: 0.008s
And the the exact rom version vas MIUI 12.5.7 (EEA).
I would thank you any help from you. Thx in advance.
***EDIT: MIUI 12.5.7 GLOBAL (EEA).
Tukan41 said:
Hello everyone:
Going back from Xiaomi.EU to STOCK EEA stable for a little f3, tried to flash by fastboot but it gives me the antirollback error. In fact, if I double-click or run the "flash_all_lock" file as administrator (because I would like to close the bootloader) it doesn't run, but instead makes a pretense of opening and closing. I can only run it by opening a command window (cmd) and running it from there, but it doesn't work.
Later, he tried to do it with the MI FLASH, which he did not know, and it gives me the same error. So, I followed the instructions in this video (
) ) ) (take a look at it, please, it lasts only 1:30 minutes), and after solving the two errors that it solves, it gives me a third one, something like "file It's too big" or something like that.
I would appreciate, please, if you help me.
A greeting and thanks in advance.
Click to expand...
Click to collapse
Well i hope you got the answer till now case u havent got the solution please refer for the firmware flash to global or the initial firmware .. yes it will make xiaomi.eu rom into a bootloop the go for the flash by the images folder but not the actual folder and do flash in fastboot mode & not in oem mode that will brick the device also just in case things turn back swith to aosp and then firm flash back again this is the nth solution for the error this has nothuing to do with NTF or FAT32 format
\
in case the solutions request for a thumbs up to the post
Regards
DroidEditor
[email protected]
Tukan41 said:
Thx a lot for your interest in helping me. This is what i had with that command:
fastboot oem device-info
(bootloader) Verity mode: true
(bootloader) Device unlocked: true
(bootloader) Device critical unlocked: true
(bootloader) Charger screen enabled: false
OKAY [ 0.007s]
Finished. Total time: 0.008s
And the the exact rom version vas MIUI 12.5.7 (EEA).
I would thank you any help from you. Thx in advance.
***EDIT: MIUI 12.5.7 GLOBAL (EEA).
Click to expand...
Click to collapse
No problem bro.. actually yesterday i'm doing back to stock rom again same as yours..but lucky in my case..doesn't find any trouble at all while flashing back stock fastboot rom
Firstly i need some more detail info from you so we can analyze what become wrong exactly that causing trouble
So the fastboot rom that you've download is POCO F3 EEA V12.5.7.0.RKHEUXM right..?
What windows version..?, windows 10 or 11..?
did you already tried to flashing the rom without re-locking option the bootloader..?, also what the result is..?
i will trying help if i can..but unfortunately right now in my country already middle of the night.. and i'm too sleepy, but it's ok we can continue discuss tomorrow then.
JJeamy said:
No problem bro.. actually yesterday i'm doing back to stock rom again same as yours..but lucky in my case..doesn't find any trouble at all while flashing back stock fastboot rom
Firstly i need some more detail info from you so we can analyze what become wrong exactly that causing trouble
So the fastboot rom that you've download is POCO F3 EEA V12.5.7.0.RKHEUXM right..?
What windows version..?, windows 10 or 11..?
did you already tried to flashing the rom without re-locking option the bootloader..?, also what the result is..?
i will trying help if i can..but unfortunately right now in my country already middle of the night.. and i'm too sleepy, but it's ok we can continue discuss tomorrow then.
Click to expand...
Click to collapse
Thx a lot for trying to help me!
-The rom i have download, yes, is POCO F3 EEA V12.5.7.0.RKHEUXM.
-My Windows version is Windows 10 Home.
-Yes, yesterday i tried to flashing with "clean all", i mean, without trying to close bootloader nor maintaining internal storage.
Mainly, i used the guide which Rolldload kindly provide me, except the "Disable driver signature enforcement in windows 10", and my flashin went gone until the flashing 7/10 phase, where the command window gave me a "super flash error", and all ended there.
I hope all these information serve you.
Regards.
Hello,
I want do downgrade my phone back to android 11.
My bootloader is locked and my arb is 3.
I only find android 11 firmwares with arb = 0.
How can i safely downgrade my phone? I googled a lot but nothing really helped.
Thanks.
Valyrian1 said:
Hello,
I want do downgrade my phone back to android 11.
My bootloader is locked and my arb is 3.
I only find android 11 firmwares with arb = 0.
How can i safely downgrade my phone? I googled a lot but nothing really helped.
Thanks.
Click to expand...
Click to collapse
You need to unlock the bootloader.
NOSS8 said:
You need to unlock the bootloader.
Click to expand...
Click to collapse
Okay, if I unlock the bootloader, can I flash a firmware with a lower Android version and lower arb than 3?
And if I start the process to unlock, can I still use the phone without problems? I know that the data will be wiped after the unlock.
Valyrian1 said:
Okay, if I unlock the bootloader, can I flash a firmware with a lower Android version and lower arb than 3?
And if I start the process to unlock, can I still use the phone without problems? I know that the data will be wiped after the unlock.
Click to expand...
Click to collapse
You will be able to use your phone without any problem during the process.
The data will actually be deleted.
You can install any version of rom.
NOSS8 said:
You will be able to use your phone without any problem during the process.
The data will actually be deleted.
You can install any version of rom.
Click to expand...
Click to collapse
My data get deleted if I start the unlock process or after the waiting time?
Thanks by the way, I was very confused about the arb number. But know i think its safe to flash a firmware with an lower arb number with an unlocked bootloader, right?
Valyrian1 said:
My data get deleted if I start the unlock process or after the waiting time?
Thanks by the way, I was very confused about the arb number. But know i think its safe to flash a firmware with an lower arb number with an unlocked bootloader, right?
Click to expand...
Click to collapse
after the waiting time when you decide to unlock.
You can flash any version of rom,CN,GLOBAL,EEA,ASOP,EU ROMS etc..
No antirollback
NOSS8 said:
after the waiting time when you decide to unlock.
You can flash any version of rom,CN,GLOBAL,EEA,ASOP,EU ROMS etc..
Click to expand...
Click to collapse
Thank you, I now start to unlock the bootloader. Hopefully the waiting timee isnt't that long.
I appreciate your help.
Valyrian1 said:
Thank you, I now start to unlock the bootloader. Hopefully the waiting timee isnt't that long.
I appreciate your help.
Click to expand...
Click to collapse
1 week.
https://c.mi.com/thread-2262302-1-0.html
NOSS8 said:
1 week.
https://c.mi.com/thread-2262302-1-0.html
Click to expand...
Click to collapse
I know... 168 hours
But, if I have some trouble with flashingin one week, i know where i can get some help ^
Valyrian1 said:
I know... 168 hours
But, if I have some trouble with flashingin one week, i know where i can get some help ^
Click to expand...
Click to collapse
https://forum.xda-developers.com/t/flash-tool-guide-use-xiaomi-flash-tool.4262425/
I'd like to chime in, where did you look for ROMs @Valyrian1?
I think I have all of the ones publicly released for Mi 11 Lite 4G (Courbet) both for EEA and Global and they all ship with the same ARB version, 3.
Even though things seem to be mostly the same for Courbet, hence the same ARB version, I'd say it's best to go the Fastboot route when downgrading to a previous Android version (the way you're doing it); things could have changed enough that flashing a "Recovery" version wouldn't be enough, even if it includes firmware.
Your personal data will be deleted just when the unlock happens, not before, so you have time to make the appropriate backups if things aren't backed up already. And yep, time to unlock will be at least 7 days, but it could be longer though, if you were to tinker with the internals during that time or try to unlock it through other means, you could find the Mi Unlock tool tells you to wait some 190h more (for example) after the initial 168h went by.
To be honest... I never fully understood what they take into account for the timing calculations, I've seen people who did nothing at all with their phones during that time and needed to wait more... ¯\_(ツ)_/¯
In any case, after the bootloader is unlocked and the phone is factory reset, I'd suggest you choose the "clean all" option in Mi Flash, or use the "flash_all" script, not the "flash_all_except_storage", because the default contents of the data partition differ depending on the version, just in case. It may be innocuous, nothing terribly bad would happen, maybe some force-closes, but still.
I will (hopefully) be going through an unlock and flash procedure on a Courbet during the weekend, it's pretty straight forward, but I could record the events if you wish; still undecided on whether it'll be MIUI 12 or 13.
aphanic said:
I'd like to chime in, where did you look for ROMs @Valyrian1?
I think I have all of the ones publicly released for Mi 11 Lite 4G (Courbet) both for EEA and Global and they all ship with the same ARB version, 3.
Even though things seem to be mostly the same for Courbet, hence the same ARB version, I'd say it's best to go the Fastboot route when downgrading to a previous Android version (the way you're doing it); things could have changed enough that flashing a "Recovery" version wouldn't be enough, even if it includes firmware.
Your personal data will be deleted just when the unlock happens, not before, so you have time to make the appropriate backups if things aren't backed up already. And yep, time to unlock will be at least 7 days, but it could be longer though, if you were to tinker with the internals during that time or try to unlock it through other means, you could find the Mi Unlock tool tells you to wait some 190h more (for example) after the initial 168h went by.
To be honest... I never fully understood what they take into account for the timing calculations, I've seen people who did nothing at all with their phones during that time and needed to wait more... ¯\_(ツ)_/¯
In any case, after the bootloader is unlocked and the phone is factory reset, I'd suggest you choose the "clean all" option in Mi Flash, or use the "flash_all" script, not the "flash_all_except_storage", because the default contents of the data partition differ depending on the version, just in case. It may be innocuous, nothing terribly bad would happen, maybe some force-closes, but still.
I will (hopefully) be going through an unlock and flash procedure on a Courbet during the weekend, it's pretty straight forward, but I could record the events if you wish; still undecided on whether it'll be MIUI 12 or 13.
Click to expand...
Click to collapse
It would be great if you record your steps. I looked up the firmware archive online and only found firmwares with android 11 and arb=0.
So far I guess that the arb number could be lower than my device or even ignored if the bootloader is unlocked. Hopefully I am right
It would be also great, if you send the link where you downloaded these firmwares.
Andorid 12 is a mess in my opinion and I definitely want to downgrade to android 11. Android 12 is buggy as f***. Some features doesn't work anymore and my phone randomly freezes so I need to force shutdown the phone. Very annoying.
Feel free to reply to this thread or something if you flashed a "new" firmware. I will be very excited.
Thank you.
No problem!
For the download links, I think this thread has them all (or close to), links in there point to Xiaomi servers so the ROMs aren't modified: https://forum.xda-developers.com/t/miui-updates-tracker-mi-11-lite-4g-courbet.4263141/
Get the Fastboot version of the release you want and that it's for the right variant , that's the one to use with Mi Flash.
About the state of Android 12, I think it has more to do with Xiaomi's QA and their software engineering process, or the drivers for the different components maybe, than the OS itself. Only because there are other devices with Android 12 that seem to run pretty good, it could very well be that Android 12 is half-baked.
I'm always surprised when I get logs and see plenty of errors there: memory access this, virtual address that, SELinux denials (some security access thing), etc. Why release things in those states? Why not take the time to iron things out? I understand we're in the age of agile and all, but it doesn't mean to forgo testing.
The firmware I'm going to use is either the current one for MIUI 13, or the last of the previous MIUI 12, I want to rule out the possibility that the memory of the device is damaged. I'm told it reboots at random several times a day and even though as far as I know it always used original firmware, so I want to check if a full clean flash would fix it.
After that we'll see! I'll keep you posted.
So far, the only thing I've done to it was a factory reset, binding my Mi account in Developer Options and initiating the bootloader unlocking process, I'm in the waiting period until (at least) Saturday.
aphanic said:
No problem!
For the download links, I think this thread has them all (or close to), links in there point to Xiaomi servers so the ROMs aren't modified: https://forum.xda-developers.com/t/miui-updates-tracker-mi-11-lite-4g-courbet.4263141/
Get the Fastboot version of the release you want and that it's for the right variant , that's the one to use with Mi Flash.
About the state of Android 12, I think it has more to do with Xiaomi's QA and their software engineering process, or the drivers for the different components maybe, than the OS itself. Only because there are other devices with Android 12 that seem to run pretty good, it could very well be that Android 12 is half-baked.
I'm always surprised when I get logs and see plenty of errors there: memory access this, virtual address that, SELinux denials (some security access thing), etc. Why release things in those states? Why not take the time to iron things out? I understand we're in the age of agile and all, but it doesn't mean to forgo testing.
The firmware I'm going to use is either the current one for MIUI 13, or the last of the previous MIUI 12, I want to rule out the possibility that the memory of the device is damaged. I'm told it reboots at random several times a day and even though as far as I know it always used original firmware, so I want to check if a full clean flash would fix it.
After that we'll see! I'll keep you posted.
So far, the only thing I've done to it was a factory reset, binding my Mi account in Developer Options and initiating the bootloader unlocking process, I'm in the waiting period until (at least) Saturday.
Click to expand...
Click to collapse
I downloaded some firmwares a few days ago from exactly this website. I tried multiple versions and always got a firmware with ARB 0. Maybe I did something wrong or I'm too stupid to look right I always checked the "flash-all.bat" file for the minimum ARB number.
I'm confused... all firmwares listed in your picture are with ARB 3. I think I downloaded the same files and always saw that the required ARB is 0.
Tomorrow, I should download a few firmwares again from your link and check the ARB number, maybe I looked at the wrong file or something.
Hopefully, your problem will be fixed with a "simple" reflash.
Valyrian1 said:
I downloaded some firmwares a few days ago from exactly this website. I tried multiple versions and always got a firmware with ARB 0. Maybe I did something wrong or I'm too stupid to look right I always checked the "flash-all.bat" file for the minimum ARB number.
I'm confused... all firmwares listed in your picture are with ARB 3. I think I downloaded the same files and always saw that the required ARB is 0.
Click to expand...
Click to collapse
You almost looked at the right place! No need to re-download then . This is the code that appears in the script you looked at, I'll break it down so you understands the ARB tests it does (not Bash code, but at least we get some colors):
Bash:
if exist %~dp0images\anti_version.txt (for /f "delims==" %%a in (%~dp0images\anti_version.txt) do (set CURRENT_ANTI_VER=%%a))
if [%CURRENT_ANTI_VER%] EQU [] set CURRENT_ANTI_VER=0
for /f "tokens=2 delims=: " %%i in ('fastboot %* getvar anti 2^>^&1 ^| findstr /r /c:"anti:"') do (set version=%%i)
if [%version%] EQU [] set version=0
set anticheck="antirollback check pass"
if %version% GTR %CURRENT_ANTI_VER% set anticheck="Current device antirollback version is greater than this pakcage"
echo %anticheck% | findstr /r /c:"pass" || @echo "Antirollback check error" && exit /B 1
First it checks if there is a file named "anti_version.txt" inside of a folder called "images" starting from the place where the script is (that's what the "%~dp0" means). If there is, loads its contents in a variable named CURRENT_ANTI_VER.
The name is misleading, as that's not the current rollback version, but the one of the new package. So to manually check the ARB version in a Xiaomi Fastboot distribution, you just have to go to that file and see the number that's there.
Line 2 checks if there is something in CURRENT_ANTI_VER, if there was no file named "anti_version.txt" there'd be nothing, and because the script relies on that variable, it sets it to 0 in that case. That's what could have given you the idea ARB was 0, but it's just the result of a test, it happens when ARB isn't being used.
Next, it executes "fastboot getvar anti" to find out what the actual rollback version is (of the device) and loads it in another variable, this time called "version". That's the 4th line, it's a bit long because Fastboot returns something like "anti: 3", they just want to have the 3 in that variable. Next line is analogous to the test in line 2, only for the case ARB wasn't used in the phone, sets "version" to 0.
Finally, in line 7, it checks if "version" (what the phone reported) is greater than CURRENT_ANTI_VER (what the ROM has), not to continue if that's the case (that "exit" in the next line).
So... yeah, it's a bit convoluted overall, for example that "exit" being based on whether the word "pass" is present or not, but that's how it works. The bash script for Linux is easier to read, but still has the same misleading "CURRENT_ANTI_VER" name for the ARB version of the package, even when they use the same word, "Current", in a phrase later on to refer to the one registered in the phone.
In any case, rolling back to MIUI 12 shouldn't be a problem because they're both at the same ARB version and it seems the overall structure is the same, I just looked at a file that describes how the internal memory is divided and it hasn't changed with the MIUI 13 release.
Valyrian1 said:
Hopefully, your problem will be fixed with a "simple" reflash.
Click to expand...
Click to collapse
I hope so too! I wish I had access to EDL to be able to inspect things in more detail, if only one could apply to have access as well... but I do understand why they chose to limit it.
aphanic said:
You almost looked at the right place! No need to re-download then . This is the code that appears in the script you looked at, I'll break it down so you understands the ARB tests it does (not Bash code, but at least we get some colors):
Bash:
if exist %~dp0images\anti_version.txt (for /f "delims==" %%a in (%~dp0images\anti_version.txt) do (set CURRENT_ANTI_VER=%%a))
if [%CURRENT_ANTI_VER%] EQU [] set CURRENT_ANTI_VER=0
for /f "tokens=2 delims=: " %%i in ('fastboot %* getvar anti 2^>^&1 ^| findstr /r /c:"anti:"') do (set version=%%i)
if [%version%] EQU [] set version=0
set anticheck="antirollback check pass"
if %version% GTR %CURRENT_ANTI_VER% set anticheck="Current device antirollback version is greater than this pakcage"
echo %anticheck% | findstr /r /c:"pass" || @echo "Antirollback check error" && exit /B 1
First it checks if there is a file named "anti_version.txt" inside of a folder called "images" starting from the place where the script is (that's what the "%~dp0" means). If there is, loads its contents in a variable named CURRENT_ANTI_VER.
The name is misleading, as that's not the current rollback version, but the one of the new package. So to manually check the ARB version in a Xiaomi Fastboot distribution, you just have to go to that file and see the number that's there.
Line 2 checks if there is something in CURRENT_ANTI_VER, if there was no file named "anti_version.txt" there'd be nothing, and because the script relies on that variable, it sets it to 0 in that case. That's what could have given you the idea ARB was 0, but it's just the result of a test, it happens when ARB isn't being used.
Next, it executes "fastboot getvar anti" to find out what the actual rollback version is (of the device) and loads it in another variable, this time called "version". That's the 4th line, it's a bit long because Fastboot returns something like "anti: 3", they just want to have the 3 in that variable. Next line is analogous to the test in line 2, only for the case ARB wasn't used in the phone, sets "version" to 0.
Finally, in line 7, it checks if "version" (what the phone reported) is greater than CURRENT_ANTI_VER (what the ROM has), not to continue if that's the case (that "exit" in the next line).
So... yeah, it's a bit convoluted overall, for example that "exit" being based on whether the word "pass" is present or not, but that's how it works. The bash script for Linux is easier to read, but still has the same misleading "CURRENT_ANTI_VER" name for the ARB version of the package, even when they use the same word, "Current", in a phrase later on to refer to the one registered in the phone.
In any case, rolling back to MIUI 12 shouldn't be a problem because they're both at the same ARB version and it seems the overall structure is the same, I just looked at a file that describes how the internal memory is divided and it hasn't changed with the MIUI 13 release.
I hope so too! I wish I had access to EDL to be able to inspect things in more detail, if only one could apply to have access as well... but I do understand why they chose to limit it.
Click to expand...
Click to collapse
Thank you for your detailed explanation. Now, I know where I need to look for the ARB number.
You really saved me a lot of work and trouble finding the right firmware.
Just remove the 7 lines from the script and that's it.
Why reinstall a stock rom when Xiaomi EU roms are better with more options.
https://xiaomi.eu/community/threads/miui-12-0-12-1-12-2-12-5-stable-release.56191/
NOSS8 said:
Just remove the 7 lines from the script and that's it.
Click to expand...
Click to collapse
No need, they're all at the same ARB level , nothing changed form Courbet on its way to A12 (don't know if that's a good thing though haha).
NOSS8 said:
Why reinstall a stock rom when Xiaomi EU roms are better with more options.
Click to expand...
Click to collapse
That depends on the person, what's better for one may not be better for another, moreover, it also depends on what/how you measure it.
For example, say trust is an issue, there's a chain of trust stablished when the bootloader is locked and you're using an official ROM, you can't have that with a 3rd party's.
Maybe you get more phoning home using the ROM the manufacturer provides, vs. Xiaomi.eu's or crDroid's for example; but if for that person the chain of trust is more important, Xiaomi's would be better.
Another example, but I don't know if that's the case with Xiaomi.eu's, on official firmware OTAs are differential, it's not a, say, 3GB flash every time there's an update. For some, that may be important as well.
I'd say every option has its drawbacks, in my daily driver (not a Courbet) I'm running a custom ROM, in my work phone it's not only stock, but also managed (Android Enterprise).
aphanic said:
No need, they're all at the same ARB level , nothing changed form Courbet on its way to A12 (don't know if that's a good thing though haha).
That depends on the person, what's better for one may not be better for another, moreover, it also depends on what/how you measure it.
For example, say trust is an issue, there's a chain of trust stablished when the bootloader is locked and you're using an official ROM, you can't have that with a 3rd party's.
Maybe you get more phoning home using the ROM the manufacturer provides, vs. Xiaomi.eu's or crDroid's for example; but if for that person the chain of trust is more important, Xiaomi's would be better.
Another example, but I don't know if that's the case with Xiaomi.eu's, on official firmware OTAs are differential, it's not a, say, 3GB flash every time there's an update. For some, that may be important as well.
I'd say every option has its drawbacks, in my daily driver (not a Courbet) I'm running a custom ROM, in my work phone it's not only stock, but also managed (Android Enterprise).
Click to expand...
Click to collapse
Have you fixed your problem?
Valyrian1 said:
Hello,
I want do downgrade my phone back to android 11.
My bootloader is locked and my arb is 3.
I only find android 11 firmwares with arb = 0.
How can i safely downgrade my phone? I googled a lot but nothing really helped.
Thanks.
Click to expand...
Click to collapse
unlock and use a rom based on miui 13 ( android 12 ) is completely other level. i recommend xiaomi.eu or MiuiMix rom
Hello Friends~!
We now have a working method to achieve ROOT on STOCK Firmware!
A script has been made that can boot your shield into the bootloader, erase the old boot, flash the new boot, and install your choice of Magisk apk for you. The script is also able to revert you back to the stock boot image if needed.
Takes only a minute or two depending if you already have adb installed, fastboot drivers setup, and bootloader unlocked. (The guide will walk you through this if you are new)
Rooting Your Shield Will Break AI Upscaling and Dolby Vision. You /Cannot/ Lock the bootloader while rooted, you can only Lock the bootloader when you have the stock boot Image installed. This tool simply makes it easier to "Root" and to Revert back to Stock when done, so you can use your AI Enhanced Features again.
Spoiler: GUIDE
HOW TO ROOT:
If you are already running the STOCK firmware version you want to ROOT, Skip to step 2.
Spoiler: HOW TO CHECK YOUR INSTALLED FIRMWARE VERSION
You can check your currently installed firmware on the shield by going into Settings, selecting About, then scroll to the bottom.
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
You will see a section called SHIELD Android TV SW Version, this will show your installed FW
STEP 1:
Select a STOCK firmware from this THREAD, and fully install it.
STEP 2:
Download the BOOT MOD that correlates to your installed STOCK firmware.
Spoiler: BOOT MODS
If you want to build your own "Boot Mod" the instructions are HERE
Spoiler: 2019 PRO (16 GB MODEL)
Spoiler: 9.1.1
9.1.1mods.zip
drive.google.com
Spoiler: 9.1
9.1mods.zip
drive.google.com
Spoiler: 9.0
9.0.0mods.zip
drive.google.com
Spoiler: 8.2.3
8.2.3mods.zip
drive.google.com
Spoiler: 2017 (16 GB MODEL)
Special Thanks to @Manzing for obtaining the 9.1 and 9.1.1 images for us!
Spoiler: 9.1.1
9.1.1mods2017.zip
drive.google.com
Spoiler: 9.1
9.1mods2017.zip
drive.google.com
Spoiler: 9.0
9.0.0mods2017.zip
drive.google.com
Spoiler: 8.2.3
8.2.3mods2017.zip
drive.google.com
Spoiler: 2015 (16 GB MODEL & 500 GB MODEL)
Special thanks to @I_did_it_just_tmrrow for taking the time to download from gameworks, patch with magisk, and install the 2015 version, and verified it works HERE as well as they verified the hashes were the same for the boot.img of the 500gb and 16gb boot.img
Spoiler: 9.0.0
9.0.0-2015-MODS.zip
drive.google.com
If you want me to add more, let me know.
STEP 3:
Make sure you have usb debugging enabled in settings and your shield is ON.
Spoiler: IF YOU NEED HELP WITH THIS STEP
This adds an additional Minute to setup time
Attach a USB-C cable to your shield and plug it into your PC.
(Use the USB port furthest away from the HDMI Cable)
Go into settings, select device preferences
Select About, then hit the build number 7 times
Back out to device preferences and now select developer options
Then enable USB debugging and Network debugging.
Spoiler: YOU WILL NEED ADB INSTALLED, HERE'S AN EASY WAY TO INSTALL IF YOU NEED
Here's a way to install adb quickly using powershell and chocolatey.
Open powershell as admin and copy and paste these two lines, one line at a time:
Code:
Set-ExecutionPolicy Bypass -Scope Process -Force; [System.Net.ServicePointManager]::SecurityProtocol = [System.Net.ServicePointManager]::SecurityProtocol -bor 3072; iex ((New-Object System.Net.WebClient).DownloadString('https://community.chocolatey.org/install.ps1'))
choco install adb
That's it!
Note the ip address and in a terminal on your computer, connect to this ip address.
Example: adb connect 192.168.0.10:5555
This will prompt the shield to allow for a connection, say yes.
STEP 4:
Run your choice of .bootmod, .deltamodonly, or .magiskmodonly. MORE INFO
Spoiler: NEW BOOTMOD SCRIPT OPTIONS
Simple 1 min demo:
How to use the new .bootmod script:
After Enabling USB Debugging and Wireless debugging, then adb connecting to your device, run the .bootmod script
If you did everything correctly, your device should be listed, and you may proceed by pressing 1 and enter.
If you forgot to adb connect you may now do so with option 3, just type in your Shield's IP address.
After you select 1 on the main menu, the script will then reboot your device into the bootloader and will wait for you to press a key so the script can run fastboot devices to verify that your device has posted.
Wait to press any key until you see your shield's lights come on and then you hear the window's chime on your computer. (see 0:16 in the video) Then Press 1 if your device is listed like above.
Spoiler: IF YOUR DEVICE ISN'T SHOWING
Run option 2 again, in case the script went too fast or you hit a key too quickly.
If your device is still not showing, make sure you have unlocked the bootloader and installed the fastboot drivers for your device.
Spoiler: HOW TO INSTALL FASTBOOT DRIVERS
DOWNLOAD:
Shield Drivers.zip
drive.google.com
Now open Device Manager and follow the steps below:
Spoiler: UNLOCKING THE BOOTLOADER
NOTE THAT UNLOCKING YOUR BOOTLOADER WILL ERASE ALL DATA ON THE DEVICE!
The shield should now be at the bootloader menu, simply select unlock bootloader
Now you can select which boot mod you would prefer. The script will erase the old boot image, flash the new one, reset, then the script will pause for us.
When your shield has fully rebooted and is on the main menu, you can press any key in the terminal and the script will finish the magisk installation for us by installing the apk to the device.
If you accidentally pressed a button too quickly, you can always access the apk menu to adb install the Magisk apk.
FULL RUNDOWN OF V2 CHANGES
Remember that you can always revert back to the Stock Boot Image and Lock your bootloader (again you can only lock it with a Stock boot flashed) to get your AI Upscaler and Dolby Vision working again when you are done with Root.
STEP 5:
Spoiler: RUN YOUR MAGISK APK ON THE SHIELD
Now Opening Magisk will trigger this alert:
Select OK and after the reboot, your Magisk of Choice will be fully installed!
You will now have Root and still be able to use apps and features that you shouldn't be able to. Normally with root (or at least on the Dev Rooted Images) we cannot install Disney +, but as you see, we Sure Can Now~! ;-)
IF YOUR PLAYSTORE IS MISSING APPS, SEE THIS POST. REQUIRES MAGISK DELTA
Spoiler: SOURCE CODE
SOURCE CODE --- You may repurpose / share this as you see fit.
DELTAMODONLY.BAT
Code:
fastboot erase boot
fastboot flash boot bootmod2.img
fastboot reboot
MAGISKMODONLY.BAT
Code:
fastboot erase boot
fastboot flash boot bootmod1.img
fastboot reboot
BOOTMOD.BAT ---- There is unused code, the :UNLOCK code will be removed later, it didn't work how I would have liked in testing and I forgot to remove it. It isn't harming anything right now so will remove it with the next update.
Code:
@echo off
title [BOOTMOD]
color 0A
if "%1" neq "" ( goto %1)
:MENU
cls
echo BOOTMOD -- Version 2
echo =========================================
adb devices
echo =========================================
echo 1. Enter Bootloader Menu for Mod Flashing
echo 2. Enter APK Menu
echo 3. ADB Connect
echo 4. Reboot to System
echo 5. HELP
echo 6. EXIT BOOTMOD
echo =========================================
set /p answer= Please Enter your Selection:
if %answer%==1 goto BOOTLOADER
if %answer%==2 goto APK
if %answer%==3 goto ADB
if %answer%==4 goto REBOOT
if %answer%==5 goto HELP
if %answer%==6 goto EXIT
:ADB
cls
set /p answer= Type in SHIELD IP Address:
adb connect %answer%
goto MENU
:APK
cls
echo ===========
echo APK MENU
echo ===========
echo 1. Magisk by TopJohnWu
echo 2. Magisk Delta fork by HuskyDG
echo 3. Return to Main Menu
echo ================================
set /p answer= Please Enter your Selection:
if %answer%==1 goto MAGISKAPK
if %answer%==2 goto DELTAAPK
if %answer%==3 goto MENU
:MAGISKAPK
adb install magisk.apk
goto MENU
:DELTAAPK
adb install delta.apk
goto MENU
:HELP
cls
echo Adb must be installed on the computer and USB debugging must be enabled on the Shield.
echo You will need the Fastboot USB drivers installed on your PC.
echo Check the GUIDE on XDA for more help.
echo LINK: https://forum.xda-developers.com/t/bootmod-root-your-shield-in-1-minute-2015-2017-2019.4524873/
echo =====================================================================================
set /p answer=Press 1 to return to Main Menu:
if %answer%==1 goto MENU
:UNLOCK
cls
fastboot oem unlock
echo ==============================================================
echo Use your shield to select yes. Then press any key to continue
echo ==============================================================
pause
set /p answer=Press 1 to Enter Flash Menu or 2 to return to Main Menu:
if %answer%==1 goto FLASH
if %answer%==2 goto MENU
:BOOTLOADER
cls
adb reboot bootloader
pause
cls
echo =====================================================
fastboot devices
echo =====================================================
echo Is your device listed above?
echo =====================================================
set /p answer=Press 1 for yes or 2 for no or 3 for Help:
if %answer%==1 goto FLASH
if %answer%==2 goto BOOTLOADER
if %answer%==3 goto HELP
:FLASH
cls
echo How would you like to flash your boot today? Do you want to include:
echo ====================================================================
echo 1. TopJohnWu's Magisk
echo 2. HuskyDG's Magisk Delta
echo 3. Revert Back To Stock Boot Image
echo 4. Reboot Shield to System
echo 5. Return to Main Menu
echo ====================================
set /p answer=Select a number and press enter:
if %answer%==1 goto MAGISK
if %answer%==2 goto DELTA
if %answer%==3 goto STOCK
if %answer%==4 goto REBOOT
if %answer%==5 goto MENU
:MAGISK
cls
fastboot erase boot
fastboot flash boot bootmod1.img
fastboot reboot
echo =====================================
echo Wait for your Shield to fully Reboot.
echo =====================================
pause
adb install magisk.apk
goto MENU
:DELTA
cls
fastboot erase boot
fastboot flash boot bootmod2.img
fastboot reboot
echo =====================================
echo Wait for your Shield to fully Reboot.
echo =====================================
pause
adb install delta.apk
goto MENU
:STOCK
cls
fastboot erase boot
fastboot flash boot boot.img
echo ================================================================================
echo REMEMBER TO LOCK YOUR BOOTLOADER FOR AI UPSCALING AND DOLBY VISION FUNCTIONALITY
echo ================================================================================
echo 1. Reboot Shield to the System
echo 2. Return to Main Menu
echo =========================
set /p answer=Enter your selection:
if %answer%==1 goto REBOOT
if %answer%==2 goto MENU
:REBOOT
fastboot reboot
goto MENU
:EXIT
exit /b
Spoiler: SOURCES
Here are the sources for the Magisk apk's and their respective projects, used in making the boot mods.
Topjohnwu's Magisk APK Direct Download Link (v25.2):
https://github.com/topjohnwu/Magisk/releases/download/v25.2/Magisk-v25.2.apk
Github Project Page:
GitHub - topjohnwu/Magisk: The Magic Mask for Android
The Magic Mask for Android. Contribute to topjohnwu/Magisk development by creating an account on GitHub.
github.com
HuskyDG's Forked version of Magisk "Delta" Direct Download Link:
https://github.com/HuskyDG/magisk-files/releases/download/2304d221-delta/app-release.apk
Github Project Page:
GitHub - HuskyDG/magisk-files
Contribute to HuskyDG/magisk-files development by creating an account on GitHub.
github.com
All original boot images come from NVIDIA's Gameworks:
Gameworks Download Center
Get the latest Gameworks software for your game development work.
developer.nvidia.com
Spoiler: THANK YOU TO OUR COMMUNITY <3
SPECIAL THANKS TO OUR FRIENDS IN THE XDA COMMUNITY <333
Thank you to @topjohnwu for making Magisk
@huskydg For making the forked magisk with magiskhide enabled and other features
@nooted1 for teaching us about the magisk variant "delta" that has magiskhide still configured inside the apk
@ajolly for their efforts in educating us about safetynet modules that can be used within magisk
@louforgiveno for their efforts in reverse engineering apks, determining that it would be better to clear data in the google playstore instead of cache, and providing excellent feedback on pretty much every step of the way.
@abc1054 for testing the ai upscaler and teaching me how to even use the silly thing.
@Zer0_rulz for testing the upscaler and teaching us about link2sd and providing a useful idea for studies, to "freeze apps" as opposed to straight deletion in tests. I will use both methods in the future!
@pinvok3 for their script they made to teach us how to more efficiently locate the apps tied to the ai upscaler and determining the "tvsettings.apk" to potentially be culpable in jailing our upscaler. They also taught me about the dolby vision feature on the shield
@Renate for allowing me to bother her in the AVB thread while I try to learn how to talk to people like her. haha
@Manzing for stepping up and being the hero we needed for the 2017 shield community! They were able to locate the correct pathing for the OTA Firmware as well as provide us the stock 9.1 boot and complete OTA!!
@I_did_it_just_tmrrow For taking the time to verify magisk is able to indeed patch the 2015 version of the Shield HERE and more so they explained the boot images provided on gameworks for the 2015 version have the same hash, therefore a patched boot will work on both the 16gb and 500gb models. Thank you!
AI UPSCALER FIX:
THERE'S SOME TROUBLE WITH THE UPSCALER STILL, THE COMMUNITY IS WORKING TOGETHER IN THE COMMENTS BELOW
Spoiler: MORE PROBLEMS WITH ROOT
Please note that patching the boot with Magisk causes problems like the AI upscaler and Dolby vision being unavailable. You may want to wait for updates unless you have a reason to root with stock but otherwise feel free to join us in troubleshooting!
NOTE THAT THIS METHOD REQUIRES A FIX SO ONE COULD RUN ADB AS ROOT OUTSIDE OF THE SHELL. (adb shell su works, but not adb root outside of shell) Trying to mod this binary. Bare with me
Verified Working on the Shield:
[GUIDE][NO-ROOT] How to install Ubuntu and other Linux Distros on Your Phone or Android TV Box, using Termux
NOTICE: THIS METHOD IS ONLY FOR NON ROOTED DEVICES PROOT-DISTRO GITHUB PAGE Hello Friends! Today I wanted to start a thread that will house prebuilt Linux environments, as well as instructions for building the Linux environments yourself...
forum.xda-developers.com
This is great news for the Shield...the ai upscaling not working was the main reason i haven't rooted yet. Thank you for your time and efforts getting this together!
Bravo!
@louforgiveno it's only thanks to the Community haha. I was trying to do things in a much more complicated way and thanks to nooted and renate I understand that there is no need to reinvent the wheel and we can use the tools already made. (magisk + safetynet modules shared by ajolly) [still going to do complicated things tho.. got my uart serial adapter in today. idk how to use it but will find out and or bother renate till she blocks me ]
This guide is a good reference to bypassing safetynet
--edit now after rewatching the video a few times I understand what nooted is talking about when they say this
" The Magisk Hide settings need to be set such that everything under Google Play Services is toggled on EXCEPT FOR the GMS one at the top. Also, toggle it on for Google Services Framework."
Thank you again sosososo much @nooted1 I feel so stupid I didn't realize what magisk actually is, or does. You are the reason I learned how to select the boot.img in magisk and tell it to patch it so I can share a modded image. Now I am like a million percent certain we can do something with the system and then we would have a rom after a little customizations!
@louforgiveno 100 Percent Confirmed! Disney + is in the playstore and the ai upscaling is functional without having to relock the boot loader, YAY! Haha. The guide has been updated with the steps. It was super easy thankfully
Now I am going to learn how to get the system pulled with all of this preinstalled so we never have to do this mess. again Idk how or how long it will take but it will happen. At least folks can use this for now
jenneh said:
@louforgiveno 100 Percent Confirmed! Disney + is in the playstore and the ai upscaling is functional without having to relock the boot loader, YAY! Haha. The guide has been updated with the steps. It was super easy thankfully
Now I am going to learn how to get the system pulled with all of this preinstalled so we never have to do this mess. again Idk how or how long it will take but it will happen. At least folks can use this for now
Click to expand...
Click to collapse
Nice, that's great news! I'm gonna dig into this over the weekend
HOW TO BUILD YOUR OWN "BOOT MOD":
For anyone who wanted to know how I made the boot mods I shared, so you can make it yourself if you want.
You can take the boot.img provided to us from NVIDIA and push it to your sd card.
Code:
adb push boot.img /sdcard/Download
Then use magisk to patch the image. I didn't know what this option Meant until yesterday. Haha
YOU HAVE TO DO THIS ON THE SHIELD OR A PHONE. AN EMULATOR WILL NOT WORK; This example uses nox because I didn't feel like recording my TV
Your browser is not able to display this video.
Magisk will tell you at the end what it named the file, then you could pull the image, rename it to whatever you like, and share it. (for instance i named mine bootmod.img with a batch to erase and reflash the partition)
This should work for other devices. So that's how you patch a boot now a days
Spoiler: SIDENOTE
A Sidenote. Something funny I discovered. DON'T Do this haha.
IDK why it is but, if you push the build.prop from the ROOT 8.2.3 to the stock version, it crashed it in an interesting way. After reseting, the shield would post to the nvidia logo, make it to the google logo, crash, reboot to nvidia logo then android literally died. Haha.
Whereas, if you sent the STOCK build.prop to the ROOT system, it would not crash, and would instead allow you to do some things you normally couldn't, like download the 9.1 OTA package
Fantastic, glad it worked out. Thanks for testing it!
I mostlly want to go run cf.lumen on my shield to help with sleep.
Btw, I suspect patching the boot.img will work on any device with the same architecture - ie your phoe.
Spoiler: PLAYSTORE FIX IF YOUR PLAYSTORE IS MISSING APPS
This is only for those that need. Most shouldn't need this
NOTE this only works with the magisk delta version as it has magisk hide.
Hit the settings button at the top right
Enable ZYGISK:
STEP 1:
Download the safetynet module HERE and name it safety. MIRROR
Code:
adb push safety.zip /sdcard/Download
STEP 2:
Open Magisk and select the Modules button at the bottom right. The puzzle piece!
Select add a install from storage, navigate to Download, and install safety.zip, then reboot.
STEP 3:
MAGISK HIDE SETTINGS-
In magisk, under Settings, enable MagiskHide. Now select Configure MagiskHide
Click to show system apps
Then check all the settings for Google Services Framework
Then check everything under Google Play Services EXCEPT GMS
Now go into the SHIELD'S Settings > APPS > and force stop and Clear Data for Google Play Services, Google Services Framework, and the Google Play Store. Reboot.
Remember that you can turn the safetynet module off, which may be needed to do so you can run adb as root or perform other root operations
jenneh said:
And probably QEMU the arm architecture version too! <--Idk how to use the arm qemu yet but I have some videos stored away and some ambitions to build a proper android vm that is arm based and open source, and wont plant crap all over your drive! lol.
this man is a god send
Click to expand...
Click to collapse
Why do you want that? You’d end up converting arm code to run on x86, way more efficent to just run an x86 version.
But if you really want, its possible - https://android-developers.googleblog.com/2020/03/run-arm-apps-on-android-emulator.html
ajolly said:
Why do you want that? You’d end up converting arm code to run on x86, way more efficent to just run an x86 version.
But if you really want, its possible - https://android-developers.googleblog.com/2020/03/run-arm-apps-on-android-emulator.html
Click to expand...
Click to collapse
I want to do it to know how to, haha. not really for anything practical right now, just for practice. and Thank You so much!!
jenneh said:
I want to do it to know how to, haha. not really for anything practical right now, just for practice. and Thank You so much!!
Click to expand...
Click to collapse
i have not extensively tested it, but it seems like windows subsystem for android (on windows 11) includes an arm emulation layer. Overall its one of the nicest android emulation experiences, at the downside of not supporting all functionality properly - like notifications.
The rooting worked good, but ai upscaling does not work, I have tried your instructions. When I went to test out a video , it would only put it to basic not al-upscaling. I put it to enhance it says yes. But it's same as basic, no change in inhanced. And no to ai-enhanced. I did all the instructions that was given on this site. So I put back my Nvidia shield tv pro back to 9.1.1. thanks for all your hard work. ,. Hope someone figure it out for Ai-enhanced.
abc1054 said:
The rooting worked good, but ai upscaling does not work, I have tried your instructions. When I went to test out a video , it would only put it to basic not al-upscaling. I put it to enhance it says yes. But it's same as basic, no change in inhanced. And no to ai-enhanced. I did all the instructions that was given on this site. So I put back my Nvidia shield tv pro back to 9.1.1. thanks for all your hard work. ,. Hope someone figure it out for Ai-enhanced.
Click to expand...
Click to collapse
Your message you mailed said you used 480 p video so no that would not work. I tried the same thing with little house on the prairies and then read an article that said to use 720p or 1080p
jenneh said:
Your message you mailed said you used 480 p video so no that would not work. I tried the same thing with little house on the prairies and then read an article that said to use 720p or 1080p
Click to expand...
Click to collapse
I also tried it on 720p , and 1080p
@abc1054 Not sure then. This is still new so as more people test things and report their results we can work out the kinks. I know some people were waiting till the weekend. Thank you for trying.
I thank everyone that has contributed to this project. Thanks for all your hard work.
I reinstall the Nvidia shield tv pro 9.1.1 and rooted it, everything works but the ai upscaling, and time before I installed 8.2.3. Even checked the safetynet and was all good. So I don't get why Ai upscaling don't work. Did everything in this forum. I'm confused, if someone ever tested it, with upscaling.. it does not work. Sorry. Test it twice now. No go. Video on 720p and 1080p. Thanks again.
I have notice that google play is not certified. With the settings that was given above.
abc1054 said:
I have notice that google play is not certified. With the settings that was given above.
Click to expand...
Click to collapse
Google play is uncertified.. but rooted. When tested safety net was passed.. but play store is uncertified.. maybe its the problem of AI up scaling.
Clean installed 9.0 then manually updated 9.1.1, then did the instruction here, and got this result