[Upgrading, Modifying and Unlocking] sksolarp:
Around one year ago I bricked mine Mio P550m performing the same wrong flashing procedure as many people did here in the forum. I’ve flashed unofficial wm6.5 not using dnw flashing application but using flash memory card. After flashing with checksum errors and restarting, Mio was in error mode with all LEDs on without possibility to load into bootloader.

Recently I’ve decided to try to take corrective actions. Although I was not thoroughly convinced that I would succeed I overcame few difficulties and finally Mio was successfully repaired. There is one motivating picture for introduction.

View attachment 707678

Messing around the web I’ve found many useful flashing tutorials but basically I started from this site: onyx.motronik.com.pl/mio/

Following the tutorial the biggest problem was that using the mentioned JTAG flasher the connection between PC and Mio was unstable. I thought that it resulted from the wrong connection of self-made connector with Mio board. Thus I decided to solder cables to the board (Originally I wanted to eliminate this possibility as much as possible. There is a big risk of tearing off the copper plates). To reduce the cable pulling forces to copper plates I made connection between plates and cables with short slices of very thin and so easily bendable solder tin (beware of short circuit caused by flexion of tin slices). Only connection to TCK copper plate that is the most critical for breakaway was made by needle contact. Result was the same as with home-made connector. I was “very happy” about it but I already knew that the problem was in JTAG. I added some pull-up resistors to JTAG flasher and then there was not any more problem with connection. See modified scheme below. Anyway I recommend to use some home-made connector to establish connection.

View attachment 707681

View attachment 707679

View attachment 707680

For flashing I have used modified SJF2440 utility which supports besides others also 512MB flash memories (K9F4G08). Here is link to download:

megaupload.com/?d=SK6LLMR2

Usage of SJF utility:

1. Install and start giveio drivers, make commands from located directory loaddrv install giveio and loaddrv start giveio

2. Run SJF2440 utility with flash filename parameter sjf2440 /f:BOOT.nb

3. There are only two possibilities Program Page and Program Block. First I have chosen Program Page (start from page 0, block 0), there is most important automatical start of erasement before programing of block 0.

4. Select Program Block (block 0)

5. Directly after reflashing bootloader turn Mio off, hold joystick down and turn it on. Hold the joystick until boot menu appears.

6. Make low level format from boot menu (memory can contain some error marked blocks and when you do not access boot menu directly after reflashing, second time after system recognition of these errors, access could be blocked and reflashing procedure must be repeated – this is only theory based on my “play” with flashing, actually without low level format it was not possible for me to access boot menu for the second time.).

7. Flash OS from SD card – First flash original wm5.0 – This will reflash whole memory (also original BL/os boot section again). File MioP550-Osc260AR05_P09.nb0 also could be flashed directly by JTAG but I didn’t try this possibility.

8. Optional. Flash wm6.1 (CrashOverHead version) using SD card. This reflashes only OS section of memory. When you flash this version directly after BL reflash, OS will not boot.

I wish you success with unbricking and the same amazing feelings of success which I had!

Note: This procedure can be used to reflash all other ARM devices based on Samsung S3C2440.. processor.