Wednesday, January 16, 2013

Super brick fix for Android phones


You are seeing the manual method for super brick fix but I am preparing very easy method to fix this if you are in hurry please write to me i will send you the simple procedure...,

I was on Offical leaked Taiwan version of ICS, then i decided to move to XXLPY version of ICS. I went to CMW to full wipe data, but for some reason, my note froze during wiping data...

I have waited long enough, but it was stuck. With no choice, I removed the battery then tried to boot, but it was stuck on the first screen.

From then on, I have tried to recover my note using various Offical ROMs, the taiwan leak, German leak and even old GB ROM, but I am stuck at Factoryfs...

I am pretty sure Ive tried everything, put PIT and not put PIT, Kernel, etc...

For some reason, Kernel can be installed just fine, but when it comes to ROMs, it stucks at this screen.

Please, any help is appreciated

There has been confirmation that In many cases it is the faulty system partitions (caused by the suspected ICS kernel or whatever reason). In that case relocating the corrupted partition to the good areas works. The first one who has applied the method successfully is "Drnull" for another similar device (epic4g).

So for those who would like to use this solution follow the guide below which I developed based on the hints from Drnull and a guide for another android device by Eldarerathis and Soundwire.
Credits and thanks to them.

Also Big thanks toPrabhu1980, Matiasg85, Uggies, Bodivas, As i9000, Alekhkhannaand others who have provided precious tools, troubleshoot solutions, advice and support for making this guide works.

As the method progress, thanks to member hg42 custom PIT files have been made that can help re-partition automatically. This will make it much easier for those who find adb things too much to handle. Follow the links one or two to get the PIT file and how to flash. The custom PIT should work in majority of cases that have partition problems. Still, in a number of cases when there are bad blocks inside the (original) internal sdcard area and/or cache partition, in which case you still need to follow the manual method below.

In fact the best way is to combine both manual and custom PIT method. Using manual way to diagnose which partition is faulty then choose the most suitable PIT file for that scenario (or you will know you need to do manual way if you identify there is fault block inside the internal sdcard and/or cache partition).

More notes for Manual method:
1. For those who can get SS guarantee service to fix it for free then you should go there asap, and do not need to try.
2. Requires some basic knowledge of MS-DOS and adb (just a few simple commands).
3. Partitions can be delete and recreate like in a computer hdd but requires more skills. So if you are not confident do not jumped into this method.
4. You should have had your back-up your data (music, books...) before, since this method will erase all the data in your sdcard.
5. And do not try to hold me responsible if you mess things up further than your current state in your phone.

1. The tools:
- Download the screen shot of the Note’s partitions for your reference information
- download and install the attached kernel.tar. This kernel has the partition tools and CWM with it.
- You should be able to have adb driver for Note and adb.exe in you computer. The easy way is to download Note usb driver from here, then download adb folder attached in the post. Install driver you have downloaded and extract adb folder to c: driver of your computer, you will have the tools folder which has adb.exe in it. You should now have adb working for your Note. (Alternatively, if you have installed Kies, then the usb driver should already installed. Then you just need to download the adb folder provided.)

2. Set up the tools:

- Use odin to flash attached kernel .tar file.
- Then restart the phone to recovery
- Then connect to computer using usb cable.

3. Then run cmd from your computer and cd (for those new to MS-DOS: this is change directory command under DOS. You just need to do a search on how to use cd command for DOS) to the folder that has adb.exe in your computer.
Then run,
adb devices

it should give you some number then it means your device is connect in adb
then code:
adb shell

it should give you the sign like this: ~ #
If it give you something else like $. Then that mean you do not have root access yet. In that case you need to figure out yourself how to install roots in the adb/cwm environment.

In case you have no problem with root:
Then run (noted that umount is without N):
~ # umount /cache
~ # umount /system
~ # umount /data

If one of those "umount /" commands return "invalid argument" just ignore it and continue with next steps.
This is to unmount cache, systemfs and datafs partitions.

Note: it is easier to copy and paste (right click mouse) the code to CMD windown to save time and avoid typing error.

Then run the parted.
~ # parted /dev/block/mmcblk0

if it ask you to fix something just choose yes. It should give you bellow:

parted /dev/block/mmcblk0
GNU Parted
Using /dev/block/mmcblk0
Welcome to GNU Parted! Type 'help' to view a list of commands.
Then run:
(parted) print

It will give you a picture of your Note’s partitions as in the screen shots I have attached. (text version is below):
Model: MMC VYL00M (sd/mmc)
Disk /dev/block/mmcblk0: 15.8GB
Sector size (logical/physical): 512B/512B
Partition Table: gpt

Number Start End Size File system Name Flags
1 4194kB 25.2MB 21.0MB ext4 EFS
2 25.2MB 26.5MB 1311kB SBL1
3 27.3MB 28.6MB 1311kB SBL2
4 29.4MB 37.7MB 8389kB PARAM
5 37.7MB 46.1MB 8389kB KERNEL
6 46.1MB 54.5MB 8389kB RECOVERY
7 54.5MB 264MB 210MB ext4 CACHE
8 264MB 281MB 16.8MB MODEM
9 281MB 1174MB 893MB ext4 FACTORYFS
10 1174MB 3322MB 2147MB ext4 DATAFS
11 3322MB 15.2GB 11.9GB fat32 UMS
12 15.2GB 15.8GB 537MB ext4 HIDDEN

4. Partition checks:

If you like to check if a partition has bad block or not you can use the tools that already come with the kernel. Use the code below.
For example: If you like to check partition 7, which is cache, then run:
~ # e2fsck -c /dev/block/mmcblk0p7
You can do the same with 9, 10.
(Note: e2fsck should be run after umount /cache and umount /system and umount /data)

For partition 11 you can check using parted (since e2fsck cannot handle fat32)
(parted) check 11
if it does not return any error the partition 11 is probably fine.

The scan can report bad blocks or can freeze when it encounter bad blocks.

In case you do not find any bad blocks in the above 4 partitions, the problem may be not related to partitions fault. Then I should explore other unbrick methods, using Heimdall to flash instead of odin for example.

If you encounter faults then you could follow the guide below to do manual re-partitioning.

5. Start dealing with partitions:
 Now just suppose that you have 2 faulty system partitions: factoryfs and datafs, then the work-around way is below:

5.1 remove partitions to get rid of the faulty ones and make space available for new ones:
(parted) rm 9
(parted) rm 10
(parted) rm 11

That will remove three partitions factoryfs (9), datafs (10) and UMS (11) so as to make rooms for new partitions

5.2. To create three new partitions from the good area:
(parted) mkpartfs primary ext2 3322 4215
(parted) mkpartfs primary ext2 4215 6362
(parted) mkpartfs primary fat32 6362 15200

(parted) name 9 FACTORYFS
(parted) name 10 DATAFS
(parted) name 11 UMS

5.3. Convert format for 9 and 10: The above steps have created three new partitions. However, for 9 and 10 the format is ext2 and now need to be converted to ext4.

For partition 9: run code below (one by one):

(parted) quit
~ # tune2fs -j /dev/block/mmcblk0p9
~ # e2fsck -fDp /dev/block/mmcblk0p9
~ # tune2fs -O extents,uninit_bg,dir_index /dev/block/mmcblk0p9
~ # e2fsck -fDp /dev/block/mmcblk0p9

If e2fsck complains that it needs to be run manually, you should omit the -p flag. This happened to me the second time I ran through this process, but the first time it did not. I'm not entirely sure why. In that case, the e2fsck commands simply become:

~ # e2fsck -fD /dev/block/mmcblk0p9
Which will cause it to ask if you want to fix the group descriptors. Just answer 'Y' and let it run through.

Note: If you encounter an error like this:
"ext2fs_check_if_mount: Can't check if filesystem is mounted due to missing mtab
file while determining whether /dev/block/mmcblk0p9 is mounted."
then try
~ # mount /dev/block/mmcblk0p9 /system
Then continue to run the code for conversion.

If the above do not work then. Go into CWM in your phone, go into "mount and storage manu" and use "mount /system". Then go back to cmd window and continue with the conversion process.

For partition 10: repeat the process to convert format:

~ # tune2fs -j /dev/block/mmcblk0p10
~ # e2fsck -fDp /dev/block/mmcblk0p10
~ # tune2fs -O extents,uninit_bg,dir_index /dev/block/mmcblk0p10
~ # e2fsck -fDp /dev/block/mmcblk0p10

If there is error with mount again then use similar trouble shoot process for 9:
~ # mount /dev/block/mmcblk0p10 /data
Or go in to CWM to mount /data

If the above steps are successful then check:
~ # parted /dev/block/mmcblk0
(parted) print

5.4. It is very unlikely that Cache is also faulty but if you think it is a problem. So for the first time you should not touch Cache. But then if you suspect the Cache partition then below is the way to do it.

(parted) rm 7

Then recreate it:
(parted) mkpartfs primary ext2 54.5 264
(parted) name 7 CACHE
(parted) quit
~ # tune2fs -j /dev/block/mmcblk0p7
~ # e2fsck -fDp /dev/block/mmcblk0p7
~ # tune2fs -O extents,uninit_bg,dir_index /dev/block/mmcblk0p7
~ # e2fsck -fDp /dev/block/mmcblk0p7

In case there is faulty area in Cache area, you can try to reduce the size of cache to 128MB, choose the start and end number somewhere in the space from 54.5MB to 264MB.

Important Note: If the creation of some partition failed (the tools will give some error like:
Error: Input/output error during write on /dev/block/mmcblk0
that would mean the area chosen for that partition include some faulty block somewhere in that range. Then you need to select another range for the partition by changing start and end number in respective code.

If everything works: Then go to cwm and try to mount your sdcard (or usb storage) to PC then copy file to it and then flash using CWM.

It is recommend to use a custom GB rom first (Darky, CheckRom, Litening, Rocket, Xtralite GB...) or a CM9 rom.

Note: Flash rom by CWM (load from computer to sdcard and flash) seem to be a better way since most members reported they cannot flash rom via odin a least for the first time after recovered using the manual re-partition method.

6. More Notes:

It is now appear that people may have faulty blocks in different area somewhere in all 4 partitions above including factoryfs, datafs, ums and cache but internal sdcard USM is often have less chance of being faulty.

Hint: the datafs does not need all 2gb. 1gb could still be OK. so if you reduce its size (by changing the start and end number in the creation of partition 10 and 11 you can have more space for sdcard.

Also if you have done it successfully with the above steps and have created partitions from 3322mb up, then you can try to go back to explore the areas which belong to the former factoryfs and datafs partitions (from 281mb to 3322mb) to see if you can use some space in there for factoryfs partition or some part for the datafs partition. In that case you may also save some more space for your sdcard (UMS partition).

If you like to know more about using parted, go to the documentation page here:
Parted User's Manual

Update of progress: More than 25 members have reported successfully revised their Notes after fixing problems with partitions .

If you can revive your Note please share with us so that we can share your good feeling

And press thanks if you find this guide useful. Thanks.

Attached Thumbnails Attached ThumbnailsAn easy guide to relocate faulty partition for super-brick Note-dd.jpg  

No comments :