Worklog Project M

Joined
Sep 27, 2016
Messages
291
Likes
502
So I guess we're all redesigning motherboards now lol.

With the current 3 or so worklogs of reverse engineering of the Wii/PS2 motherboards, I felt inspired. After completing a few portables of my own now, I wanted a challenge for myself to push my growth as a hobbyist. I'm an Eagle user with a hobbyist license (meaning I'm limited to 2 layer designs only), so I'll have to use kicad for this project. I've never worked with kicad, 4 layer board designs, or BGA designs but I'm very familiar with board designs and BGAs in general so shouldn't be too difficult.

Not too much to show as of now, but creating a worklog to hold myself accountable to complete this as well as share the process along the way.

I started off with reviewing the compendium as well as removing the CPU, GPU, and RAM from a 4 layer Wii board I had to confirm various traces under the microscope. I mapped out what every single pad does for all 3 BGAs. Tedious job... over 1200 pads on the motherboard of just those 3 chips.

1655439932623.png


The compendium was a great start as a lot is already mapped out for you however a lot is also not marked (which didn't need to be marked for the original intent of trimming the board), but I'll need to know what every pad is for my purposes.

I would love for this build to feature an OLED panel, but it's not quite a simple solution.

I experimented with 2 different MIPI AMOLED screens, both slightly disappoint.

1st screen is a 5.5" 1080P panel who's driver board actually accepts 480P natively but looks fuzzy/soft as you would expect a 480P signal to look scaled on a 1080p panel. So I did some research and found the smallest HDMI upscaler money can buy, the Mclassic. The image was only slightly improved but the Mclassic algorithm softens the edges to clean up jagged edges and ultimately it just wasn't a crispy image. This combo was way too expensive for the sub-par image quality, so that option is out.

2nd screen is a 5" odd resolution (960x540, it's a Vita OLED with a MIPI driver) but will not accept any signal less than 720P. So once again forced to hook up the Mclassic to upscale and the image quality is much better than the first due to the driver boards menu options being able to sharpen the image which ended up looking great. But, this is a messy/bulky setup. I thought about reverse engineering the MIPI driver board + the Mclassic into just one board, but is more effort than it's worth with the Mclassic being 6 layers and MIPI board 4 layers... and the slight glitchy-ness from my testing proved this method to be unreliable.

For now, I'm sticking with either 4.3" or 5" IPS 800x480 via HDMI using the gcvideo FPGA (which will most likely be integrated into this board redesign instead of the original AVE). This method is proven to be the most reliable, cleanest, and crispiest video solution currently available. Direct Drive would be nice though...

The regs I will be using are the most efficient I have found that are readily available with efficiency being around 92% under load. I'm using a buck/boost reg for the 3.3v line (to squeeze out a little extra battery life) that automatically switches from a buck reg to a boost when the battery falls below 3.3v.
 
Last edited:
Joined
Apr 29, 2020
Messages
24
Likes
17
Good luck on your endeavor! 3 Wii motherboard recreations for portables, this is definitely the best timeline!
I really like your approach using GCVideo and HDMI, it offers plenty of options for customization directly at the source I’m sure it’ll look great.
 
Joined
Sep 27, 2016
Messages
291
Likes
502
Small update:

Screenshot (1).png

Screenshot (2).png


The project is starting to take shape. Doesn't look like much but I've put in about 10 more hours since the last post just mapping out the pins and figuring out how I want to create the schematics. I made different boxes per BGA package of the CPU/GPU/RAM in the schematic for groups of certain connections (GND pins, Voltage pins, etc.) to make it easier for me to read since we are dealing with quite a bit of connections here.

Next is to finish the schematic and rename all BGA pads in the PCB editor to correspond with the names of the pads in the schematic. Then we route the traces to match the original motherboard.

For now, I won't be adding anything more to the board other than the boot essentials of the Wii just make make sure the main system is working properly before adding the additional features.
 
Last edited:
Joined
Sep 27, 2016
Messages
291
Likes
502
I was trying to figure out how to insert an image of the Wii motherboard to trace over in kicad, but found there is no such feature. However, @YveltalGriffin had a genius idea as usual and recommended a little program called "Peek Through" where I can make whatever program I have open transparent so I could see the Wii motherboard if I have it open in the background. Works like a charm!

Now I'm almost done with the routing of the top layer, but them data high speed traces had me testing my patience... but this has been a great leaning curve with kicad. Honestly I'm finding it easier and better than eagle.

Screenshot (3).png


Screenshot (4).png

As you can see above, I'm trying to replicate the data traces as closely as possible, one by one... they're not perfectly identical, but I'd say at least about 98% identical, which hopefully is enough accuracy to avoid boot issues.

Screenshot (6).png


The benefit of tracing the motherboard is to not only match everything as closely as possible therefore higher chance of this board redesign booting, but to also verify my schematic is correct and making sure all traces go where I have specified in the schematic. I have already found a few flaws that I may have possibly overlooked had I not been tracing the board.




So here's a wild idea if anybody is interested in further research:

Something recently peeked my interest with the Wii motherboard, specifically the Wii Mini.

I was going through Shank's Wii Super Thread to get the values of the small components essential for the Wii motherboard when I discovered a post that shows an undocumented GPU on the Wii Mini that has "Hollywood-2" engraved on it rather than the usual "Hollywood-1" and this new GPU variant seems to feature a die shrink.

Hollywod-2 GPU seems to be somewhat uncommon from the immediate research I've gathered and can be found sometimes and sometimes not on the RVO-CPU-01 revision motherboards. There is an RVO-CPU-10 motherboard revision that may be more consistent. I found a bare motherboard listed "as is for parts" with a vague description but has the Hollywood-2 GPU that I purchased and plan on further investigating. I'm also assuming it gets way less hot than the current 4 layer motherboards we have all been using as the heatsink is much smaller in the Wii Mini, but is simply just a theory. I want to get some concrete numbers and see if it makes sense to track these down for future builds since the Wii Mini is hackable now and double the price as a regular 4 layer Wii. Unfortunately, the Wii Mini lacks Gamecube controller connections on the motherboard with no via to solder to, but since I'm redesigning the motherboard anyway and decide Hollywood-2 is worth it, I can just remap the gc data line from the GPU to have access to a Gamecube controller IF the footprint and pinout is the same as Hollywood-1. Hmm, there does appear to be vias and the required 750 ohm on board resistor array for GC controllers on my CPU 10 revision... online resources were incorrect then. Will need to test this further.

I'm thinking of swapping Hollywood-1 from a regular 4 layer Wii board with a Hollywood-2 and the NAND paired with the Holywood-2 as well just to see if it boots. I plan on also comparing the motherboards to see if there is any obvious immediate differences in the GPU pinouts. I'll report my findings in this thread or a separate thread if the results are significant enough.
 
Last edited:
Joined
Apr 29, 2020
Messages
24
Likes
17
Great progress and super interesting info on the Hollywood-2 GPU, looking forward to learning more from your findings!
 
Joined
Feb 19, 2021
Messages
45
Likes
9
Location
Germany
I think Aurelio did something similar, but never posted about it. I don't know if he has successful
 
Joined
Sep 27, 2016
Messages
291
Likes
502
I received the Wii Mini with the Hollywood-2 GPU. The seller informed me he bought it at a thrift store, found it had no video, took it apart and couldn't figure it out so sold just the motherboard which I snagged for $15. Turns out, he just didn't have the bluetooth plugged in lol. Unfortunately, he threw away the housing which would have been useful to get the serial number to find these Hollywood-2 GPUs.

The board revision I have is a RVO-CPU-10.

I measured the amp draw using a multimeter and custom regs (LDO removed and powered by a switching reg instead) on the Wii menu screen with 1 wiimote connected. Each voltage line I measure independently and I let the Wii run for 2 minutes for each of these voltage lines and gathered the average consumption. These are rough numbers as they are not in game, and I'm sure my multimeter is not 100% accurate but you get the idea.

1V - 1.1A (1.1 Watts)
1.15V - 1.5A (1.725 Watts)
1.8V - 0.41A (0.738 Watts)
3.3V 0.17A (0.561 Watts)

Total power consumption: 4.124 Watts


I couldn't test a regular 4 layer Wii as I do not have one at the moment, but we do have information already available for those from this thread:
Wii Working Currents

A regular 4 layer Wii with a Hollywood 1 GPU draws around 5.74 Watts.

Now we know.
 
Last edited:

dababy

.
Joined
Nov 7, 2021
Messages
96
Likes
24
Wow that is definitely worth looking into and super interesting lol i didn’t know those revisions, Hollywood 2 existed
 
Joined
Sep 27, 2016
Messages
291
Likes
502
There's a lot going on here and maybe could be cleaned up a bit, but finally finished the schematic for the essential system to run.

Screenshot (10).png


Still have to rename a couple caps and add some test pads, but it's basically done. This schematic so far has the Wii system and gcvideo using the XC3S200A fpga. I'll have to experiment with programming the external flash memory ic for the gcvideo, but read a few posts somewhere that a raspberry pi can be used and should be pretty simple.

I thought about adding the everything now on board so I can just power it up without extra wiring, but I think I may be getting ahead of myself. Lets just make sure the main system actually works before going the extra mile haha.

I sanded down the 4 layer bluetooth module and am tinkering with the idea of reverse engineering it as well and adding it on board. We'll see if I even decide to add bluetooth at all or not.

Next up is to finish routing the board. It's about 40% routed, but many more hours to go...
 
Last edited:
Joined
Apr 29, 2020
Messages
24
Likes
17
Very impressive work! I like that you decided to natively support GCVideo, works well for regular Wii as well as a portable Wii with a drive board supporting HDMI. Keep up the great work!!
 
Joined
Sep 27, 2016
Messages
291
Likes
502
Very impressive work! I like that you decided to natively support GCVideo, works well for regular Wii as well as a portable Wii with a drive board supporting HDMI. Keep up the great work!!
Thank you. VGA does look nice, but compared to the gcvideo HDMI, it looks a lot softer. The black bars are a bit annoying with HDMI, but it's not too bad. Plus, you can scale the image via software in Nintendont and remove the black bars. Unfortunately there's no solution with Wii games though. I still think it's worth the sharper image.
 
Joined
Apr 29, 2020
Messages
24
Likes
17
For the black bars you would need to have a custom GCVideo firmware that properly scales horizontally, but that requires knowing FPGA coding. I am wondering if some of the RVL_DD code could be back ported to GCVideo?
Also, will you be testing with the Hollywood-2 chip directly? I am asking because since you are testing many things (custom pcb, reballing chips, gcvideo…) I am wondering if using the Hollywood-2 chip might not give you false negative results whereas the board would work fine with a Hollywood-1 GPU.
 
Joined
Sep 27, 2016
Messages
291
Likes
502
Hmm, I believe @Aurelio mentioned he has plans to open source the Direct Drive at some point actually. I could be wrong.

I ordered another Wii mini today for further research, and hopefully it is a Hollywood-2... The goal is to use the Hollywood-2 in the end if possible, just to get that little extra battery life, but still have a lot of research to do/testing with it to see what makes more sense to use. But initially, I will be installing the regular Hollywood-1 for the first couple board revisions.

One test I'd like to try is to install the Hollywood-2 GPU on a regular 4 layer Wii board as well as swap the NAND chips since they are paired, and see if it even boots. I don't think the RAM and CPU are also paired with the NAND as the pinout for the NAND is only to the GPU. If Nintendo changed the pinout of the Hollywood-2 GPU, which I still have to look into, then I won't even bother.

I'll keep this worklog updated with my further research for Hollywood-2.
 
Joined
Sep 27, 2016
Messages
291
Likes
502
Was messing around last night with reballing and such. I recommend 0.5mm solder balls for the reball of the GPU even though stencils have them labeled as 0.6mm. Also, a heat pad or hot plate I strongly recommend as well. I have a fancy one at work, but a cheap one at home that I paid $10 for or something but it does the job. Having that board preheated really helps take a lot of stress off direct heat to the chips themselves.

408E3D71-9578-41DD-8758-C69DBC394157.jpeg

BF137AF2-7BF1-47AB-BC07-450B18E1E610.jpeg


Unfortunately, this came from a water damaged board that was working until I removed it. Maybe was more sensitive or something since there is a short on the 1V8 line directly on the GPU… but still good practice. I have 1 Hollywood-2 left I’m planning on trying to transfer to a regular 4 layer board today at some point. Killed that one too... solder mask peeled from under the actual GPU chip when removing... Didn't have that issue with the other 4 GPUs I've removed but I'll have to be more careful. I'm -$60 between the two of these... don't know how much I'm willing to lose for research purposes...

Hollywood-1 vs Hollywood-2 just for kicks:

73E91A6B-5EAC-4D78-8826-083249C420A6.jpeg

BD624721-33E0-45A3-9E48-540D36AF45DB.jpeg


Nice little die shrink right there.
 
Last edited:
Top