[Q] How does Odin work? - Fascinate Q&A, Help & Troubleshooting

Hi! First post. I'm a 33-year-old kid and my old fascinate is my playground. There is nothing in particular that I want to do. I have a background in programming and linux, but I'm new to android internals. I want to know everything. But lest I overwhelm you, I'll just start with Odin.
So I dove into many articles and read a lot of things and experimented with various things. I have several different versions of Odin on my computer and successfully used it to flash CWM and install some zips to root my device and used adb shell to su and poke around. That was fun. But before I make significant changes, I started experimenting with backups. I got a nandroid backup via CWM and then used a slick little article to create my own Odin-compatible (I hope) backup of 6 different partitions/devs. Here's my notes below:
dd if=/dev/block/stl9 of=/sdcard/factoryfs.rfs bs=4096 (ROM:/system)
dd if=/dev/block/bml7 of=/sdcard/zImage bs=4096 (Kernel)
dd if=/dev/block/bml8 of=/sdcard/recovery.bin bs=4096 (Recovery)
dd if=/dev/block/stl11 of=/sdcard/cache.rfs bs=4096 (Cache:/cache)
dd if=/dev/block/stl10 of=/sdcard/dbdata.rfs bs=4096 (DBData:/dbdata)
dd if=/dev/block/mmcblk0p1 of=/sdcard/movinand.bin bs=4096 (Data:/data)
The article just basically had me tar them all together and generate an MD5 to append to the file. But another article had a tutorial that warned against flashing more than one file at once. So that makes me aware of just how little I know about Odin. So here's some more specific questions to get me started:
1) How does Odin know if something is meant for recovery vs system? Are the file names within the tarball special?
2) How does Odin know how to flash the recovery space, for example? Is it partition or /dev/block/<device> aware or is it abstracted via some sort of android API?
3) While we're at it, what protocol does Odin or the Samsung drivers use to communicate with the android device? Is it documented?
4) Is there a commandline equivalent to Odin that uses this protocol or drivers?
5) Is there a problem with flashing more than one file at once?
6) Is there a way to backup the boot section or radios or whatever else that I might flash? There's a LOT of devices under /dev/block, and I don't know what they mean.
So please, give me your best stabs at the above questions and anything else you know. Again, I want to know everything.

My best advice for you is to find the Heimdall thread and read it. Heimdall is an open-source alternative to Odin, created by an XDA user. Odin's code is proprietary, and the program was not originally intended for use outside of Samsung. Because it is leaked software, there is no support or manual for it's use from Samsung, and how it works is a company secret. I suspect it was intentionally leaked to stimulate development without assuming liability for it's use. Since there is an opensource alternative (and because I don't use windows), I have steered clear of using such a powerful program of questionable origin, and was an early adapter of command-line Heimdall (first to use it on the Fascinate...)

Andive said:
Hi! First post. I'm a 33-year-old kid and my old fascinate is my playground. There is nothing in particular that I want to do. I have a background in programming and linux, but I'm new to android internals. I want to know everything. But lest I overwhelm you, I'll just start with Odin.
So I dove into many articles and read a lot of things and experimented with various things. I have several different versions of Odin on my computer and successfully used it to flash CWM and install some zips to root my device and used adb shell to su and poke around. That was fun. But before I make significant changes, I started experimenting with backups. I got a nandroid backup via CWM and then used a slick little article to create my own Odin-compatible (I hope) backup of 6 different partitions/devs. Here's my notes below:
dd if=/dev/block/stl9 of=/sdcard/factoryfs.rfs bs=4096 (ROM:/system)
dd if=/dev/block/bml7 of=/sdcard/zImage bs=4096 (Kernel)
dd if=/dev/block/bml8 of=/sdcard/recovery.bin bs=4096 (Recovery)
dd if=/dev/block/stl11 of=/sdcard/cache.rfs bs=4096 (Cache:/cache)
dd if=/dev/block/stl10 of=/sdcard/dbdata.rfs bs=4096 (DBData:/dbdata)
dd if=/dev/block/mmcblk0p1 of=/sdcard/movinand.bin bs=4096 (Data:/data)
The article just basically had me tar them all together and generate an MD5 to append to the file. But another article had a tutorial that warned against flashing more than one file at once. So that makes me aware of just how little I know about Odin. So here's some more specific questions to get me started:
1) How does Odin know if something is meant for recovery vs system? Are the file names within the tarball special?
2) How does Odin know how to flash the recovery space, for example? Is it partition or /dev/block/<device> aware or is it abstracted via some sort of android API?
3) While we're at it, what protocol does Odin or the Samsung drivers use to communicate with the android device? Is it documented?
4) Is there a commandline equivalent to Odin that uses this protocol or drivers?
5) Is there a problem with flashing more than one file at once?
6) Is there a way to backup the boot section or radios or whatever else that I might flash? There's a LOT of devices under /dev/block, and I don't know what they mean.
So please, give me your best stabs at the above questions and anything else you know. Again, I want to know everything.
Click to expand...
Click to collapse
So helpful I may toy with my fassy I really needed to know where movinand.bin goes now we linux users can flash it since heimdall doesnt and we need it or recovery acts strange and so will the device

Related

Can i flash a modem with CMW recovery or app?

Hello all,
Basically i want to know if there is anyway to flash a modem besides to odin, like from within the phone and no need for computer connection.
Thanks
dd from a terminal session.
Code:
su
dd if=/sdcard/modem.bin of=/dev/block/mmcblk0p8 bs=4096
reboot
Did it that way myself already, worked fine.
Thanks for you reply! Will definately try that once i figure out what does "dd from a terminal session" mean exaclty, sorry I am a noob lol
It means:
Download a "Terminal" App from the Market (that App gives you kind of a console screen where you can enter commands) and type what I posted above into it.
But make sure you actually copy the modem software you want to flash to /sdcard/modem.bin first.
You are my hero.

[Q] [BACKUP] How to fully backup a 1&1 branded I9100 (Guarantee?)

Hi xda,
i bought myself a I9100 with the following Specs:
Android-Version: 2.3.5
PDA: I9100BHKJ1
Phone: I9100XXKI4
CSC: I9100 XEGKJ1
Baseband: I9100XXKI4
Kernel-Version: 2.6.35.7-I9100BHKJ1-CL630390 [email protected] #2
Buildnumber: GINGERBREAD.BHKJ1
PCode: GT-I9100LKAXEG
It has a branding from the German Provider 1&1
I am interested in doing a Backup (nandroid, EFS, Kernel) of my Phone whenever i experience Problems with the Software. Additionally i am (of course) interested in trying new roms or get the soon to come ICS early.
My Problem is, that i cant do that because i have no Download-Source for that Rom to get my Phone back to stock.
So i think the only way would be to Backup the existing Software on the Phone. What would be the right way to do it? I cant flash a rooted Kernel because i will lose my original one. I cant put CWM/Titanium on the Phone without root. And how would i deinstall CWM?
Is there maybe a possibility to use the Guarantee from Samsung directly, when i use another stock Rom?
Help would be highly appreciated.
btw: Merry Christmas and thanks for any Answers
There's a few ways of achieving what you want, but none are guaranteed to keep your warranty, as it's obviously done at your own risk.
You could achieve temp root by using the zergRush exploit. From there you could dump the current kernel, then either flash a kernel which comes with CWM recovery and do a nandroid backup, or dump the whole filesystem without changing kernel at all.
If you're comfortable with adb, see http://forum.xda-developers.com/showthread.php?p=15670403#post15670403 (ignore the part about flashing an insecure kernel, as zergRush should make that part unnecessary).
Thank you for the advice. I think that is what i need to do.
I have to add one more thing (no im not the Ghost of Steve Jobs ). I dont have experience on adb-Shell or Linux in General.
But i would like to try that with your help.
If i did understand it right the way could be:
get root on my stock Kernel with Zergrush
[
How do i get into the Shell?]
Dump all images [Are the command in the mentioned Thread correct? My SGS2 has no SD-Card inside, will that be a problem?]
Alternatively Dump the Kernel only
Install rooted CWM'ed Kernel [How?]
Use Nandroid/Titanium/EFS-Backup
How will i bring all the Images back to the Phone when needed? Respectively the Kernel Only if i used CWM for Backup?
Maybe there exists a detailed howto, because i dont have the maybe needed experience?
I think getting Root with Doomlord/Zergrush is no problem.
When i got root, where exactly i paste the commands shown here (http://forum.xda-developers.com/showthread.php?p=15670403#post15670403)
When i dump the Kernel it will be a rooted dump and i will have to unroot it after putting it back?
How exactly will i have to do the "putting it back" when i need to?
I did not find a Guide (for Noobs like me) or maybe a Tool like HC-kTool (but its for EFS only), that could make things easy. If someone could explain some of these things to me i am willing to learn
How to backup your Phone without Flashing anything by using the Zergrush Exploit
(Now with temp-root method, look at the Bottom)
high chance backups might not work, because the sources are mounted in this guide, doing this i a unmounted state (recovery console from cwm) should work
You need:
Android SDK (to get adb.exe)
Zergrush Doomlord V3 ROOT (Android 2.2 and 2.3)
Zergrush Doomlord V1 UNROOT
Installed Drivers for your Phone
Have all Programs deactivated that use your Device (like Kies)
Your brain, because you do this at your own Risk.
BACKUP your Phone (tested on I9100)
1
Root your Device with Doomlord V3 ROOT following all his hints
http://forum.xda-developers.com/showthread.php?t=1312859
2
Start your command prompt (cmd) and use cd.., dir and cd [Folder] to move to your Folder with adb.exe
type
adb shell [Enter]
su [Enter]
3
Dump the Partitions following all hints from HellcatDroid:
http://forum.xda-developers.com/showthread.php?p=15670403#post15670403
Code:
dd if=/dev/block/mmcblk0p1 of=/sdcard/p1-EFS.img bs=4096
dd if=/dev/block/mmcblk0p4 of=/sdcard/p4-PARAM.img bs=4096
dd if=/dev/block/mmcblk0p5 of=/sdcard/p5-KERNEL.img bs=4096
dd if=/dev/block/mmcblk0p8 of=/sdcard/p8-MODEM.img bs=4096
dd if=/dev/block/mmcblk0p9 of=/sdcard/p9-FACTORYFS.img bs=4096
dd if=/dev/block/mmcblk0p12 of=/sdcard/p12-HIDDEN.img bs=4096
You can exit the su and the adb shell with "exit".
Hint: p9 and p12 are big, the Copying did run 70 Seconds for me
4
Unroot your Device again with Doomlord V1 UNROOT following all his Hints
http://forum.xda-developers.com/showthread.php?t=1321582
When everything is done you can deactivate the USB debugging-Mode and copy the Backups from your internal SD-Card to any safe Positions.
Put back your Backups [untested]
1
Have a rooted Kernel / Flash a rooted Kernel / Root with Doomlord V3 ROOT
put the Images back directly onto the Phone
2
Start your command prompt and use cd.., dir and cd [Folder] to move to your Folder with adb.exe
type
adb shell [Enter]
su [Enter]
3
(Information taken from HellcatDroids posts
http://forum.xda-developers.com/showpost.php?p=16052607&postcount=61 and
http://forum.xda-developers.com/showthread.php?p=15670403#post15670403 )
Code:
dd if=/sdcard/p1-EFS.img of=/dev/block/mmcblk0p1 bs=4096
dd if=/sdcard/p4-PARAM.img of=/dev/block/mmcblk0p4 bs=4096
dd if=/sdcard/p5-KERNEL.img of=/dev/block/mmcblk0p5 bs=4096
dd if=/sdcard/p8-MODEM.img of=/dev/block/mmcblk0p8 bs=4096
dd if=/sdcard/p9-FACTORYFS.img of=/dev/block/mmcblk0p9 bs=4096
dd if=/sdcard/p12-HIDDEN.img of=/dev/block/mmcblk0p12 bs=4096
4
Unroot your Device again with Doomlord V1 Unroot following all Hints there
http://forum.xda-developers.com/showthread.php?t=1321582
Credits to: HellcatDroid, Revolutionary for the Zerglings, oinkylicious, DooMLoRD, paxChristos, MistahBungle (for the extra Motivation )
I think it would help everyone if you could make a full backup of your very own device instead of having to download a Rom and Kernel that hopefully fits your device. With this method we leave minimal traces
Without Doomlord (no su etc needed)
I tested the Tip from oinkylicious. It worked!
You dont need Doomlord ROOT and UNROOT for this Procedure (but its the best for permanently rooting your Kernel)
At the Points in my Guide where i use Doomlord, you can use the Zergrush-Method directly. And you dont need the unrooting-step (tested with titanium backup). In addition you dont need the su-command from step 2.
Follow the points here (thanks to paxChristos):
1) Put a fresh (just formatted with no data on it) SD Card into your phone (this helps with some roots, not all, but better safe than sorry)
2) On your phone, goto settings -> applications -> development and check "USB debugging"
3) Plug your phone into your computer
4) Download zergRush
5) unzip zergRush
6) navigate to android sdk (varies from computer to computer, my (win7) install location was c:\Android-SDK-x86 (or something like that)
7) (If you've already downloaded all the sdk tools, you don't need this one) Download and install any missing sdk tools (i.e. adb) (i just selected most of the and let my computer sit overnight to install everything)
8) run command prompt (in windows 7, press windows flag + r to open up the run command, then type cmd, hit enter)
9) Navigate to the "platform-tools" folder inside of your android-sdk folder
10) type in "adb push C:\[location of zergRush]\zergRush /data/local"
11) type in "adb shell"
12) type in chmod 755 /data/local/zergRush
13) type in "/data/local/zergRush"
14) Good luck, it works on some phones, but not others!
Gänsebraten...
I've been watching this thread develop over the past day or so & just wanted to quickly say I reckon you've done a fantastic job with these instructions mate
I know you'll say you had a lot of help (which you did), but initially, you asked the "right" questions (You knew where you wanted to go, but you didn't quite know how to get there, if you know what I mean ?), you persevered and in the space of one day, you've come up with a really useful reference for anyone who wants to backup their phone purely by using Zegrush.
Well done mate. Fantastic job
Hi, thanks
Indeed i had much Help. I think putting some known Information together can bring a new Usefulness. (Just like how our Phones use some Sensors and some Code and some Internet and form something cool like Google Sky Map)
I'm a bit trained in findind Solutions in General due to my Education and Job, which helps a lot. And im reading and collecting Information and Software on the Topic since 2 days.
Currently im trying to find out how to put the Backup back and if it is enough to be prepared (asked HellcatDroid)
I think this could be the simplest way to backup your phone and be independant from Downloads or Tools (ofc. you need Root somehow)
I added a way to flash back the Images. But i gathered it from the Forum and did not test it myself. Anybody can confirm it? Maybe someone tested it?
gänsebraten said:
I think this could be the simplest way to backup your phone and be independant from Downloads or Tools (ofc. you need Root somehow)
Click to expand...
Click to collapse
I notice you went with a permanent root rather than temp root method, which means your backup will also be rooted and thus not stock. If you go for temp root instead (i.e. not pushing busybox, su, superuser) then the backup would be as close as you're likely to get to stock. In case you missed it, I specifically linked you to temp root (http://forum.xda-developers.com/showthread.php?t=1296916) rather than DoomMLoRD's perma-root script (http://forum.xda-developers.com/showthread.php?t=1321582)
thanks oinky, i did not get, that it was a temp root
What exactly makes it temp? Will it unroot when the Phone restarts?
I really missed that point Well i'll test that tomorrow.
Can you confirm my way of "using" the Backup? Will i have 100% of my old status back (except the rooting thing ofc.)? Can i start happy flashing now?
Sorry i have to ask again. Did someone already test flashing the Backups back?
I also would appreciate a confirmation that the restoration via this method works fine.
can anyone confirm this? probably mr. oinkylicious? you seem to me very sagacious.
added the direct use of zergrush in my Guide. now you'll leave even less traces (Although i found no traces with using Doomlord). The Zergrush-File we adb-pushed is gone, too
But one thing we dont know yet:
Will the backups work and be 100% sufficient when done correctly? I'm asking for someone who can confirm or has tested that
Additional Tips i found:
boomsh error at second zergrush:
http://eitwebguru.com/tag/cannot-copy-boomsh-permission-denied/
To fix this issue you have to delete two files i.e. /data/local/tmp/boomsh and /data/local/tmp/sh. Following are the commands to remove the files
E:\ADB\adb.exe shell
$ rm /data/local/tmp/boomsh
$ rm /data/local/tmp/sh
I did a compare (cmp imagefile and directory) and got several problems e.g. "differ byte 1036"
Also i found a thread where someone got Problems with dd
http://forum.xda-developers.com/showthread.php?t=1149714
might be unsafe
gänsebraten said:
Additional Tips i found:
boomsh error at second zergrush:
http://eitwebguru.com/tag/cannot-copy-boomsh-permission-denied/
To fix this issue you have to delete two files i.e. /data/local/tmp/boomsh and /data/local/tmp/sh. Following are the commands to remove the files
E:\ADB\adb.exe shell
$ rm /data/local/tmp/boomsh
$ rm /data/local/tmp/sh
I did a compare (cmp imagefile and directory) and got several problems e.g. "differ byte 1036"
Also i found a thread where someone got Problems with dd
http://forum.xda-developers.com/showthread.php?t=1149714
might be unsafe
Click to expand...
Click to collapse
oh no, this would be such a nice method
gänsebraten said:
thanks oinky, i did not get, that it was a temp root
What exactly makes it temp? Will it unroot when the Phone restarts?
I really missed that point Well i'll test that tomorrow.
Can you confirm my way of "using" the Backup? Will i have 100% of my old status back (except the rooting thing ofc.)? Can i start happy flashing now?
Click to expand...
Click to collapse
Well as for the guarantee I have bad news for you.
The bad news is that your current backup is useless, if you did a permanent root, not a temporary root, which means that the backup is rooted and therefore not stock.
In that case unroot and make another one.
Besides that I'm curious...
I got my phone from o2 Germany and already had it replaced twice AFTER flashing it.
Does 1&1 have a special branding? What sort of branding do you have? o2 had none and therefore I just flashed a ROM from Intratech's thread before returning it and reset the custom binary counter.
Sent from my GT-I9100 using XDA App
hi sniperfan,
my backup is not useless, just look at my guide where the unroot is implemented. I have now a temp-rooted backup, too.
The Branding is a modified starting-screen, some apps (mail etc.), an own market, starting page in browser.
In Addition i do not find any ROMS/Kernels to download (look at my post 1). There must be a way how the branded ones were created. I would love to see the List to be completed.
gänsebraten said:
There must be a way how the branded ones were created.
Click to expand...
Click to collapse
Thats the point gänsebraten!
how are the branded ROMs being created? there must be a way to produce them!
how it is achieved and how can we do it?
Yay, lot's of good info in this thread already
Yeah, doing "raw dumps" via "dd" of all(!) partitions is the perfect thing to do, I did that myself before I flashed anything (except the kernel, but for my initial ROM the kernel was available for download).
So you should end up with a bunch of dd images, the ones you really need are:
- mmcblk0p1 => EFS
- mmcblk0p4 => param.lfs (contains the bootscreen and some tiny other bits)
- mmcblk0p5 => kernel
- mmcblk0p8 => modem FW
- mmcblk0p9 => system
- mmcblk0p10 => userdata
Do *NOT* overwrite these onw when restoring:
- mmcplk0p2 and p3 => SBL, bootloaders, don't touch them, just leave them allone, this is the ONE way to really, unrecoverably BRICK the device, breaking these buddies.
What you "can" backup/restore, but don't really need to:
- mmcblk0p7 => cache
- mmcblk0p11 => "internal SD card"
- mmcblk0p12 => some preinstall stuff
To restore something / everything, just reverse the dd command, so if you used
Code:
dd if=/dev/block/mmcblk0p9 of=/sdcard/system.img bs=4096
to dump/backup a partition, use
Code:
dd if=/sdcard/system.img of=/dev/block/mmcblk0p9 bs=4096
to restore it.
Another note on that:
Once you dd'ed the kernel, you should really flash a CWM kernel and then do all the other dd's from recovery mode via ADB.
Reason being: dd'ing a mounted filesystem (i.e. while the system is running and accessing it) can (usually WILL) lead to an unclean/corrupted image that doesn't work properly anymore when restored.
gänsebraten said:
hi sniperfan,
my backup is not useless, just look at my guide where the unroot is implemented. I have now a temp-rooted backup, too.
The Branding is a modified starting-screen, some apps (mail etc.), an own market, starting page in browser.
In Addition i do not find any ROMS/Kernels to download (look at my post 1). There must be a way how the branded ones were created. I would love to see the List to be completed.
Click to expand...
Click to collapse
Sorry I got that wrong.
As for your question:
Here is one way. (Note: NOT for that galaxy s2 in this thread, so command may differ)
http://forum.xda-developers.com/showthread.php?t=1082288
I will test it tomorrow...eeehhhhhm....later. xD
They simply compose their own updates with added apps and "tweaked" configurations.
Sent from my GT-I9100 using XDA App

[Q] Best way to backup and restore on a number of devices

Hi
I've done a bit of searching but can't find anything too specific to what I'm trying to do. Basically we have 10 Android tablets, and I want to make them all standardised e.g. have the same Apps on, configured in the same way (e.g. enterprise wireless network added).
Now the thing is if anyone messes around with them I want a really easy way to restore them to the original config which I've done.
One way I thought was to configure one fully, install Titanium Backup on it, do a full backup of apps/system data etc, and put the backup onto an SD card. Then I already have the base ROM on an SD card so if theres any problems, I can just flash the ROM over it again, install TB, and restore all the data. Would this be suitable to do to duplicate the data onto 10 tablets, and also restore the data if required?
The other thing I looked into was customising a ROM myself, don't want to do anything too tricky it'll just be a case of removing all the preinstalled crap I don't want, preloading the Apps we do want, and if possible preloading the wireless key and getting rid of the first boot initial set up wizard.
PS I've looked at installing CWM and doing whole image backups, but supposedly the tablet isnt supported (its an Ainol Novo 7 Elf 2)
Any advice would be great, hopefully theres some fairly straight forward way of managing this
Thanks
One of the reasons I integrated a full blown GNU/Linux on my devices, was the need to run full and automated backups. If you are looking into the possibility making a custom ROM, this might be a solution for you as well. I'm using BackuPC to run backups nightly, backing them up as any other GNU/Linux machine (using tar over ssh).
See the link in my signature for more information about this.
kuisma said:
One of the reasons I integrated a full blown GNU/Linux on my devices, was the need to run full and automated backups. If you are looking into the possibility making a custom ROM, this might be a solution for you as well. I'm using BackuPC to run backups nightly, backing them up as any other GNU/Linux machine (using tar over ssh).
See the link in my signature for more information about this.
Click to expand...
Click to collapse
Hi
Thanks for the reply, not too sure this would be the right option for us. I don't really need to take nightly backups, I just need to make a backup of a preconfigured image, and then put that image onto 10 other devices. Then I want to keep the original backup and have an easy way to restore it onto any devices which have been messed up. Sort of like image cloning for PCs, I want to prepare a base image, and then flash it over all the devices.
fro5tie said:
Hi
Thanks for the reply, not too sure this would be the right option for us. I don't really need to take nightly backups, I just need to make a backup of a preconfigured image, and then put that image onto 10 other devices. Then I want to keep the original backup and have an easy way to restore it onto any devices which have been messed up. Sort of like image cloning for PCs, I want to prepare a base image, and then flash it over all the devices.
Click to expand...
Click to collapse
Ok, I see. Compile the image to you likings (boot image and system partition), and then flash it using fastboot onto you devices.
Hi
Does anyone have any more thoughts on this?
I have experimented with Titanium Backup and this seems to work quite well. I have installed a ROM, and customised it e.g. installed the apps I need and configured the apps, wireless settings and home screens etc. Then I do a full apps + system backup in TB to my SD card.
Then the plan is, I can reflash the ROM onto the other device, install TB and then restore this backup. This saves my user state and wireless settings etc.
Only problems is when I flash the ROM, I have to go through all the initial set up again and also remove some preinstalled apps which I dont want. Any ways around this?
There must be something I'm missing. Why don't you install the device, walk through the setup, remove the bloatware you don't want and then dumps the disk partitions into images you flash the other devices with using fastboot? This way you'll get'em cloned, isn't it this you want..?
Of course there's still some tinkering needed once restored/cloned, such as giving them individual Google accounts etc, but you can easily fix this without re-running the setup wizard.
kuisma said:
There must be something I'm missing. Why don't you install the device, walk through the setup, remove the bloatware you don't want and then dumps the disk partitions into images you flash the other devices with using fastboot? This way you'll get'em cloned, isn't it this you want..?
Of course there's still some tinkering needed once restored/cloned, such as giving them individual Google accounts etc, but you can easily fix this without re-running the setup wizard.
Click to expand...
Click to collapse
Hi
Yes that's what I want to do! How would I go about dumping the disk into an image and then flashing?
fro5tie said:
Hi
Yes that's what I want to do! How would I go about dumping the disk into an image and then flashing?
Click to expand...
Click to collapse
There are several methods. Some boot loaders (such as nvflash for tegra based devices) can actually read back the disk partitions to a computer via the USB port. You can also on the tablet read the raw mtd device with busybox/dd. I assume you've unlocked the bootloader and gain root access to the device, since this is a requirement for flashing them as well. A third alternative is using busybox/tar, and then recreate the filesystem image using mkyaffs (or if ext3/ext4 even easier, just loopback mount an image on you linux maching to unpack the tar archive to). Once you got the images (system and userdata partitions), you flash the devices with "fastboot flash system system.img" and "fastboot flash userdata data.img". I don't believe you'll need to tamper with the other partitions.
kuisma said:
There are several methods. Some boot loaders (such as nvflash for tegra based devices) can actually read back the disk partitions to a computer via the USB port. You can also on the tablet read the raw mtd device with busybox/dd. I assume you've unlocked the bootloader and gain root access to the device, since this is a requirement for flashing them as well. A third alternative is using busybox/tar, and then recreate the filesystem image using mkyaffs (or if ext3/ext4 even easier, just loopback mount an image on you linux maching to unpack the tar archive to). Once you got the images (system and userdata partitions), you flash the devices with "fastboot flash system system.img" and "fastboot flash userdata data.img". I don't believe you'll need to tamper with the other partitions.
Click to expand...
Click to collapse
Hi
Thanks for the quick reply, much appreciated.
Unfortunately you've lost me a bit here!
Yes the device is rooted, I dont have a linux machine though.
Any chance you'd be able to provide some more specific instructions? The device is a chinese tablet from manufacturer Ainol, the model is a Novo 7 Elf 2. Unfortunately there isn't much discussion on these online so specific help is hard to find!
fro5tie said:
Any chance you'd be able to provide some more specific instructions? The device is a chinese tablet from manufacturer Ainol, the model is a Novo 7 Elf 2. Unfortunately there isn't much discussion on these online so specific help is hard to find!
Click to expand...
Click to collapse
I can provide you specific answers to specific questions, but I have no experience of the tablet in question, so you'll have to do some digging yourself first. Make sure it supports fastboot, investigate what the proprietary bootloader is capable of, see how/if you can obtain an original image etc.
One maybe easier solution, especially if you plan to restore the tablets on a regular basis, is to only make a new boot image to reflash the devices with. The only modification done is that you change the /init.rc script to mount /data and /system from the SDcard instead of from the internal nand disk device.
Once this is done, you'll power up and run the installation wizard and everything on your master tablet. Then power it down, and clone the SDcard. This SDcard now contains everything, so you'll simply restore a device by replacing its SDcard with a copy of this master card. I guess it's easier to clone a SDcard than reflashing several internal partitions. Easier to make the master as well - you don't need to dd or tar them, they are already in "image" format. If you can get hold of the original firmware, this should be quite easy without the need to preserving data from the device itself.
fro5tie said:
Any chance you'd be able to provide some more specific instructions?
Click to expand...
Click to collapse
Issue the commands "cat /proc/mtd" and "mount" on your device at command prompt (e.g. via "adb shell" or the "ConnectBot" terminal app). This shows you if the device allows you to copy the boot image from it. Paste in the output into this thread. If you believe the "clone the tablet via the SDcard" is a good solution for you, the process is in short terms something as below;
Copy the boot image to the sdcard:
# dd if=/dev/mtd/mtd2ro of=/mnt/sdcard/boot.img bs=2048 (device dependent of contents of /proc/mtd)
Remove the sdcard, insert into a computer, split the boot image info kernel + initramfs. Read http://android-dls.com/wiki/index.php?title=HOWTO:_Unpack%2C_Edit%2C_and_Re-Pack_Boot_Images for instructions about how to work with the boot.img file. I really recommend a GNU/Linux environment for this.
Then edit /init.rc replacing the "mount yaffs2 [email protected] /system" with "mount ext3 /dev/block/mmcblk0p2 /system" for system and data (use p3 for data partition, the device name may be different on your tablet, see mount output).
Create an SDcard with three partitions: #1 vfat (standard), #2 and #3 ext3. Insert into you device and boot it up again.
# mount -t ext3 /dev/block/mmcblk0p2 /root
# cd /system
# tar cf - . | (cd /root ; tar xf - )
# umount /root
# mount -t ext3 /dev/block/mmcblk0p3 /root
# cd /data
# tar cf - . | (cd /root ; tar xf - )
# umount /root
This copies your partitions to the SDcard. Shutdown the tablet again.
Make a new boot.img using the instructions in the link above, using the edited init.rc script.
Now you can non-destrutive give this a try.
Place you tablet in fastboot mode (often vol-up (or vol-down) during power on).
$ fastboot devices
This vill verify the tablet is in fastboot mode. It should be listed. Then:
$ fastboot boot boot.img
Note here, only BOOT the tablet, do NOT use the "flash" keyword. This in case of the image isn't working, you'll just have to restart you tablet, and no harm's done.
Look around. Do a "mount" command. Everything works? Mount shows /data and /system from sdcard? Perfect. Now you can reflash it. Shutdown and flash:
$ fastboot flash boot boot.img
Now the device will use /data and /system from the SDcard every time. Customize your device, and then clone your SDcard and try it in tablet #2 you'll booting with your new boot.img and the cloned SDcard. Verify that #tablet #2 is a perfect clone of tablet #1. It is? Now you can flash the boot,img into all your tablets.
--------------------
But don't forget, there may be other solutions as well, maybe more suitable. This you'll have to investigate yourself.
And the usual disclaimer - you can probably not follow above by the letter. There sure is some obstacle you'll have to overcome, something non-standard, etc.
Also keep the original boot.img file for safekeeping in the case you want to restore the device's boot image some day.
Wow! Thanks for the info! This is really helpful, I need to set aside a bit of time to work through this and have a look. Thanks again its really appreciated, I'll be back with info once I've had chance to give it a go!
I certainly can't offer more detailed info than the fellow from Sweden who seems to really know his stuff...but what about making a nandroid backup of your fully configured reference tablet (I'm assuming all tablets are rooted). Ensure all your tabs have CWM recovery and copy your nandroid file to each one.
If any of your fleet get 'corrupted' you can simply restore the original, fully configured ROM.
In fact that sounds too obvious..likely I missed something about your scenario which precludes this option from consideration!
Good luck mate.
tweeny80 said:
I certainly can't offer more detailed info than the fellow from Sweden who seems to really know his stuff...but what about making a nandroid backup of your fully configured reference tablet (I'm assuming all tablets are rooted). Ensure all your tabs have CWM recovery and copy your nandroid file to each one.
If any of your fleet get 'corrupted' you can simply restore the original, fully configured ROM.
In fact that sounds too obvious..likely I missed something about your scenario which precludes this option from consideration!
Good luck mate.
Click to expand...
Click to collapse
Hi
Yes that was my first thought as well, tablets are rooted yes but there is no CWM for the tablet. Its an obscure Chinese branded tablet.
Unless there is another way to do nandroid backups?
hmm tricky situation. Catch 22 ! From what I know, your best bet is to backup all possible things through Titanium Backup given that you don't have the use of Nandroid backups. You can include wifi settings, messages etc but it's modular & not systemic.
I did a quick google search with no luck - time to upgrade your fleet dude :-0
Best of luck.

What variant is compatible with SCH-R530M (MetroPCS)?

SCH-R530M (the MetroPCS variant of SGS3) is not listed in "American or Canadian SGS3? Read this before posting!". Does anyone know which available section/variant should I use as a substitute for SCH-R530M? US Cellular (which is SCH-R530"U" instead of SCH-R530"M")? Verizon (SGH-I535)? Sprint (SPH-L710)?
People usually use the Verizon version (SGH-I535) to substitute for MetroPCS (SCH-530M), but then the model number of US Cellular (SCH-R530U) is much closer to MetroPCS (SCH-R530M). It seems logical to use SCH-530U files/tools for SCH-R530M, yet I have not seen anything that uses the SCH-R530U version to substitutes for SCH-R530M.
I want to apply CF-Auto-Root to root my SCH-530M with 4.1.2. Yet again, the MetroPCS variant is not listed at the website.
Wait... am I the only one in here who is with MetroPCS?!?
Re: What variant is compatible with SCH-530M (MetroPCS)?
Since you're in the i9300 section where the device more or less only shares the name it could be. Ask in either of the two forums, but here you're wrong.
Sent from my GT-I9300 using xda premium
https://www.google.co.uk/search?q=S...s=org.mozilla:en-US:official&client=firefox-a
First Post and Third post for starters .
jje
looks like
The Round Peg said:
Wait... am I the only one in here who is with MetroPCS?!?
Click to expand...
Click to collapse
I know what you feel, couse I feel the same way too some times you don't get that much answer about metro pcs. anyway I already root my sgs3 and flash it with CM10.1 Android 4.2.2. and the rom it has a little problems here and there before but now days the devlopers already fix almost every problems i had and runs awesome I love it now. any way just ask or post what you looking for and I hope you'll get what you looing for.
MikeEthio said:
I know what you feel, couse I feel the same way too some times you don't get that much answer about metro pcs. anyway I already root my sgs3 and flash it with CM10.1 Android 4.2.2. and the rom it has a little problems here and there before but now days the devlopers already fix almost every problems i had and runs awesome I love it now. any way just ask or post what you looking for and I hope you'll get what you looing for.
Click to expand...
Click to collapse
What did you use to root your GS3? I've been having some trouble rooting my phone after I did the OTA update from MetroPCS.
I used Odin CWMR
Heres what I did:
-Flashed TeamWin Recovery with Odin3
-Flashed Liquid Smooth v2.1 (d2mtr) thru Recovery.
Make sure that everything you use is for d2mtr.
On a side note, Do you guys think that the SCH-R530M will ever get its own thread like the other one have?
Metro PCS is a small carrier and people generally have the device from one of the bigger carriers as they are better supported then the small carrier like Metro.
The Round Peg said:
SCH-R530M (the MetroPCS variant of SGS3) is not listed in "American or Canadian SGS3? Read this before posting!". Does anyone know which available section/variant should I use as a substitute for SCH-R530M? US Cellular (which is SCH-R530"U" instead of SCH-R530"M")? Verizon (SGH-I535)? Sprint (SPH-L710)?
People usually use the Verizon version (SGH-I535) to substitute for MetroPCS (SCH-530M), but then the model number of US Cellular (SCH-R530U) is much closer to MetroPCS (SCH-R530M). It seems logical to use SCH-530U files/tools for SCH-R530M, yet I have not seen anything that uses the SCH-R530U version to substitutes for SCH-R530M.
I want to apply CF-Auto-Root to root my SCH-530M with 4.1.2. Yet again, the MetroPCS variant is not listed at the website.
Click to expand...
Click to collapse
Are you trying to root your phone or what you want to do if you trying to root your phone it's good doing it with Odin like old times but if you don't want that try oneclickroot.com I never used it also I don't know anybody who use it but I heard they has warranty.
Sent from my SCH-R530M using xda app-developers app
MikeEthio said:
Are you trying to root your phone or what you want to do if you trying to root your phone it's good doing it with Odin like old times but if you don't want that try oneclickroot.com I never used it also I don't know anybody who use it but I heard they has warranty.
Sent from my SCH-R530M using xda app-developers app
Click to expand...
Click to collapse
Hi,
I'm working at creating a solution for JTAG repair on the SGS III USC model and I'm in need of a SCH-R530M SBL dumps and a few other zones. I need a rooted user to simply perform the following command from a terminal on the phone, or while using ADB SHELL under the su user. Once at the command line issue this command, then simply upload the files which end up on your sdcard to me here. That's it!
Thanks in advance!
Code:
dd if=/dev/block/mmcblk0p2 of=/sdcard/sbl1 bs=4096
dd if=/dev/block/mmcblk0p3 of=/sdcard/sbl2 bs=4096
dd if=/dev/block/mmcblk0p4 of=/sdcard/sbl3 bs=4096
dd if=/dev/block/mmcblk0p5 of=/sdcard/aboot bs=4096
dd if=/dev/block/mmcblk0p6 of=/sdcard/rpm bs=4096
dd if=/dev/block/mmcblk0p7 of=/sdcard/boot bs=4096
dd if=/dev/block/mmcblk0p8 of=/sdcard/tz bs=4096
dd if=/dev/block/mmcblk0p9 of=/sdcard/pad bs=4096
dd if=/dev/block/mmcblk0p10 of=/sdcard/param bs=4096
dd if=/dev/block/mmcblk0p18 of=/sdcard/recovery bs=4096
tomy1986.nt said:
Hi,
I'm working at creating a solution for JTAG repair on the SGS III USC model and I'm in need of a SCH-R530M SBL dumps and a few other zones. I need a rooted user to simply perform the following command from a terminal on the phone, or while using ADB SHELL under the su user. Once at the command line issue this command, then simply upload the files which end up on your sdcard to me here. That's it!
Thanks in advance!
Code:
dd if=/dev/block/mmcblk0p2 of=/sdcard/sbl1 bs=4096
dd if=/dev/block/mmcblk0p3 of=/sdcard/sbl2 bs=4096
dd if=/dev/block/mmcblk0p4 of=/sdcard/sbl3 bs=4096
dd if=/dev/block/mmcblk0p5 of=/sdcard/aboot bs=4096
dd if=/dev/block/mmcblk0p6 of=/sdcard/rpm bs=4096
dd if=/dev/block/mmcblk0p7 of=/sdcard/boot bs=4096
dd if=/dev/block/mmcblk0p8 of=/sdcard/tz bs=4096
dd if=/dev/block/mmcblk0p9 of=/sdcard/pad bs=4096
dd if=/dev/block/mmcblk0p10 of=/sdcard/param bs=4096
dd if=/dev/block/mmcblk0p18 of=/sdcard/recovery bs=4096
Click to expand...
Click to collapse
Hi , it seems we are working on same solutions , could you share your dump ? I am have dead R530M board ;
reply
Don't know if this help. But I manage to flash i535 and i747 ROMs on my metro PCs SGS3 sch-r530m. The only thing was it wipe my imei and my data service. So I falsh back to Cm11 and my imei and data return.. So they are similar just don't know if the modem was not there to support it or the ROM didn't have it, or I could of did a patch flash to get it on there. Don't know but it did return once I flash to cm11 ROM

[GUIDE][Linux] Flashing Xiaomi .tgz

Hello everyone,
I recently had to flash a stock firmware file from Xiaomi (.tgz) and being primarily a Linux user I was quite disappointed by the fact that the company only provides a flashing tool for Windows.
Either way, I booted into Windows and flashed it. I had a look at the logs later and apparently their flash tool is just a front-end to fastboot, and looking at their firmware archives I noticed there were some .sh files in there, and guess what, they're scripts which do the exact same things their Windows scripts do! So I decided to try to use them to flash the firmware on Linux and, sure enough, after ~10 minutes the device was successfully flashed.
Here's what I did, as always I don't take responsibility for bricked devices, try this at your own risk:
1. unpack the archive
Code:
tar -xf <archive_name>.tgz
2. cd to the archive directory
3. grant run permissions
Code:
chmod +x flash_all.sh
(in my case I was interested in flash_all.sh, I think you can follow the exact same procedure with whichever script you want, though I haven't tested it)
4. get your device id
Code:
fastboot devices
you'll get something like this
Code:
List of devices attached
d82c2d3 fastboot
you're interested in the first column, so in my case d82c2d3
5. run the script
Code:
./flash_all -s <device_id>
at this point the flashing process should start and if everything went good your phone should reboot in a few minutes.
You might need to prepend the commands in point 4 and 5 with sudo.
Also, I don't know if every firmware archive has these .sh files, but it would seem logical. By the way, let me know if this is common knowledge and my googling just sucks as I couldn't find anything related to it...
Just tried it on my Mi 10 Pro and it doesnt work says device is locked just like it does if I try and flash using fastboot.
guglicap said:
Hello everyone,
I recently had to flash a stock firmware file from Xiaomi (.tgz) and being primarily a Linux user I was quite disappointed by the fact that the company only provides a flashing tool for Windows.
Click to expand...
Click to collapse
Thank you, it worked...

Categories

Resources