[Guide][Fix] Motorola Defy Mini XT320/XT321 Burnt NAND

Search This thread

rootdefyxt320

Senior Member
Oct 4, 2012
488
440
Sydney, NSW
Hello Defy Mini Users, I'm going to write a tutorial on how to fix a burnt NAND.

My overclock became unstable and I had bad blocks everywhere so I decided to recover my NAND. @cute_prince method fixed by phone.
@MauroSZ @Bernd.Defy @wilberfish @conrad0

Thanks to cute_prince tutorial for HTC Explorer NAND recovery. I have just adapted to Defy Mini XT320/XT321.

Now in cmd type in these commands:

Code:
adb reboot bootloader
Code:
fastboot boot twrp.img
Code:
adb shell mount -a
Code:
adb push flash_erase /system/xbin
Code:
adb shell cd /system/xbin
Code:
adb shell chmod 755 flash_erase
Code:
adb shell ./flash_erase -N /dev/mtd/mtd9 0 0
Code:
adb shell ./flash_erase -N /dev/mtd/mtd11 0 0
Code:
adb shell ./flash_erase -N /dev/mtd/mtd12 0 0
Code:
adb reboot bootloader
Code:
fastboot erase userdata
Code:
fastboot erase cache
Code:
fastboot erase system

Now flash back your SBF via RSD-Lite.
 

Attachments

  • Fix_Defy_Mini_XT320_XT321_Burnt_NAND.zip
    6.1 MB · Views: 304

rootdefyxt320

Senior Member
Oct 4, 2012
488
440
Sydney, NSW
@rootdefyxt320, Theoretical question:

Any idea what happens recovering nandroid instead flashing a SBF via RSD Lite ? :confused:

You restore a nandroid backup that has a corrupted NAND, which is what you don't want. Flashing an SBF doesn't give a corrupted NAND as it is fresh. But you must flash_erase before you flash an SBF otherwise you will still have a burnt NAND.
 
  • Like
Reactions: MauroSZ

MauroSZ

Senior Member
Dec 18, 2012
155
36
So your NAND is fixed now?
Is correct supposing the android automatically avoids bad blocks using others normal blocks instead ? Is journaling correlated ? If true, does make sense flash a sbf first and restore a nandroid just after getting fastboot ? Or do you recommend anorher backup way like titanium ? Or maybe a mixed way using a old nandroid made when the nand was not burnt and Titanium just after to make the device state more recent ?

Is there a easy and quick test to know if the nand is burnt ?

Sent by Smartphone Using Tapatalk 2
 
Last edited:

wilberfish

Senior Member
Apr 16, 2013
174
43
Manchester
So your NAND is fixed now?

Yes seems so. Didn't have time to check but after clean install and updates back to 73mb free :D

Sent from my HTC Desire C using xda app-developers app

---------- Post added at 09:24 PM ---------- Previous post was at 09:17 PM ----------

Is correct supposing the android automatically avoids bad blocks using others normal blocks instead ? Is journaling correlated ? If true, does make sense flash a sbf first and restore a nandroid just after getting fastboot ? Or do you recommend anorher backup way like titanium ? Or maybe a mixed way using a old nandroid made when the nand was not burnt and Titanium just after to make the device state more recent ?

Is there a easy and quick test to know if the nand is burnt ?

Sent by Smartphone Using Tapatalk 2

adb shell dmesg will give you a report, scroll down and you will see if you have bad blocks.
Yes it avoids bad blocks automatically. As for backup I have no idea, sorry.
 

rootdefyxt320

Senior Member
Oct 4, 2012
488
440
Sydney, NSW
Is correct supposing the android automatically avoids bad blocks using others normal blocks instead ? Is journaling correlated ? If true, does make sense flash a sbf first and restore a nandroid just after getting fastboot ? Or do you recommend anorher backup way like titanium ? Or maybe a mixed way using a old nandroid made when the nand was not burnt and Titanium just after to make the device state more recent ?

Is there a easy and quick test to know if the nand is burnt ?

Sent by Smartphone Using Tapatalk 2

The problem with nandroid backups is when you back it up. I backup my phone before overclocking so I can restore my NANDROID backup. You can restore your nandroid if you backup before overclocking. Don't restore your NANDROID if you backed it up after overclocking. Basically YAFFS2 filesystem uses 'blocks' to store the data. It won't write to the 'bad blocks' so you lose storage. Basically a YAFFS2 NANDROID backup also backups the bad blocks which is what you don't want. You can read more about YAFFS Filesystem here: http://en.wikipedia.org/wiki/YAFFS
 

MauroSZ

Senior Member
Dec 18, 2012
155
36
@rootdefyxt320 thanks for the link, but if i backup just after a minute i overclocked, i am supposed it will not sufficient time to burn the nand, right ? And i can avoid all a process to overclock again if i have to recovery my nand.

It seems the CWM backup creates a continuous nand image containing good and bad blocks. The android skips bad blocks writing data. Then i'm supposed backup apps as Titanium do a good job in this case because (i am also supposed) they don't work with image.

Sent by Smartphone Using Tapatalk 2
 

rootdefyxt320

Senior Member
Oct 4, 2012
488
440
Sydney, NSW
@rootdefyxt320 thanks for the link, but if i backup just after a minute i overclocked, i am supposed it will not sufficient time to burn the nand, right ? And i can avoid all a process to overclock again if i have to recovery my nand.

It seems the CWM backup creates a continuous nand image containing good and bad blocks. The android skips bad blocks writing data. Then i'm supposed backup apps as Titanium do a good job in this case because (i am also supposed) they don't work with image.

Sent by Smartphone Using Tapatalk 2

Yeah, it won't have that much effect. The effect happens after a couple of weeks of overclocking.
 
  • Like
Reactions: bowo12 and MauroSZ

tezzar

Member
Nov 5, 2013
34
0
After adb push flash_erase /system/xbin the commands should use full path, mine didn't work with CD.
Also shell commands didn't work first time, maybe because touched some buttons on TWRP screen.

Code:
Code:

adb reboot bootloader

fastboot boot twrp.img

adb shell mount -a

adb push flash_erase /system/xbin

adb shell cd /system/xbin

adb shell chmod 755 /system/xbin/flash_erase

adb shell /system/xbin/flash_erase -N /dev/mtd/mtd9 0 0

adb shell /system/xbin/flash_erase -N /dev/mtd/mtd11 0 0

adb shell /system/xbin/flash_erase -N /dev/mtd/mtd12 0 0

adb reboot bootloader

fastboot erase userdata

fastboot erase cache

fastboot erase system
 

Top Liked Posts

  • There are no posts matching your filters.
  • 2
    Hello Defy Mini Users, I'm going to write a tutorial on how to fix a burnt NAND.

    My overclock became unstable and I had bad blocks everywhere so I decided to recover my NAND. @cute_prince method fixed by phone.
    @MauroSZ @Bernd.Defy @wilberfish @conrad0

    Thanks to cute_prince tutorial for HTC Explorer NAND recovery. I have just adapted to Defy Mini XT320/XT321.

    Now in cmd type in these commands:

    Code:
    adb reboot bootloader
    Code:
    fastboot boot twrp.img
    Code:
    adb shell mount -a
    Code:
    adb push flash_erase /system/xbin
    Code:
    adb shell cd /system/xbin
    Code:
    adb shell chmod 755 flash_erase
    Code:
    adb shell ./flash_erase -N /dev/mtd/mtd9 0 0
    Code:
    adb shell ./flash_erase -N /dev/mtd/mtd11 0 0
    Code:
    adb shell ./flash_erase -N /dev/mtd/mtd12 0 0
    Code:
    adb reboot bootloader
    Code:
    fastboot erase userdata
    Code:
    fastboot erase cache
    Code:
    fastboot erase system

    Now flash back your SBF via RSD-Lite.
    2
    @rootdefyxt320 thanks for the link, but if i backup just after a minute i overclocked, i am supposed it will not sufficient time to burn the nand, right ? And i can avoid all a process to overclock again if i have to recovery my nand.

    It seems the CWM backup creates a continuous nand image containing good and bad blocks. The android skips bad blocks writing data. Then i'm supposed backup apps as Titanium do a good job in this case because (i am also supposed) they don't work with image.

    Sent by Smartphone Using Tapatalk 2

    Yeah, it won't have that much effect. The effect happens after a couple of weeks of overclocking.
    2
    So your NAND is fixed now?

    Yes seems so. Didn't have time to check but after clean install and updates back to 73mb free :D

    Sent from my HTC Desire C using xda app-developers app

    ---------- Post added at 09:24 PM ---------- Previous post was at 09:17 PM ----------

    Is correct supposing the android automatically avoids bad blocks using others normal blocks instead ? Is journaling correlated ? If true, does make sense flash a sbf first and restore a nandroid just after getting fastboot ? Or do you recommend anorher backup way like titanium ? Or maybe a mixed way using a old nandroid made when the nand was not burnt and Titanium just after to make the device state more recent ?

    Is there a easy and quick test to know if the nand is burnt ?

    Sent by Smartphone Using Tapatalk 2

    adb shell dmesg will give you a report, scroll down and you will see if you have bad blocks.
    Yes it avoids bad blocks automatically. As for backup I have no idea, sorry.
    2
    Is correct supposing the android automatically avoids bad blocks using others normal blocks instead ? Is journaling correlated ? If true, does make sense flash a sbf first and restore a nandroid just after getting fastboot ? Or do you recommend anorher backup way like titanium ? Or maybe a mixed way using a old nandroid made when the nand was not burnt and Titanium just after to make the device state more recent ?

    Is there a easy and quick test to know if the nand is burnt ?

    Sent by Smartphone Using Tapatalk 2

    The problem with nandroid backups is when you back it up. I backup my phone before overclocking so I can restore my NANDROID backup. You can restore your nandroid if you backup before overclocking. Don't restore your NANDROID if you backed it up after overclocking. Basically YAFFS2 filesystem uses 'blocks' to store the data. It won't write to the 'bad blocks' so you lose storage. Basically a YAFFS2 NANDROID backup also backups the bad blocks which is what you don't want. You can read more about YAFFS Filesystem here: http://en.wikipedia.org/wiki/YAFFS
    1
    @rootdefyxt320, Theoretical question:

    Any idea what happens recovering nandroid instead flashing a SBF via RSD Lite ? :confused:

    You restore a nandroid backup that has a corrupted NAND, which is what you don't want. Flashing an SBF doesn't give a corrupted NAND as it is fresh. But you must flash_erase before you flash an SBF otherwise you will still have a burnt NAND.