How to make a dump from a broken flash1. You need skills and appropriate equipment for desoldering and soldering flash memory.
[Please Register or Login to download file] - I use these adapters for reading and writing.
2. Create a dump under Linux
- Code: Select all
dd if=/dev/sdc of=tomtom-nav4-full_dump-BROKEN_bs512.bin
Take your time and use 512 bytes per second, which is the default.Unplug the original flash memory and insert the adapter with a working emmc flash.
I used SDIN9DW4 32G SanDisk eMMC.
I lost a lot of time with THGBMFG8C4LBAIR 32G Toshiba eMMC, with it the navigation does not boot.
- Code: Select all
dd if=tomtom-nav4-full_dump-BROKEN_bs512.bin of=/dev/sdc
e2fsck -p /dev/sdc3
e2fsck -p /dev/sdc4
fdisk /dev/sdc
Welcome to fdisk (util-linux 2.33.1).
Changes will remain in memory only, until you decide to write them.
Be careful before using the write command.
Command (m for help): a
Partition number (1-4, default 4): 1
The bootable flag on partition 1 is enabled now.
Command (m for help): w
The partition table has been altered.
Syncing disks.
fdisk -l /dev/sdc
Disk /dev/sdc: 29.1 GiB, 31268536320 bytes, 61071360 sectors
Disk model: Card Reader
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0x00000000
Device Boot Start End Sectors Size Id Type
/dev/sdc1 * 256 1791 1536 768K da Non-FS data
/dev/sdc2 1792 2047 256 128K da Non-FS data
/dev/sdc3 2048 67583 65536 32M 83 Linux
/dev/sdc4 73728 15269887 15196160 7.3G 83 Linux
I have two hard drives, the first is
sda and the second is
sdb. For this reason, in my case the usb adapters are
sdc,
sdd. You may have
sdb.
If you are lucky you already have a working emmc flash. Check if you can mount both partitions. Check the sha1sum values.
These are from 00000000-0311-0020-1000-69f2778f0001_system-update.ttpkg
083ee304f7730f7af658a275f49d6b26841fa80f system-update_20.100.0001.311_all_data/uImage
ab424bbf31807b580e290178f1c1b855a485e996 system-update_20.100.0001.311_all_data/rootfs.img.new
- Code: Select all
sha1sum /media/mystical/7037594c-f1b9-4c09-b990-3d76c85f19b0/uImage
083ee304f7730f7af658a275f49d6b26841fa80f /media/mystical/7037594c-f1b9-4c09-b990-3d76c85f19b0/uImage
sha1sum /media/mystical/7037594c-f1b9-4c09-b990-3d76c85f19b0/rootfs.img
88163a071671ca80d81e543cb8359c06b0ec14f6 /media/mystical/7037594c-f1b9-4c09-b990-3d76c85f19b0/rootfs.img
In my case, rootfs.img is corrupted.
Try mounting rootfs.img
- Code: Select all
mount -o loop /media/mystical/7037594c-f1b9-4c09-b990-3d76c85f19b0/rootfs.img /mnt
Compare uboot
vbindiff /dev/sdc1 /mnt/etc/firmware/bootfs.img
Compare s/n - license key
vbindiff /dev/sdc2 /media/mystical/7037594c-f1b9-4c09-b990-3d76c85f19b0/fdt.bin
fdt.bin and /dev/sdc2 contain information about s/n - license key, make backup and do not share it.If you want to share a full backup:- Code: Select all
dd if=/dev/sdc2 of=sdc2
dd if=/dev/zero of=/dev/sdc2
Move fdt.bin to your computer.
dd if=/dev/sdc of=tomtom-nav4-full_dump_bs512.bin count=15269887
Recovery s/n - license key
dd if=sdc2 of=/dev/sdc2
If there is a problem with the serial number, the navigation starts in rescue mode.
Recovery uboot
dd if=/dev/sdc1 of=sdc1
dd if=/dev/zero of=/dev/sdc1
dd if=/mnt/etc/firmware/bootfs.img of=/dev/sdc1