Related
I'm working on customizing my rooted tab 2 and then exporting to an Odin flashable ROM (following instructions from (http://forums.androidcentral.com/dr...create-custom-odin-images-backup-restore.html)
The reason for this, rather than using CWM to more easily make a backup, is that I need to flash my customizations onto a BUNCH of tablets, and don't want to go through the process of unlocking the bootloader and installing CWM for each of them.
What I'm wondering is this:
Which partitions should I be copying to build an Odin flashable rom. The instructions I linked say that I need zImage, factoryfs.rfs and recovery.bin - which I'm hoping is the case.
I'm not sure which partitions correspond to the necessary files for creating the flashable ROM. Any ideas?
Here are my partitions by name:
1|[email protected]:/ # ls -al /dev/block/platform/msm_sdcc.1/by-name
lrwxrwxrwx root root 1970-11-16 22:48 aboot -> /dev/block/mmcblk0p5
lrwxrwxrwx root root 1970-11-16 22:48 backup -> /dev/block/mmcblk0p20
lrwxrwxrwx root root 1970-11-16 22:48 boot -> /dev/block/mmcblk0p7
lrwxrwxrwx root root 1970-11-16 22:48 cache -> /dev/block/mmcblk0p17
lrwxrwxrwx root root 1970-11-16 22:48 efs -> /dev/block/mmcblk0p11
lrwxrwxrwx root root 1970-11-16 22:48 fota -> /dev/block/mmcblk0p19
lrwxrwxrwx root root 1970-11-16 22:48 fsg -> /dev/block/mmcblk0p21
lrwxrwxrwx root root 1970-11-16 22:48 grow -> /dev/block/mmcblk0p23
lrwxrwxrwx root root 1970-11-16 22:48 modem -> /dev/block/mmcblk0p1
lrwxrwxrwx root root 1970-11-16 22:48 modemst1 -> /dev/block/mmcblk0p12
lrwxrwxrwx root root 1970-11-16 22:48 modemst2 -> /dev/block/mmcblk0p13
lrwxrwxrwx root root 1970-11-16 22:48 pad -> /dev/block/mmcblk0p9
lrwxrwxrwx root root 1970-11-16 22:48 param -> /dev/block/mmcblk0p10
lrwxrwxrwx root root 1970-11-16 22:48 persist -> /dev/block/mmcblk0p16
lrwxrwxrwx root root 1970-11-16 22:48 recovery -> /dev/block/mmcblk0p18
lrwxrwxrwx root root 1970-11-16 22:48 rpm -> /dev/block/mmcblk0p6
lrwxrwxrwx root root 1970-11-16 22:48 sbl1 -> /dev/block/mmcblk0p2
lrwxrwxrwx root root 1970-11-16 22:48 sbl2 -> /dev/block/mmcblk0p3
lrwxrwxrwx root root 1970-11-16 22:48 sbl3 -> /dev/block/mmcblk0p4
lrwxrwxrwx root root 1970-11-16 22:48 ssd -> /dev/block/mmcblk0p22
lrwxrwxrwx root root 1970-11-16 22:48 system -> /dev/block/mmcblk0p14
lrwxrwxrwx root root 1970-11-16 22:48 tz -> /dev/block/mmcblk0p8
lrwxrwxrwx root root 1970-11-16 22:48 userdata -> /dev/block/mmcblk0p15
Thanks again for the great thread!
I'm not sure what you're following.
But in my limited experience all you will ever need is a system.img, boot.img and a cache.img to tell the recovery to wipe the data. And a recovery.img is optional. The zImage is the kernel and it is in the boot.img.
Also wrong section.
... and crossposting http://forum.xda-developers.com/showpost.php?p=48143832&postcount=177
Luigi2012SM64DS said:
I'm not sure what you're following.
But in my limited experience all you will ever need is a system.img, boot.img and a cache.img to tell the recovery to wipe the data. And a recovery.img is optional. The zImage is the kernel and it is in the boot.img.
Also wrong section.
Click to expand...
Click to collapse
Cool, thanks for the help. Which section would be better to post this in?
so I pull
boot (/dev/block/mmcblk0p7) to zImage
and
system (/dev/block/mmcblk0p14) to factoryfs.rfs
The instructions I linked to say that cache is optional if I don't want to pull personal data, so I might omit that.
If I don't pull the recovery.img, how does that impact the next tablet I install this on? Does it mean a factory wipe would reset it to its previous image, or is that unrelated.
Thanks again for the help - sorry for the cross-post, I'm pretty new to this entire thing.
Android-Andi said:
... and crossposting http://forum.xda-developers.com/showpost.php?p=48143832&postcount=177
Click to expand...
Click to collapse
Should I delete that one? I figured it was relevant to that thread / people who were interested in rooting that tab, but I guess not posting twice supersedes that. Thanks.
evrkusd said:
Cool, thanks for the help. Which section would be better to post this in?
so I pull
boot (/dev/block/mmcblk0p7) to zImage
and
system (/dev/block/mmcblk0p14) to factoryfs.rfs
The instructions I linked to say that cache is optional if I don't want to pull personal data, so I might omit that.
If I don't pull the recovery.img, how does that impact the next tablet I install this on? Does it mean a factory wipe would reset it to its previous image, or is that unrelated.
Thanks again for the help - sorry for the cross-post, I'm pretty new to this entire thing.
Click to expand...
Click to collapse
The thread has already moved from development to Q and A.
And no, i'm still not understanding. you should pull /system and make it into a system.img
And for the boot.img, I am not really sure how you can pull that from that tab. But I think you can just get a stock kernel boot.img from any ol' stock rom.
Luigi2012SM64DS said:
The thread has already moved from development to Q and A.
And no, i'm still not understanding. you should pull /system and make it into a system.img
And for the boot.img, I am not really sure how you can pull that from that tab. But I think you can just get a stock kernel boot.img from any ol' stock rom.
Click to expand...
Click to collapse
Hm ok. I guess other threads are pointing me to think that I need more than just a system.img.
See here:
http://forum.xda-developers.com/showthread.php?t=960946
or the original link I posted.
If all I need is system (/dev/block/mmcblk0p14) dumped to system.img, that would be easier, but I'm not sure that's all I need. If so, I guess I could pull system.img and tar it and try it out..
Thanks for the advice
evrkusd said:
Hm ok. I guess other threads are pointing me to think that I need more than just a system.img.
See here:
http://forum.xda-developers.com/showthread.php?t=960946
or the original link I posted.
If all I need is system (/dev/block/mmcblk0p14) dumped to system.img, that would be easier, but I'm not sure that's all I need. If so, I guess I could pull system.img and tar it and try it out..
Thanks for the advice
Click to expand...
Click to collapse
That guide is not for tab 2.
You only need a modem.bin if you have the P3100 the gsm tab and not the wifi only.
The zImage is the same as boot.img
The cache is only needed as, again, you need to make it so the data will be wiped to avoid bootloops if coming from custom roms.
And the system is the rom so you will obviously need that.
Luigi2012SM64DS said:
That guide is not for tab 2.
You only need a modem.bin if you have the P3100 the gsm tab and not the wifi only.
The zImage is the same as boot.img
The cache is only needed as, again, you need to make it so the data will be wiped to avoid bootloops if coming from custom roms.
And the system is the rom so you will obviously need that.
Click to expand...
Click to collapse
Ok, thanks. The tab 2 I'm using is the Verizon SCH-I705, btw, so should I include modem.img? It seems like I could just leave the existing modem partition on the device, since I don't want to make any changes there.
Here's my current setup
/boot send to boot.img
dd if=/dev/block/mmcblk0p7 of=/sdcard/boot.img bs=4096
/system send to system.img
dd if=/dev/block/mmcblk0p14 of=/sdcard/system.img bs=4096
/recovery send to recovery.img
dd if=/dev/block/mmcblk0p18 of=/sdcard/recovery.img bs=4096
/cache send to cache.img
dd if=/dev/block/mmcblk0p17 of=/sdcard/cache.img bs=4096
Then I'll roll all 4 of them into a tar package with:
tar -H ustar -c system.img cache.img boot.img recovery.img > package.tar
md5sum -t package.tar >> package.tar
mv package.tar package.tar.md5
and flash via Odin
Does it sound like that will work?
Thanks again for the help
evrkusd said:
Ok, thanks. The tab 2 I'm using is the Verizon SCH-I705, btw, so should I include modem.img? It seems like I could just leave the existing modem partition on the device, since I don't want to make any changes there.
Here's my current setup
/boot send to boot.img
dd if=/dev/block/mmcblk0p7 of=/sdcard/boot.img bs=4096
/system send to system.img
dd if=/dev/block/mmcblk0p14 of=/sdcard/system.img bs=4096
/recovery send to recovery.img
dd if=/dev/block/mmcblk0p18 of=/sdcard/recovery.img bs=4096
/cache send to cache.img
dd if=/dev/block/mmcblk0p17 of=/sdcard/cache.img bs=4096
Then I'll roll all 4 of them into a tar package with:
tar -H ustar -c system.img cache.img boot.img recovery.img > package.tar
md5sum -t package.tar >> package.tar
mv package.tar package.tar.md5
and flash via Odin
Does it sound like that will work?
Thanks again for the help
Click to expand...
Click to collapse
Oh the verizon tab.
Yes you should have the modem.
Don't take the cache from the /cache partition you should make a cache.img from scratch.
Luigi2012SM64DS said:
Oh the verizon tab.
Yes you should have the modem.
Don't take the cache from the /cache partition you should make a cache.img from scratch.
Click to expand...
Click to collapse
Ok, thanks. Am I right in thinking that if the tab already has a working modem (since verizon is working on it), do I need to flash modem.img if I haven't made any changes on the new version?
Also, not sure how to make a cache.img from scratch. I've searched for similar terms on xda and haven't come up with anything.
Thanks again.
Hello.
I have a Samsung Relay that is rebranded by Cellular One of North East AZ. They have a fancy super thin sticker over the Tmobile logo on the glass. lol... But the firmware in the device is branded by Cellular One.
I cannot find that firmware anywhere and want to know if anyone has any directions on how to back up the firmware so It could be loaded onto a t-mobile Relay to "brand" it for Cellular One.
Appreciate any help you can offer.
Thanks.
(I normally play in CDMA world, but I moved to po dunk nothing ville and VZW Sucks here, so had to go with Cell One. First real experience with GSM)
I've never done this before and I'm not 100% sure if it can be done. But there probably are ways if you're clever enough. So here's what I would try if I were in your position:
1. Check if there's a way to dump it with Odin. You can google around to see if it's possible but I'm pretty sure it's a feature in Odin (Whether our phone supports it is another story). You would have to boot into download mode, (vol down + home + power when powering on) and then follow whatever directions you find for dumping a rom. Just make sure you don't flash anything to your device. And make sure you know what you're doing with Odin because it can brick your phone if you push the wrong buttons.
2. The other way to do it is to dump your partition contents with the dd command (I would do it through an adb shell). This would require you to have root. I'm not sure of how to get root without modifying your ROM (kind of defeats the purpose of what you're trying to do if we have to change the ROM) but there are usually ways to get a temp root. Not sure how to do it on our phone but maybe someone else can help you with that part. Or maybe do some googling. The dd part I've at least done for the boot partition. Basically what you want to do is open an adb shell and run:
"ls -l /dev/block/platform/msm_sdcc.1/by-name/"
This will give you a list of all the partition name symlinks and show you the block devices they point to. For example, when I was getting boot.img I found that the "boot" symlink pointed to "/dev/block/mmcblk0p7". Find all the partitions you want to image in this list and figure out which block devices they point to.
The next part is to figure out how big each of the partitions is. You can find this in /proc/partitions. So from your adb shell you would run:
"cat /proc/partitions"
This will print out all of your flash block devices (look at the ones you were interested in from above). The 3rd column in this list will be the # of blocks in the partition. I believe the block size is 1k (1024 bytes). For example, my boot partition was 10240 blocks which comes out to 10 Megs, which sounds about right. The 1k assumption also agrees with the total device flash size, which is 7634944 blocks (mmcblk0) which is just under the 8GB they say the phone has. So I'm pretty confident about the block size.
So now we're at the part where things get a little hairy. I'm assuming you've found some way to get root in your adb shell. Be very careful with these dd commands and if you don't know what you're doing, don't do it. You would want to run something like the following:
"dd if=/dev/block/<partition name> of=/storage/sdCard/<name of image file> bs=1024 count=<# of blocks for partition you found in /proc/partions>"
You would do this for each partition you want dumped.
Again, be careful if you decide to try and do any of this stuff (especially with the dd commands, if you mix up the in file and out file you can brick your device). But like I said this worked for me to get boot.img and I was able to extract it and get the kernel and ramdisk. Hope this helps and sorry I don't know more about getting you a temp root without modifying your ROM.
Jeff
Can you send me a screenshot of your about phone screen?
Sent from my SGH-T699 using Tapatalk
hello everyone,
i resurrection this thread so bring some information to pepole who want to backup stock rom so they can flash it back with odin.
i constructed a list of partitions names/partition location nb./partition block size for a refreance of what to backup:
block size partition block location partition name
7634944 /dev/block/mmcblk0 Whole SSD on Device
2048 /dev/block/mmcblk0p5 aboot
6144 /dev/block/mmcblk0p20 backup
10240 /dev/block/mmcblk0p7 boot
860160 /dev/block/mmcblk0p17 cache
13952 /dev/block/mmcblk0p11 efs
10240 /dev/block/mmcblk0p19 fota
3072 /dev/block/mmcblk0p21 fsg
5120 /dev/block/mmcblk0p23 grow
61440 /dev/block/mmcblk0p1 modem
3072 /dev/block/mmcblk0p12 modemst1
3072 /dev/block/mmcblk0p13 modemst2
512 /dev/block/mmcblk0p9 pad
10240 /dev/block/mmcblk0p10 param
8192 /dev/block/mmcblk0p16 persist
10240 /dev/block/mmcblk0p18 recovery
512 /dev/block/mmcblk0p6 rpm
128 /dev/block/mmcblk0p2 sbl1
256 /dev/block/mmcblk0p3 sbl2
512 /dev/block/mmcblk0p4 sbl3
8 /dev/block/mmcblk0p22 ssd
1228800 /dev/block/mmcblk0p14 system
512 /dev/block/mmcblk0p8 tz
5386240 /dev/block/mmcblk0p15 userdata
so all you have to do is to use this command via terminal:
"dd if=/dev/block/<partition name> of=/storage/sdCard/<name of image file> bs=1024 count=<# of blocks for partition>"
you can cnange "sdCard" for "extSdCard" if you wish.
this will make you the raw imgae of all partitions and then you will need to use tar in linux to make a tar.md5 file for odin.
use the commands below in terimanl to do so:
"tar -H ustar -c image1 image2 image3 etc... > package_name.tar"
"md5sum -t package_name.tar >> package_name.tar"
"mv package_name.tar package_name.tar.md5"
remember you will need superuser on you phone to do this, also the commands are without the quotation mark.
the only thing left to know is what partitions you must backup to beable to restore fully to stock with/without data.
i know you should backup the boot/efs/recovery/system partitions for clean stock + userdata/cache if you want your data back.
does anybody know of other critical partitions to backup?
I bought an Android head unit (from a Chinese seller) for my car which I've been trying to port TWRP recovery to. I got no source code whatsoever with the board, so all the reverse engineering that I've done so far is just my own black box (rather grey I guess) experimenting.
The board luckily runs an engineering build of AOSP 4.4.2, so I've locally set up trees to build AOSP as well as OmniROM and have been building binaries from the tree and side-loading using adb to test things out.
Also I have a full firmware flash setup on my SD card, so if I break anything, I can easily go back to where I was before by just booting with the SD card, and this has been a God-send.
Before trying the full TWRP, I wanted to try to play with the stock recovery first to ensure I can reboot between the main image and recovery easily, which is where I seem to have stumbled upon an issue.
Now to the actual issue I'm facing:
If I issue an 'adb reboot recovery' command, libcutils.so seems to write "boot-recovery" string into the /misc partition which seems to trick the bootloader to boot into recovery. The stock recovery that came with the board just reboots immediately after few seconds and goes back into booting Android again.
I hacked the recovery rootfs not to start the recovery service, which seems to stop the reboot, but now my board is stuck in a recovery-boot-loop. In other words, if I issue a reboot command from the adb within recovery, the board reboots but again into recovery.
I've also tried using dd to wipe out the "misc" partition and reboot, but somehow the boot loader boots the board back into the same recovery, and I see the "boot-recovery" string in the /misc partition again. How did this string get back here ?
I've tried to understand the Allwinner boot process and this seems to be the sequence:
BROM -> boot0 -> boot1 -> boot.axf -> uboot -> Android Kernel
I've looked at the contents of my nanda partition which has the bootloader on a vfat partition, and I found only few files in there, which I'm not sure but did not look like they stored any information on which partition to boot.
I also looked at the env partition (nandb), this seems to be just a list of environment variables for u-boot. Although it contains the commands for booting the main image and the recovery, I did not find any setting which controlled which boot command is to be executed at any given point.
So, any one have any clue whatsoever on how boot.axf decides whether to boot the main image or recovery ?
Thanks!
UPDATE:
Here is the partition table info:
~ # ls -l /dev/block/by-name/
lrwxrwxrwx root root 2000-01-01 00:00 UDISK -> /dev/block/nandi
lrwxrwxrwx root root 2000-01-01 00:00 boot -> /dev/block/nandc
lrwxrwxrwx root root 2000-01-01 00:00 bootloader -> /dev/block/nanda
lrwxrwxrwx root root 2000-01-01 00:00 cache -> /dev/block/nandg
lrwxrwxrwx root root 2000-01-01 00:00 env -> /dev/block/nandb
lrwxrwxrwx root root 2000-01-01 00:00 misc -> /dev/block/nande
lrwxrwxrwx root root 2000-01-01 00:00 persist -> /dev/block/nandh
lrwxrwxrwx root root 2000-01-01 00:00 recovery -> /dev/block/nandf
lrwxrwxrwx root root 2000-01-01 00:00 system -> /dev/block/nandd
I guess the A20 is not famous enough yet.. not even one response
looking for a head unit for my highlander and saw a unit that comes with A20
they say it is faster that the A9 s in the market I am not sure about that as its dual core 1ghz and I have seen many dual core A9 1.6ghz
is there anythread on the A20?
any luck with your setting?
***It worked for me, but I make no guarantee of invariable results. I therefore, claim no responsibility and offer no warranty. If it does brick your phone, please pm me with the subject "SuperSU without Kingroot" so we can figure out where we went wrong.***
MetroPCS (lgms330) and the T-Mobile (lgk330) models.
The TWRP method: It's easier than the old method in post 3 which did mess up a couple of peoples phones for some reason. The method in post 3 is still relevant for those who don't want to use TWRP for whatever reason.
You will need:
computer, usb cord, and *adb/fastboot installed
*A note to those who don't know what adb or fastboot is:
There are plenty of tutorials out there explaining how to install and use adb and fastboot.
If you are unfamiliar with these tools you may want to check out this forum.
Part 1: enable developer mode / unlock boot loader
Developer options
On your phone, open settings do the following
Enable Developer mode
{
"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"
}
Enable oem unlock (LG was nice enough to enable us to unlock our bootloader from the "developer options")
Enable adb debug
Plug your phone into your computer and run
Code:
adb devices
you will be prompted to Allow USB debugging?
Part 2: installing the Team Win Recovery Project.
I can confirm that the following technique works for the T-Mobile k330 too.
Abridged quoted instructions from this thread / partial copy from post #42 Senior Member: starkly_raving
Prerequisites:
1. unlocked bootloader
2. knowledge of fastboot commands.
First, connect your phone to the computer and run
Code:
adb reboot bootloader
Next, if you want to test but not replace your recovery
Code:
fastboot boot Twrp_m1_v2.img
Instead, if you want to replace your recovery partition with TWRP
Code:
fastboot flash recovery twrp-image-3.img
DOWNLOADS:
New forum has a version of TWRP with a button combination to boot into recovery.
Beta1:
twrp-image-3.img I hope you don't mind me mirroring [MENTION=805681]reemobeens19
Part 3: Installing SuperSu, Xposed framework, and Xposed installer
At the time of this writing these are the latest versions:
Xposed framework: sdk22/arm/xposed-v86-sdk22-arm.zip
Xposed installer: XposedInstaller_3.0-alpha4.apk
SuperSU: Version 2.76
Xposed uninstaller <- You need to flash this in order to completely uninstall the Xposed framework if you don't want it anymore or you want to upgrade with a newer version.
On our phone booting into TWRP can be done with the physical button combinations. If you don't feel like doing finger gymnastics you can use
Code:
adb reboot recovery
Tap install, choose the zip file(s) you downloaded, and the rest is fairly self explanatory.
If I made any errors or omissions feel free to mention it. I really hope this helps.
Xposed Follow up
Now that you have the Xposed Framework installed, you need to install the "Xposed installer" app in order to use it.
You need to go into settings -> security -> and check the box that says "Unknown sources"
If you have downloaded the XposedInstaller_3.0_alpha4.apk onto you phone, then you can use the "File Manager" app already installed on the phone; navigate to the XposedInstaller_3.0_alpha4.apk (probably in your "Download" folder); and tap on it. It will ask if you want to install it so tap install.
Xposed installer needs root access so grant it when prompted. The first time I ran the actual app it threw an error message. Either restart your phone or restart the app (I cannot remember which I did) then it should work.
OBSOLETE
Here are the old instructions for postarity. It worked for quite a few people
***I have followed this exact procedure with a 100% success rate in linux; however, I make no guarantee invariable results. I therefore, claim no responsibility and offer no warranty. If it does brick your phone, please pm me with the subject "SuperSU without Kingroot" so we can figure out where we went wrong.***
These custom system images come with SuperSu and the appropriate Xposed framework (sdk22/arm/xposed-v86-sdk22-arm.zip) baked right in.
So many people have bricked their LG K7's trying to replace kingroot with the superb SuperSu by chainfire. I have seen many that have bricked their phones trying to flash the latest Xposed framework as well. This method will hopefully be easy enough to deter people relying on kingroot all together. (Feel free to leave feedback in the comments if there is a step that need further elaboration or isn't working)
This tutorial will work for both the MetroPCS (lgms330) and the T-Mobile (lgk330) models.***This will wipe your device***
You will need:
computer, usb cord, *adb/fastboot installed, the appropriate system image, and serious patience.
MetroPCS Download:
ms330_root_system.img
T-Mobile Download:
k330_root_system.img
*A note to those who don't know what adb or fastboot is:
There are plenty of tutorials out there explaining how to install and use adb and fastboot.
If you are unfamiliar with these tools you may want to check out this forum.
Developer options
On your phone, open settings do the following
Enable Developer mode
Enable oem unlock (LG was nice enough to enable us to unlock our bootloader from the "developer options")
Enable adb debug
Plug your phone into your computer and run
Code:
adb devices
you will be prompted to Allow USB debugging?
Someone who is proficient in Windows please verify that fastboot "sees" the device. I was having trouble getting my Windows 7 64bit machine to recognize it. It worked every time in linux though. Thanks.
ADB/Fastboot commnads
On the computer (in windows you may have to replace adb with adb.exe and fastboot with fastboot.exe)
Code:
adb reboot bootloader
Code:
fastboot oem unlock
Don’t worry about the message it returns:
Code:
FAILED (remote: Already unlocked)
or
Code:
OKAY [ 0.040s]
Let's be OCD and make certain the bootloader is unlock.
Code:
fastboot getvar unlocked
The result should be
Code:
unlocked: yes
finished. total time: 0.001s
Get ready to wait a loooooong time. Flash the correct system image for your device carrier.
DON’T PANIC!!! When you run the fastboot command to flash the system image, it will return something like “Invalid sparse file format at header magi” and hangs for what seems like an eternity. This is normal. The next message it returns is “erasing 'system'...” and then you wait another eternity for the system to be overwritten. Mine took over 6 minutes to complete.
MetroPCS
Code:
fastboot flash system ms330_root_system.img
T-Mobile
Code:
fastboot flash system k330_root_system.img
Wait forever for it to get to the “Android is starting…” screen by running
Code:
fastboot reboot
I have no problem with kingroot as a concept. I just want to help people avoid bricking their phones.
It says cannot load 'ms330_root_system.img'
When I did the fastboot getvar unlocked it showed, "unlocked: yes; finished total time 0.000"
IEatFood said:
It says cannot load 'ms330_root_system.img'
When I did the fastboot getvar unlocked it showed, "unlocked: yes; finished total time 0.000"
Click to expand...
Click to collapse
I assume you are on the step where you issue the fastboot command to flash the system image. I'm guessing you don't have the system image in the same directory as you are executing the fastboot command. i.e. If you downloaded the 'ms330_root_system.img' into your Downloads folder you need to change into that directory in the command prompt
Windows cmd
Code:
C:\Windows\system32>
C:\Windows\system32> cd C:\Users\IEatFood\Downloads
C:\Users\IEatFood\Downloads> fastboot flash system ms330_root_system.img
Alternitavly, you could copy/paste the 'ms330_root_system.img' into the same directory as the fastboot.exe
Linux terminal
Code:
~/ $
~/ $ cd Downloads/
~/Downloads $ fastboot flash system ms330_root_system.img
ledzepman71 said:
I assume you are on the step where you issue the fastboot command to flash the system image. I'm guessing you don't have the system image in the same directory as you are executing the fastboot command. i.e. If you downloaded the 'ms330_root_system.img' into your Downloads folder you need to change into that directory in the command prompt
Windows cmd
Code:
C:\Windows\system32>
C:\Windows\system32> cd C:\Users\IEatFood\Downloads
C:\Users\IEatFood\Downloads> fastboot flash system ms330_root_system.img
Alternitavly, you could copy/paste the 'ms330_root_system.img' into the same directory as the fastboot.exe
Linux terminal
Code:
~/ $
~/ $ cd Downloads/
~/Downloads $ fastboot flash system ms330_root_system.img
Click to expand...
Click to collapse
Alright, 'I got the invalid sparse file format at header magi'
finished. total time: 0.002s
C:\Program Files (x86)\Minimal ADB and Fastboot>fastboot flash system ms330_root
_system.img
target reported max download size of 268435456 bytes
Invalid sparse file format at header magi
erasing 'system'...
OKAY [ 0.034s]
sending sparse 'system' 1/9 (257070 KB)...
OKAY [ 8.874s]
writing 'system' 1/9...
FAILED (remote: size too large)
finished. total time: 8.915s
Now it bricked my phone.
It keeps loading Bootloader STATE: Bootloader Unlock!!
IEatFood said:
Now it bricked my phone.
It keeps loading Bootloader STATE: Bootloader Unlock!!
Click to expand...
Click to collapse
My phone is doing the exact same thing after following the tutorial
CompFreak89 said:
My phone is doing the exact same thing after following the tutorial
Click to expand...
Click to collapse
Did it run successfully? If so sometimes you have to do the factory restet. Power off. Hold Vol down and power button. When the screen comes on keep holding down the vol down button let go of the power button and then push the power button again.
If it didn't run successfully please pm be with all the details including your phone model and all the output from the command line. Don't worry we'll get you squared away.
I updated the op to use an easier more standard way with TWRP.
tried it!
can't get past the step where you fastboot it, it get's stuck on the LG logo with small letters at the top
any ideas why?
I am on K330 by the way
To everyone. Please do research before flashing anything. Somebody had an lg Stylo tot. Trying to pass it off as a MS330! Wrong. Please research.
https://www.facebook.com/Czarsuperstar/
azureee said:
can't get past the step where you fastboot it, it get's stuck on the LG logo with small letters at the top
any ideas why?
I am on K330 by the way
Click to expand...
Click to collapse
If your problem hasn't been resolved, can you please describe in further detail what happened. Were you using the obsolete instructions in post 3? Were you on the step where you reboot into the bootloader? If you're really stuck please feel free to pm me.
[email protected] said:
To everyone. Please do research before flashing anything. Somebody had an lg Stylo tot. Trying to pass it off as a MS330! Wrong. Please research.
https://www.facebook.com/Czarsuperstar/
Click to expand...
Click to collapse
Hello, I appreciate your concern. On the topic of research, I was once told "a week in the lab can save you an hour in the library." I absolutely agree and would also encourage everyone to look deeper before plunging in head first.
If you are doubting the authenticity of my efforts and files allow me to elaborate on my method. As you will see, all the files were pulled directly off my personal phone and are not second hand impostors.
First, I looked up the partition table in adb using
Code:
ls -al /dev/block/platform/*/by-name
which output:
Code:
lrwxrwxrwx root root 1970-01-10 18:59 DDR -> /dev/block/mmcblk0p13
lrwxrwxrwx root root 1970-01-10 18:59 aboot -> /dev/block/mmcblk0p5
lrwxrwxrwx root root 1970-01-10 18:59 abootbak -> /dev/block/mmcblk0p9
lrwxrwxrwx root root 1970-01-10 18:59 boot -> /dev/block/mmcblk0p33
lrwxrwxrwx root root 1970-01-10 18:59 cache -> /dev/block/mmcblk0p38
lrwxrwxrwx root root 1970-01-10 18:59 config -> /dev/block/mmcblk0p21
lrwxrwxrwx root root 1970-01-10 18:59 devinfo -> /dev/block/mmcblk0p20
lrwxrwxrwx root root 1970-01-10 18:59 drm -> /dev/block/mmcblk0p28
lrwxrwxrwx root root 1970-01-10 18:59 eksst -> /dev/block/mmcblk0p19
lrwxrwxrwx root root 1970-01-10 18:59 encrypt -> /dev/block/mmcblk0p18
lrwxrwxrwx root root 1970-01-10 18:59 factory -> /dev/block/mmcblk0p35
lrwxrwxrwx root root 1970-01-10 18:59 fota -> /dev/block/mmcblk0p23
lrwxrwxrwx root root 1970-01-10 18:59 fsc -> /dev/block/mmcblk0p15
lrwxrwxrwx root root 1970-01-10 18:59 fsg -> /dev/block/mmcblk0p14
lrwxrwxrwx root root 1970-01-10 18:59 grow -> /dev/block/mmcblk0p40
lrwxrwxrwx root root 1970-01-10 18:59 keystore -> /dev/block/mmcblk0p17
lrwxrwxrwx root root 1970-01-10 18:59 laf -> /dev/block/mmcblk0p32
lrwxrwxrwx root root 1970-01-10 18:59 misc -> /dev/block/mmcblk0p30
lrwxrwxrwx root root 1970-01-10 18:59 modem -> /dev/block/mmcblk0p1
lrwxrwxrwx root root 1970-01-10 18:59 modemst1 -> /dev/block/mmcblk0p10
lrwxrwxrwx root root 1970-01-10 18:59 modemst2 -> /dev/block/mmcblk0p11
lrwxrwxrwx root root 1970-01-10 18:59 mpt -> /dev/block/mmcblk0p36
lrwxrwxrwx root root 1970-01-10 18:59 persist -> /dev/block/mmcblk0p31
lrwxrwxrwx root root 1970-01-10 18:59 raw_resources -> /dev/block/mmcblk0p26
lrwxrwxrwx root root 1970-01-10 18:59 raw_resourcesbak -> /dev/block/mmcblk0p27
lrwxrwxrwx root root 1970-01-10 18:59 rct -> /dev/block/mmcblk0p24
lrwxrwxrwx root root 1970-01-10 18:59 recovery -> /dev/block/mmcblk0p34
lrwxrwxrwx root root 1970-01-10 18:59 rpm -> /dev/block/mmcblk0p4
lrwxrwxrwx root root 1970-01-10 18:59 rpmbak -> /dev/block/mmcblk0p8
lrwxrwxrwx root root 1970-01-10 18:59 sbl1 -> /dev/block/mmcblk0p2
lrwxrwxrwx root root 1970-01-10 18:59 sbl1bak -> /dev/block/mmcblk0p6
lrwxrwxrwx root root 1970-01-10 18:59 sec -> /dev/block/mmcblk0p16
lrwxrwxrwx root root 1970-01-10 18:59 sns -> /dev/block/mmcblk0p29
lrwxrwxrwx root root 1970-01-10 18:59 spare1 -> /dev/block/mmcblk0p22
lrwxrwxrwx root root 1970-01-10 18:59 spare2 -> /dev/block/mmcblk0p25
lrwxrwxrwx root root 1970-01-10 18:59 ssd -> /dev/block/mmcblk0p12
lrwxrwxrwx root root 1970-01-10 18:59 system -> /dev/block/mmcblk0p37
lrwxrwxrwx root root 1970-01-10 18:59 tz -> /dev/block/mmcblk0p3
lrwxrwxrwx root root 1970-01-10 18:59 tzbak -> /dev/block/mmcblk0p7
lrwxrwxrwx root root 1970-01-10 18:59 userdata -> /dev/block/mmcblk0p39
As you can see, "/dev/block/mmcblk0p37" is the block device for the system partition. From there you simply duplicate the data into a raw image by doing
Code:
dd if=/dev/block/mmcblk0p37 bs=2048 of=/storage/external_SD/system.img
To elaborate on what the command does, the input file is the system block mmcblk0p37 and the output file is created as "system.img" on the external sd card. From the man page, "bs=BYTES read and write up to BYTES bytes at a time." So it just means that the dd operation can read and write up to 2048 bytes at a time.
This process was simply repeated using a stock k330, rooted k330, stock ms330, and rooted ms330. After all the raw images were created I systematically flashed them to my personal phone using the instructions verbatim from my op to ensure that they indeed work.
I hope explaining my process sheds further light on the matter. If you want to investigate further on your own you can mount the raw image in linux. Assuming that the system.img file is in your home directory and you have the directory /mnt/tmp , simply run as root
Code:
mount -o ro ~/system.img /mnt/tmp
and you will then be able to see the contents of the image (build prop, preinstalled apps, and the like) in the /mnt/tmp folder.
If you have any further comments or questions I will happily oblige.
The whole point of my effort was to aid people in rooting there phones while mitigating the risk of bricking. I want to make the process as bullet proof as possible so all feedback is welcome. This includes testimonials from those whom this process worked. I guess the next step would be to post the TWRP backup zips to further automate of the process.
unbrick method
@azureee, I am so happy to hear that you found a solution to your problem. Thank you for sharing that link as well. I am sure it will help many people here. If you need any further explanation on installing xposed I would be happy to help.
Please update this forum to have lg-k7 tag and to have newest twrp with button combo. That way this will be on the LG K7 forum and have best TWRP. Also "fastboot boot" is only way it works, flashing will get overwritten by system. And then when you want to get to recovery it will factory reset phone. You can flash after you root.
Billybobjoe13245 said:
Please update this forum to have lg-k7 tag and to have newest twrp with button combo. That way this will be on the LG K7 forum and have best TWRP. Also "fastboot boot" is only way it works, flashing will get overwritten by system. And then when you want to get to recovery it will factory reset phone. You can flash after you root.
Click to expand...
Click to collapse
Thank you for the heads up about TWRP. I keep trying to add that tag, but it refuses to stick.
Edit: I had to delete the tag that wasn't showing up and readd it.
ledzepman71 said:
I updated the op to use an easier more standard way with TWRP.
Click to expand...
Click to collapse
Hi, thank you for the tutorial.
I do have a noob question: After unlocking the bootloader, flashing twrp and flashing supersu from within twrp will the phone be rooted? No need to install Kingroot or similar?
Thanks!
101...
saphta said:
Hi, thank you for the tutorial.
noob question: After unlocking the bootloader, flashing twrp and flashing supersu from within twrp will the phone be rooted?
Click to expand...
Click to collapse
Just go to the Play Store and download a "Root Checker" to get your answer...
Time To Learn How To Run With The *Big Dogs* if you are going to Root..
RaiderWill said:
Just go to the Play Store and download a "Root Checker" to get your answer...
Time To Learn How To Run With The *Big Dogs* if you are going to Root..
Click to expand...
Click to collapse
Thanks! I'll do that!
Yesterday I flashed BitO-KU kernel with dtb and blob file provided in this thread https://forum.xda-developers.com/sh.../tweaked-kernel-nvidia-shield-tablet-t3069776 on my Shield Tablet K1. Since then the problem started and my tab didn't boot.
How problem started?
Flashed BitO-KU kernel https://forum.xda-developers.com/sh.../tweaked-kernel-nvidia-shield-tablet-t3069776
Reboot (working fine)
Flashed dtb file "tegra124-tn8-p1761-1270-a04-e-battery.dtb" (provided in same thread)
Reboot (stuck on bootloader)
Flashed blob file (provided in same thread)
Reboot (stuck on bootloader)
After that I flashed factory images provided on Nvidia official site for K1 Tablet but still not booting. Although many times I have successfully flashed firmware images before, but only this time it's not booting. I think that the dtb and blob files I flashed previously with BitO-KU kernel were for Original Shield Tablet not for K1, that's why my tablet bricked.
What's working and what's not:
Bootloader is working and able to flash files using fastboot. But it's niether showing any error nor booting after flashing firmware images.
Recovery Not Working. Flashed various versions of TWRP from official website, none of them is working. Even tried directly booting to twrp recovery instead of flashing, still not working.
Any help is appreciated.
Sorry for my bad English!
Did you flash the stock system file and the stock blob? I think the instructions (recovery image) say to flash a few other things (recovery, userdata) but I was able to just flash the system and blob (flashing stock recovery might not hurt either).
Also, please don't apologize for your bad English. Your post is very well written, and I never would have guessed you are not a native English speaker.
redpoint73 said:
Did you flash the stock system file and the stock blob? I think the instructions (recovery image) say to flash a few other things (recovery, userdata) but I was able to just flash the system and blob (flashing stock recovery might not hurt either).
Also, please don't apologize for your bad English. Your post is very well written, and I never would have guessed you are not a native English speaker.
Click to expand...
Click to collapse
Hi @redpoint73, thanks for your response. Yes I did flash the stock system file, stock blob file and stock boot file. Still it wasn't booting.
And thanks for your compliment about my English.
Hello,
I was in a similar situation but finally managed to fix this boot issue on my K1.
What I have, Nvidia Shield Tablet K1
What I did wrong, flashed via fastboot a stock ROM image from Nvidia GameWorks - SHIELD Open Source Resources and Drivers
But not the correct one for Shield K1
I had the following steps for this recovery ROM (not for K1 tablet...):
fastboot flash recovery recovery.img
fastboot flash boot boot.img
fastboot flash system system.img
fastboot flash userdata userdata.img
fastboot flash dtb tegra124-tn8-p1761-1270-a04-e-battery.dtb
fastboot reboot
Flashing them failed on userdata (not enough space) and results in K1 to be stuck on boot and the Nvidia logo for ages.
(For a K1 tablet, you don't have a userdata and dtb flash image steps). I think what messed up my K1 is the dtb flashing step because formating, erasing and flashing recovery, boot, system and userdata partitions didn't have any effects on being stuck at boot.
What I did to get out of this mess and what you need:
Stock ROM K1: nv-recovery-image-shield-tablet-k1-factory0_0_0
fastboot + adb
twrp for K1 for revovery partitions
And know your K1 partitions
Via adb shell:
cd /etc
cat recovery.fstab
shieldtablet:/etc # cd /etc
shieldtablet:/etc # cat recovery.fstab
Result:
/dev/block/platform/sdhci-tegra.3/by-name/APP /system ext4 ro wait
/dev/block/platform/sdhci-tegra.3/by-name/CAC /cache ext4 noatime,nosuid,nodev,data=writeback,nodelalloc wait,formatable
/dev/block/platform/sdhci-tegra.3/by-name/LNX /boot emmc defaults defaults
/dev/block/platform/sdhci-tegra.3/by-name/MSC /misc emmc defaults defaults
/dev/block/platform/sdhci-tegra.3/by-name/UDA /data ext4 noatime,nosuid,nodev,data=writeback,noauto_da_alloc wait,check,formatable,encryptable=/dev/block/platform/sdhci-tegra.3/by-name/MDA
/dev/block/platform/sdhci-tegra.3/by-name/RP3 /usercalib ext4 noatime,data=writeback wait,formatable
/dev/block/platform/sdhci-tegra.3/by-name/USP /staging emmc defaults defaults
/dev/block/platform/sdhci-tegra.3/by-name/MDA /metadata emmc defaults defaults
/dev/block/platform/sdhci-tegra.3/by-name/SOS /recovery emmc defaults defaults
/devices/platform/sdhci-tegra.2/mmc_host* auto vfat defaults voldmanaged=sdcard1:auto,encryptable=userdata
/devices/tegra-ehci.0/usb* auto vfat defaults voldmanaged=usb:auto
/dev/block/platform/sdhci-tegra.2/by-num/p1 /sdcard vfat defaults recoveryonly
Via adb shell:
cd dev/block/platform/sdhci-tegra.3/by-name/
ls -al
Resust:
shieldtablet:/dev/block/platform/sdhci-tegra.3/by-name # ls -al
total 0
__bionic_open_tzdata: couldn't find any tzdata when looking for GMT!
drwxr-xr-x 2 root root 520 2019-11-19 08:27 .
drwxr-xr-x 4 root root 600 2019-11-19 08:27 ..
lrwxrwxrwx 1 root root 21 2019-11-19 08:27 APP -> /dev/block/mmcblk0p13
lrwxrwxrwx 1 root root 21 2019-11-19 08:27 CAC -> /dev/block/mmcblk0p14
lrwxrwxrwx 1 root root 21 2019-11-19 08:27 CHG -> /dev/block/mmcblk0p20
lrwxrwxrwx 1 root root 21 2019-11-19 08:27 DTB -> /dev/block/mmcblk0p11
lrwxrwxrwx 1 root root 20 2019-11-19 08:27 EKS -> /dev/block/mmcblk0p2
lrwxrwxrwx 1 root root 20 2019-11-19 08:27 FB -> /dev/block/mmcblk0p3
lrwxrwxrwx 1 root root 21 2019-11-19 08:27 FBP -> /dev/block/mmcblk0p21
lrwxrwxrwx 1 root root 21 2019-11-19 08:27 FCG -> /dev/block/mmcblk0p22
lrwxrwxrwx 1 root root 21 2019-11-19 08:27 FCT -> /dev/block/mmcblk0p18
lrwxrwxrwx 1 root root 21 2019-11-19 08:27 GPT -> /dev/block/mmcblk0p24
lrwxrwxrwx 1 root root 21 2019-11-19 08:27 LBP -> /dev/block/mmcblk0p19
lrwxrwxrwx 1 root root 21 2019-11-19 08:27 LNX -> /dev/block/mmcblk0p12
lrwxrwxrwx 1 root root 21 2019-11-19 08:27 MDA -> /dev/block/mmcblk0p17
lrwxrwxrwx 1 root root 21 2019-11-19 08:27 MSC -> /dev/block/mmcblk0p15
lrwxrwxrwx 1 root root 20 2019-11-19 08:27 NCT -> /dev/block/mmcblk0p4
lrwxrwxrwx 1 root root 20 2019-11-19 08:27 RP1 -> /dev/block/mmcblk0p6
lrwxrwxrwx 1 root root 20 2019-11-19 08:27 RP2 -> /dev/block/mmcblk0p7
lrwxrwxrwx 1 root root 20 2019-11-19 08:27 RP3 -> /dev/block/mmcblk0p8
lrwxrwxrwx 1 root root 20 2019-11-19 08:27 RP4 -> /dev/block/mmcblk0p9
lrwxrwxrwx 1 root root 21 2019-11-19 08:27 SOS -> /dev/block/mmcblk0p10
lrwxrwxrwx 1 root root 20 2019-11-19 08:27 TOS -> /dev/block/mmcblk0p1
lrwxrwxrwx 1 root root 21 2019-11-19 08:27 UDA -> /dev/block/mmcblk0p23
lrwxrwxrwx 1 root root 21 2019-11-19 08:27 USP -> /dev/block/mmcblk0p16
lrwxrwxrwx 1 root root 20 2019-11-19 08:27 WB0 -> /dev/block/mmcblk0p5
MAP boot, system, blob (staging) partitions with corresponding memory block
Ex: boot -> LNX -> /dev/block/mmcblk0p12
Via adb shell and using the images from K1 ROM nv-recovery-image-shield-tablet-k1-factory0_0_0 (check if your tablet k1 has the same partitions)
dd if=boot.img of=/dev/block/mmcblk0p12
dd if=system.img of=/dev/block/mmcblk0p13
dd if=blob of=/dev/block/mmcblk0p16
By getting from another ROM: tegra124-tn8-p1761-1270-a04-e-battery.dtb (renamed tegra124.dtb)
dd if=tegra124.dtb of=/dev/block/mmcblk0p11
Still failing... and stuck at boot so I decided to restore nv-recovery-image-shield-tablet-k1-factory0_0_0 via fastboot a last time but cleaned everything first:
twrp wipe all system cache data
then
fastboot flash system
fastboot erase boot
fastboot flash boot
fastboot erase staging
fastboot flash staging blob
fastboot reboot
And my Shield Tablet K1 was working again!! And very happy to have my Nvidia Shield K1 back (with latest LineageOS 15.1 ROM and working like a charm)!
I did a lot of stock ROM erase / format / restore on these partitions before and they all failed before. But I thing here the main difference is around the DTB partition.
May be the dd if=tegra124.dtb of=/dev/block/mmcblk0p11 step did properly restore the dtb info and partition or actually "corrupt" it in a way that cause the K1 to properly boot back. I don't know.
Hope that can help someone in the same situation!