How To Unbrick Your Wiz (Retail Wiz - V1.1.0 Firmware)


glossywhite

Still Fresh
Joined
Nov 26, 2009
Messages
94
Hi guys!. I just wanted to share the knowledge that the last 24 painful hours have taught me, so I have knocked up a PDF and included the files you'll need (tested on Windows XP) to hopefully unbrick that bricked Wiz. If anyone can see anything I have missed, please do feel free to modify and improve my tutorial. The steps shown are *exactly* the steps I figured out, to get me up and running again from a black-screen retail Wiz, running FW 1.1.0. The bricking was caused, in my case, by me holding down the right button as I turned it on, but without the firmware files being on the SD card. For some reason, the uboot deems it necessary to ERASE THE NAND WITHOUT CHECKING FOR FIRMWARE UPGRADE FILES ON SD!. Gamepark will hopefully fix this (??) but all the same, it is now working again.

Thanks to Claude, for all his help and kind messages with advice.

Files you need: clickety click
 
Awesome, I'm going to try this on mine when I get home. By all appearances there's no reason why it shouldn't work. I'll post how it goes when I get there.

Out of curiosity, did either of you (you or Claude) use this with the BoB, and thus the last distributed prototype Wiz?
 
Exophase said:
Awesome, I'm going to try this on mine when I get home. By all appearances there's no reason why it shouldn't work. I'll post how it goes when I get there.

Out of curiosity, did either of you (you or Claude) use this with the BoB, and thus the last distributed prototype Wiz?

I am not sure of Claude's exact method - I figured out the last part (press 3 as you hold the right button) on my own. I have never owned either a BoB or a prototype of any sort.
 
Last edited by a moderator:
8-CFG Bootmode 1 ---------{1k resistor between this and ground} (if using BOB switch CFG Bootmode 1 to LOW)
9-CFG Bootmode 0 ---------{1k resistor between this and ground} (if using BOB switch CFG Bootmode 1to LOW)

Is this a typo or correct?

Is the position of J4 and J5 important?


gp2x_wiz_devboard_front.jpg


Credits for the photo go to notaz.
 
sbock said:
8-CFG Bootmode 1 ---------{1k resistor between this and ground} (if using BOB switch CFG Bootmode 1 to LOW)
9-CFG Bootmode 0 ---------{1k resistor between this and ground} (if using BOB switch CFG Bootmode 1to LOW)

Is this a typo or correct?

Is the position of J4 and J5 important?


gp2x_wiz_devboard_front.jpg


Credits for the photo go to notaz.

It was a typo, and I have modified the PDF to reflect the proper settings, and updated the download link. I'd leave the other two switches OPEN.
 
Last edited by a moderator:
I thought that J4 (shadow) had to be switched high in order for UART boot to work. The MES documents indicates this. But the shadow address space switching was a root cause of my problems. I had a lot of trouble getting UART boot to work at all, and I don't think it worked with shadow not on, but I could have been wrong.

Fact is, they were not wired in his serial cable, so you should be able to leave them floating on the BoB too. Middle should be floating.
 
Exophase said:
I thought that J4 (shadow) had to be switched high in order for UART boot to work. The MES documents indicates this. But the shadow address space switching was a root cause of my problems. I had a lot of trouble getting UART boot to work at all, and I don't think it worked with shadow not on, but I could have been wrong.

Fact is, they were not wired in his serial cable, so you should be able to leave them floating on the BoB too. Middle should be floating.

Well I used a hacked-together serial cable, made with a standard Wiz USB cable, and the ONLY pins I used were the serial pins, & the CFG Bootmode 1 & 2 pins, and it works, so leave shadow open.
 
Last edited by a moderator:
Thanks for this very important and informative thread glossywhite, you surprised me! If I was harsh earlier it's not that I don't have sympathy for someone who's having major problems, just everytime I've seen your name it's usually a knee jerk moan about how terrible the wiz is.

I'm glad you got your wiz going again, I really do hope you have fun with it - and surely there's a part of you that's proud you managed to get the thing working again? That's part of the fun of these GP devices, they frustrate the hell out of you but when you get things running properly it makes you feel good. If you want an easy life get an NDS or a PSP. Next time something goes wrong, sit back, have a cup of tea and try to think positively about how to overcome the problem, and I'm sure everyone here will do there best to help if they can. And if it makes you feel better you can always report me again, hell why not, I'd feel cheated if you didn't! <--- that was a joke.

One question, did you take your original Wiz cable apart, and if not, where did you get the spare one?
 
TitanUranus said:
I'm glad you got your wiz going again, I really do hope you have fun with it - and surely there's a part of you that's proud you managed to get the thing working again? That's part of the fun of these GP devices, they frustrate the hell out of you but when you get things running properly it makes you feel good.

Oh god no, I think I'll never get over the "fun" I've had with these devices.

TitanUranus said:
If you want an easy life get an NDS or a PSP.

And then I actually had more "fun" with working with homebrew on PSP. I've spent uncountable hours fighting half broken toolchain and completely screwed up bugs of death coming from nowhere. Then there's the hell I went through with PSPLink. I don't think I could even touch a PSP again after everything I last dealt with.
 
Last edited by a moderator:
TitanUranus said:
...One question, did you take your original Wiz cable apart, and if not, where did you get the spare one?

Yeah, I hacked up my own (and only) cable to make the serial cable, but what's the fun if you don't play a bit of risk?. ;) . I have a friend in the mobile industry, who has some spare Samsung E810 cables, so I'll re-build myself a proper pair - one normal, one serial, once I get them. Hey, it's better than soldering INSIDE the console!! :eek:

Here are some pics of my hacked up cable mod - notice the CFG Bootmode 0 & CFG Bootmode 1 pins, pulled down by two 1k resistors :) :

4175102395_4fe11b3fd6_b.jpg


4175101885_6698b713a7_b.jpg


The connector shell is made of soft plastic, and is NOT designed for multiple pin re-assignments and removal!. The pins are pretty easy to move to new positions, as long as you have a loupe magnifier, steady hands & a good pair of long-nose pliers. Once you've moved them around more than a few times, they tend to bend a little and need straightening with fine, flat-ended tweezers. Making sure the contact barbs are facing UP (toward the grooved, bottom side of the connector shell) is a pain - I kept forgetting, and had to remove and reverse them time and again - MORE wear and tear on that soft plastic. Had a few crossed pin incidents, but the fine tip of a needle under a loupe magnifier soon clicks the pins back into their slots (hard to explain without a close-up magnified MANY times).

The little metal object is an old screw mount, which fits perfectly within the power switch recess, and holds the slider switch forcibly down whilst in serial mode.





Okay folks - just to confirm; I just bricked my Wiz again *intentionally* (all for the purposes of science, dontcha know! ;) ) and followed my own guide, and it restored it back to life again, perfectly. I like to test my own theories more than once, you see!.


### WIZ UNBRICKING SERVICE - £25 INCLUDING POSTAGE ###... LOL! (jokes).
 
Last edited by a moderator:
Cool, looks like a great method of testing your own uboot builds too. :)

I wonder if it's possible to just use kermit in Linux (no Windows here).

Might have to play with that idea when I'm done messing with the kernel. ;)
 
pseudonym404 said:
Cool, looks like a great method of testing your own uboot builds too. :)

I wonder if it's possible to just use kermit in Linux (no Windows here).

Might have to play with that idea when I'm done messing with the kernel. ;)

I wouldn't know about kermit, and I'm on Ubuntu 9.10 here - had to borrow the family laptop (dual boot XP/Ubuntu - they REFUSE to use Ubuntu :( ) to do this. I don't know enough about serial file transfer, so I'm playing it safe until I am knowledgeable enough to do it *all* in GNU/Linux!).
 
Last edited by a moderator:
glossywhite said:
pseudonym404 said:
Cool, looks like a great method of testing your own uboot builds too. :)

I wonder if it's possible to just use kermit in Linux (no Windows here).

Might have to play with that idea when I'm done messing with the kernel. ;)

I wouldn't know about kermit, and I'm on Ubuntu 9.10 here - had to borrow the family laptop (dual boot XP/Ubuntu - they REFUSE to use Ubuntu :( ) to do this. I don't know enough about serial file transfer, so I'm playing it safe until I am knowledgeable enough to do it *all* in GNU/Linux!).

Hopefully it's just a case of discovering the correct transfer protocol for sending files, and the menu is implemented as raw serial (pure guesswork). I'm looking for a suitable switch to add to my serial cable now to optionally pull the bootmode pins low so I can play with this. :)
 
Last edited by a moderator:
pseudonym404 said:
Cool, looks like a great method of testing your own uboot builds too. :)

I wonder if it's possible to just use kermit in Linux (no Windows here).

Might have to play with that idea when I'm done messing with the kernel. ;)

I don't think so, I very strongly doubt the UART boot protocol is Kermit. However, you can use the Windows utility okay in Wine. I've tried it before, it works fine.
 
Last edited by a moderator:
Exophase said:
pseudonym404 said:
Cool, looks like a great method of testing your own uboot builds too. :)

I wonder if it's possible to just use kermit in Linux (no Windows here).

Might have to play with that idea when I'm done messing with the kernel. ;)

I don't think so, I very strongly doubt the UART boot protocol is Kermit. However, you can use the Windows utility okay in Wine. I've tried it before, it works fine.

Sorry, I should have specified ckermit the program, I wouldn't expect uart boot to use the kermit protocol either, maybe xmodem though (which ckermit supports), seems fairly common for arm boards. :)

Good to know the Windows utility works in Wine though, I now have a backup plan. ;)
 
Last edited by a moderator:
Great guide!
Thank you glossywhite, I think this guide will be helpful to many of us sooner or later :)

I don't think so, I very strongly doubt the UART boot protocol is Kermit. However, you can use the Windows utility okay in Wine. I've tried it before, it works fine.

There is no transfer protocol in UART boot.
The processor (Pollux) just awaits 16k of data and after that the processor jumps to the start of RAM where the 16k are stored.
I simply used 'dd' or 'cat' for transferring UART boot from a linux machine to the Wiz (Didj).
 
I uploaded the file to the archive:

http://dl.openhandhelds.org/cgi-bin/wiz.cgi?0,0,0,0,23,265

@Exophase

What's with your Wiz? Do you have tried to recover it yet or is your Wiz FUBAR?
 
Claude said:
There is no transfer protocol in UART boot.
The processor (Pollux) just awaits 16k of data and after that the processor jumps to the start of RAM where the 16k are stored.
I simply used 'dd' or 'cat' for transferring UART boot from a linux machine to the Wiz (Didj).

Oh really? That's quite weak. I'll still use the program though, so I don't have to have a separate terminal up immediately afterwards.

sbock said:
@Exophase

What's with your Wiz? Do you have tried to recover it yet or is your Wiz FUBAR?

Still haven't had time to do it, hope to today >_>

EDIT: Okay, I'm not having good luck. MES's program is no longer working on Wine (yes, I made the COM port symlink in .wine/dosdevices) and catting the file then waiting for input back from /dev/ttyS0 gives me nothing. stty settings:

stty -a -F /dev/ttyS0
speed 115200 baud; rows 0; columns 0; line = 0;
intr = ^C; quit = ^; erase = ^?; kill = ^U; eof = ^D; eol = <undef>;
eol2 = <undef>; swtch = <undef>; start = ^Q; stop = ^S; susp = ^Z; rprnt = ^R;
werase = ^W; lnext = ^V; flush = ^O; min = 1; time = 0;
-parenb -parodd cs8 hupcl -cstopb cread clocal -crtscts
-ignbrk -brkint -ignpar -parmrk -inpck -istrip -inlcr -igncr -icrnl -ixon -ixoff
-iuclc -ixany -imaxbel -iutf8
-opost -olcuc -ocrnl onlcr -onocr -onlret -ofill -ofdel nl0 cr0 tab0 bs0 vt0 ff0
-isig -icanon iexten echo echoe echok -echonl -noflsh -xcase -tostop -echoprt
echoctl echoke

Any ideas? I don't have a Windows machine that has RS232, I'd need a USB serial adapter which I also don't currently have. Enhh, I guess this machine can sort of boot Windows, but it'd be a serious pain getting into it.
 
Last edited by a moderator:
Claude said:
Great guide!
Thank you glossywhite, I think this guide will be helpful to many of us sooner or later :)

I don't think so, I very strongly doubt the UART boot protocol is Kermit. However, you can use the Windows utility okay in Wine. I've tried it before, it works fine.

There is no transfer protocol in UART boot.
The processor (Pollux) just awaits 16k of data and after that the processor jumps to the start of RAM where the 16k are stored.
I simply used 'dd' or 'cat' for transferring UART boot from a linux machine to the Wiz (Didj).

You're welcome - I could not have done this without you!. Oh, so when I have done:

Code:
cat UART.nb0 > /dev/ttyUSB0

What do I do next, to trigger the UART menu?
 
Last edited by a moderator:
glossywhite said:
Claude said:
Great guide!
Thank you glossywhite, I think this guide will be helpful to many of us sooner or later :)

I don't think so, I very strongly doubt the UART boot protocol is Kermit. However, you can use the Windows utility okay in Wine. I've tried it before, it works fine.

There is no transfer protocol in UART boot.
The processor (Pollux) just awaits 16k of data and after that the processor jumps to the start of RAM where the 16k are stored.
I simply used 'dd' or 'cat' for transferring UART boot from a linux machine to the Wiz (Didj).

You're welcome - I could not have done this without you!. Oh, so when I have done:

Code:
cat UART.nb0 > /dev/ttyUSB0

What do I do next, to trigger the UART menu?

How about

Code:
cat UART.nb0 > /dev/ttyUSB0 && minicom

you can substitute minicom with any other terminal program of your choice. As soon 'cat' finished 'minicom' gets started.
 
Last edited by a moderator:
Back
Top