Author Topic: Unbricking IPdio mini pro  (Read 3129 times)

tim_b

  • Guest
Unbricking IPdio mini pro
« on: 13:31:30 | 19 October, 2015 »
While tinkering with my sharpfinned IPdio I intended to remove files from the root partition temporarily and in a moment of absence ... rebooted.

While I did backup the files in question, I don't have a full backup set of the NAND flash available.
Next I obtained a JTAG adapter to go the harsh "JTAG-solder-unbrick" path.
After successfully getting access to the reciva module, my original recovery idea was to:
1) backup root partition to file (sharpflash -r)
2) mount the root-image on a linux machine
3) write the missing files back to the image
4) reflash modified root partition (sharpflash -w)

For step 2) I hoped to use a simple loop-mount approach, but things proved to be more complicated here.
For mounting these images, a MTD device emulation seems to be required instead of simple block-device access. Also, the OOB data included in the sharpflash backups (nanddump format) must be handled.
Based on:
http://wiki.emacinc.com/wiki/Mounting_JFFS2_Images_on_a_Linux_PC
and after adjusting the erase block size, I was able to mount the image ro and rw, but after the first reflash lots of bad blocks appeared (Initially there were none), so I assume that at least the OOB data handling is not correct yet. Even worse, I get the impression that my initial sharpflash (v0.4) root partition image backup from step 1) might be broken.

To make this long story short(er), I finally came here in a (desperate) attempt to find somebody who is willing to share a consistent set of NAND backup files.

Ideally these would be extracted from an IPdio mini pro, but I'd try to flash a set from a similar reciva device like the IPdio mini, Vistron MX-200i, Ocean Digital WR-200 (maybe others?) as well. Maybe/likely I'd lose the FM tuner and LAN device in this procedure, but at least the device might be usable again.

drgeoff

  • Hero Member
  • *****
  • Posts: 882
  • Thanked: 36 times
Re: Unbricking IPdio mini pro
« Reply #1 on: 16:31:25 | 19 October, 2015 »
Hmm! Bad,  bad,  bad.

I can provide you with a complete set of the NAND backups to be used with Sharpflash.
The firmware for all models is the same -  you will not lose any functionality. It is the legacy enhanced firmware.  A v257. As your radio was Sharpfinned it cannot have been later than v257. Anyway,  once you have it working with any version you can change to whatever one you want.

But the bad blocks problem will not go away just by flashing again correctly.  Been there,  done that by flashing a NAND file that was corrupt. I did manage to repair the bad blocks by modifying Sharpflash. See https://groups.google.com/forum/m/#!topic/sharpfin/lzBjbMkrKVw.
« Last Edit: 03:25:52 | 20 October, 2015 by drgeoff »

tim_b

  • Guest
Re: Unbricking IPdio mini pro
« Reply #2 on: 10:02:30 | 20 October, 2015 »
Hello drgeoff,

at first, thanks a lot for your quick and helpful assistance.

Right after detecting the increased bad block situation, I've actually stumbled across this very thread you mentioned. Now I recognise that this was you who proposed this, nice to meet you :-)
The original author of sharpflash, Steve, seems to be involved as well.

Luckliy C++ coding is part of my job, so what I actually did before posting here was a similar patch to the sharpfin 0.1 source. As a first quick hack, I returned 0xFF from the NF_IsBadBlock() routine, effectively bypassing any bad block checking. Your proposed patch is actually less invasive than this.

I'm wondering if an implementation could not: skip any OOB data in the source image if present; generate new OOB data on the fly (using nand_calculate_ecc() from getpart), taking premarked bad blocks or correction data into account. For trashed OOB data on the flash, there might be some "ignore current OOB data" switch, but that's another story. I'd expect Steve knows better at this point.

Consequently, I'm not too afraid to overcome the bad blocks problem, I'm more worried about what to write ;-) I'd be more than happy to try the fileset you've mentioned.

BTW, any www.sharpfin.org resource returns HTTP 500 for a couple of days now, wouldn't be surprised if one of the people here is involved in this as well.

drgeoff

  • Hero Member
  • *****
  • Posts: 882
  • Thanked: 36 times
Re: Unbricking IPdio mini pro
« Reply #3 on: 11:38:23 | 20 October, 2015 »
PM me an email address and a 12 Mbyte zip file will soon be on its way to you.

griszka1977

  • Guest
Re: Unbricking IPdio mini pro
« Reply #4 on: 03:30:50 | 17 July, 2016 »
boot-mtd.bin
kernel-mtd.bin
root-mtd.bin
config-mtd.bin
debug-mtd.bin

have everyone this Files 16mb ???

thanks...
griszka77@o2.pl

drgeoff

  • Hero Member
  • *****
  • Posts: 882
  • Thanked: 36 times
Re: Unbricking IPdio mini pro
« Reply #5 on: 12:42:05 | 17 July, 2016 »
boot-mtd.bin
kernel-mtd.bin
root-mtd.bin
config-mtd.bin
debug-mtd.bin

have everyone this Files 16mb ???

thanks...
griszka77@o2.pl
Check your email.

Firmware files are v257-a-856-a-476.  If your radio needs v265 or later I don't have those and these v257 ones will probably not work.

Be sure to use Sharpflash.  Do not be tempted to use any other JTAG software.