Tutorial  Updated

How To: Upgrading / Rebuilding Wii U Internal Memory (MLC)

Warning


This tutorial is only for advanced users and has a serious risk of bricking the console. Make sure you read it completely before executing any step and that you understand every step and its implications. With de_Fuse everything should be unbrickable if you know how.

You should at least have a backup of SLC and SLCCMPT, as we can’t rebuild them at the moment. (can be done in minute_minute, so there is no excuse). We had two cases where the SLC corrupted for an unknown reason, so a backup is essential.

What is this for?


This tutorial goes into rebuilding the MLC from scratch on a clean media. This can become useful, if
  • the MLC (eMMC) chip died or corrupted the filesystem
  • the SCFM (SLC cache for MLC) became inconsistent
  • you want to upgrade the capacity of the internal storage.
  • you want to set up a redNAND without SCFM
If you have a bad eMMC chip, but the recovery still works (which is most likely), then there are also ways to fix it without a complete reformat.
If the LED is blinking blue, you have a SLC problem and not a MLC problem, so this tutorial won't help with that.

It will format your MLC, so all data on the internal Wii U memory will be lost.

Update


13.03.2024 - The wafel_setup_mlc.ipx now uses a built in IOSU function to create system folders, that should make sure the permissions are right, which caused problems with game updates in the past. It will also recreate the update folder (so system updates won't be blocked by that)

Prerequisites


Backing up save games



Do a backup of what you want to preserve, like savegames and Miis.
For Backing up Save games, it is recommended to use SaveMii. That requires that you have Tiramisu or Aroma running.
You can also move your savgames (or whole games) to USB, which should still be readable. When recreating the users after the rebuild, you just have to be carefull to create the users in the right order, to make the ID’s match. A backup by other means (Like savemii) is still recommended.
If you are using this tutorial to fix a failing eMMC you might not be able to use the other Backup options. In that case use the Dump MLC option in the Recovery. You can extract your data from there using wfs-extract.

Storage Options


The Wii U has two ways of connecting internal memory, each with its own drawbacks:
  • SDIO – On retail consoles the internal memory is a eMMC chip connected through an internal SDIO bus to the Latte chip. This SDIO bus can also use SD cards (hence the name SD IO). Access to media connected on the SDIO is cached through a file on the SLC, presumably to reduce writes on the MLC. This cache is called SCFM and it is the reason why you always need to backup / restore SLC and MLC together and doesn’t allow easy swapping of multiple SDs.
    IOSU also only supports 3 sizes of media on this bus: <=8GB, 32GB and 64GB. The size will be limited to the biggest it fits, the rest is unusable. This bus is limited to 26MB/s (4bit@52Mhz). For replacing the eMMC with an micro SD you can use MLC2SD or a similar Interposer. Soldering and micro SD adapter using wires, works too.
    It is recommended to use a 64GB Sandisk Max Endurance card (But similar card should also be fine), since the Wii U is known for writing much.

  • SATA – The Disc drive is connected through SATA, the connectors are different but the electrical signals are still the same. Some Kiosk consoles used this Interface to connect to a HDD. The type of the SATA device can be configured in the SEEPROM, so we can configure our retail consoles to also use a SATA HDD / SSD.
    NOTE: @QuarkTheAwesome is building an SATA adapter for that purpose, available soon™.

    The advantage of using this interface is, that the size isn’t limited (well WFS is limited to 2TB) and it doesn’t use SCFM, which makes some things easier and improves performance in some circumstances. The obvious disadvantage is that you can’t use your disc drive anymore. Without the Disc Drive vWii System Menu doesn't work. vWii Injectes / Wii VC from the eShop can still be used, but only when installed to USB. Also you still might need to disable the MLC on the SDIO bus, or else the wii u might still use the SDIO one if the SATA device takes too long to init.

  • redNAND – redirects the read / writes to one or more of the internal storage devices to paritions on the SD card. You can create an arbitrary size MLC partition on the SD card and set it up using this tutorial. SCFM can be easily disabled for the redNAND. The 64GB limit does not exist for redNAND if the SCFM is disabled. For redNAND we have a dedicated Tutorial here: https://gbatemp.net/threads/fixing-...-soldering-using-rednand-with-isfshax.642268/

Does that mean we can’t get more than 64GB on the SDIO bus? No, BUT it requires ISFShax / defuse to boot the console every time. @GaryOderNichts created a patch to remove the limits and always use the maximum size of the SDIO media and it also disables SCFM, because SCFM doesn’t work with more than 64GB and disabling SCFM improves performance and reduces wear on the SLC, at the cost of increasing wear of the MLC media. I packaged this patch in wafel_unlimit_mlc.

Rebuilding the MLC


Now that you decided what media you want to use as MLC, we can start with the actual process:
  1. Download all the mlc system titles for your region from NUS. This can be done conveniently with MLCRestorerDownloader by @Xpl0itU. Copy the otp.bin from the SD to the folder with the MLCRestorer Downloader so it can get the common key from there.

    You will get the output/MLC/{region} directory, which then contains a directory for each title. In total there should be 52 titles totaling ~1.1GiB.

    If your console has an old firmware it might also be necessary to get the latest SLC titles.

  2. On the root of your SD card (the one that will go in the front slot, not the MLC replacement) create a folder wafel_install. Then copy all 52 titles to the wafel_install folder, so it now contains the 52 subfolders, one for each title. If you want to reinstall / update SLC titles, you would also put them there.

  3. Attach your MLC media of choice. (If you are using SATA got to Backup and Restore, then at Set SATA Device in SEEPROM select GEN2-HDD (Kiosk CAT-I with HDD)).
    For installing MLC2SD look here: https://gbatemp.net/threads/using-n...emmc-fix-160-0103-system-memory-error.636361/ at the Soldering section.

  4. If you install to eMMC / MLC2SD, got to Backup and Restore and select Erase MLC and Delete scfm.img. If the Erase MLC fails, you can ignore that if it wasn't formatted as MLC before (from a failed install or so).

  5. Put the wafel_setup_mlc.ipx on the SD card in /wiiu/ios_plugins. If you want more than 64GB on SDIO you also need to put the wafel_unlimit_mlc.ipx there. If you install with wafel_unlimit_mlc.ipx, it will be permanently required and therefore also permanently requires ISFShax or defuse.

  6. [Optional, only when using defuse] Open the serial monitor on the PC (Putty / minicom) for defuse to see the setup progress. There will be no display output in the Wii U itself. I attached the whole serial log of a successfull install as a reference.

  7. Select Patch (sd) and boot IOS (slc) in minute to start the setup of your fresh MLC.During the setup you won't see anything on the screen. You have to go by the power led.
    The power LED will flash blue, while it is installing the titles.
    if something goes wrong the LED will turn orange, but it will continue as long as it is blinking.
    The LED will become static once it finished. You can now power off the console.
    If the led is blinking red, something fatal happend. Ask for help.
    During the setup a short log gets written to the SD: wafel_setup_mlc.log.
    In the end it will enable the initial setup on the next boot.

  8. Remove the wafel_setup_mlc.ipx from /wiiu/ios_plugins on the SD.

  9. Boot the console. Patch (sd) and boot IOS (slc)

  10. If everything worked, the initial setup should launch.

  11. (Optional) delete the wafel_install folder to free up space

ISFShax only: Finalizing


If you are using the wafel_unlimit_mlc.ipx you need to keep ISFShax installed. If you haven't done already complete the "Booting without SD" step form the ISFShax tutorial but also add the wafel_unlimit_mlc.ipx renamed to 9unlimit.ipx to the /storage_slc/sys/hax/ios_plugins directory.
If you are not using the wafel_unlimit_mlc.ipx you can either uninstall ISFShax or keep it as a brick protection. If you keep it complete the "Booting without SD" step form the ISFShax tutorial.
The Wii U should now boot automatically if you don't have an SD in.
You probably also want to enable the autobooting now.

See Also


https://gbatemp.net/threads/wii-u-internal-storage-upgrades-are-possible.635629/

Pictures


512 GB SD card:
img_20230702_021647-jpg.381270


@QuarkTheAwesome 120 GB SSD:
img_2709-jpg.381271


Thanks


 

Attachments

  • serial-log.txt
    87.6 KB · Views: 94
Last edited by SDIO,

fate6

Haha, I killed a Pumpkin!
Member
Joined
Aug 2, 2014
Messages
444
Trophies
1
Location
[fate6@Canterlot ~]$
XP
2,396
Country
United States
Hamlo!

sorta killed my wiiu cause i lost the rednand sd it had...

its a JP system that I had region swapped via a rednand on an SD card, I dont have that SD card anymore but I do have a backup of the files that where on it, using those I can boot up the minute menu so I grabbed the files from lazr's thread to just region swap the console and not have to worry about a rednand and proceeded to delete the MLC and the scfm.img.

No problems until I select patch from SD and boot SLC, the LED on the console never flashes and never makes a log, I swap out the newer mlc setup plugin for the older one and that one does have the LED flashing but its yellow.

I leave it over night and in the morning its still going so I shut it off and now we are here, the MLC/SLC did work even when i did have the rednand so IDK.
 

Attachments

  • wiiu-logs.zip
    373.4 KB · Views: 21

SDIO

Well-Known Member
OP
Member
Joined
Feb 13, 2023
Messages
2,969
Trophies
2
Age
29
XP
2,288
Country
Germany
what is your goal? Rebuild the internal MLC with the new region or do you want to rebuild your redNAND?
 

fate6

Haha, I killed a Pumpkin!
Member
Joined
Aug 2, 2014
Messages
444
Trophies
1
Location
[fate6@Canterlot ~]$
XP
2,396
Country
United States
Why do you have the SLC titles on the sd card?


I did what? uh...

So removed all the files from wafel_install and redownloaded just the JP MLC, now i removed the scfm then the mlc in that order plus still using the 1.0 mlc setup plugin is hitting with a flashing blue LED.
i'll report back with results.

if that gets me back into the WiiU then ima back up everything again before I try swapping to US.

EDIT: yea that did it, now that the system is working again i'll attempt that region swap tho im not sure why the newer mlc setup just hung and didnt do anything not even a log

EDIT2: yea newer mlc setup just does nothing, ima post in your discord @Lazr1026

EDIT3: in case anyone in the future sees this and has similar issues, update everything, minute_minute included, that plus updating isfshax superblocks seems to have done it.
 
Last edited by fate6,
  • Like
Reactions: LightRayn

Lanfear624

Member
Newcomer
Joined
May 1, 2024
Messages
6
Trophies
0
Age
35
XP
15
Country
United States
First, thank you SDIO and everyone else involved in this thread for compiling this information.

I'm working through this fix and have just finished the soldering of the NAND-AID. Can someone please confirm what format the SD card that goes into the NAND-AID should be set to? I see a lot about cards that go in the front SD slot need to be FAT32 but does that also apply the internal card? If FAT32 is in fact required, the SD card I purchased only gives me the options of NTFS or exFAT, does that pose a problem?
 

TheSunnyMachine

Active Member
Newcomer
Joined
Feb 6, 2024
Messages
34
Trophies
0
Age
43
XP
98
Country
United States
First, thank you SDIO and everyone else involved in this thread for compiling this information.

I'm working through this fix and have just finished the soldering of the NAND-AID. Can someone please confirm what format the SD card that goes into the NAND-AID should be set to? I see a lot about cards that go in the front SD slot need to be FAT32 but does that also apply the internal card? If FAT32 is in fact required, the SD card I purchased only gives me the options of NTFS or exFAT, does that pose a problem?

No need to format. When you do the delete mlc step, that will prepare the card for the install.
 

Lanfear624

Member
Newcomer
Joined
May 1, 2024
Messages
6
Trophies
0
Age
35
XP
15
Country
United States
So I've re-assembled the wii U after installing the NAND-AID and performed the Erase MLC and Delete scfm.img listed in step 4. I moved the MLC/SLC titles into the wafel_install folder and put wafel_setup_mlc.ipx in the plugins folder. When I go to run "Patch (sd) and boot IOS (slc) I get the error shown in the attached. I've downloaded all the files from links provided in the last ~2 weeks so I don't think I would have gotten mis-matched versions. Any recommendations?
 

Attachments

  • 20240504_094137.jpg
    20240504_094137.jpg
    597.3 KB · Views: 30

Lanfear624

Member
Newcomer
Joined
May 1, 2024
Messages
6
Trophies
0
Age
35
XP
15
Country
United States
Your stroopwafel is to old. Get the latest wafel_core.ipx
Unfortunately still no luck. I've made sure I had the latest wafel_core.ipx (reduce-logging-v1.0) but I still get the same message. I tried the two previous releases (trampoline-v1.0 and prshotp-v1.1) for good measure and I get the same deal. Interestingly, no matter which version I tried, the stroopwafel abi version listed in the error code always stays the same (0xC9CC49D8).

I feel like the next step would be to make sure my minute is up to date, but to that I have a question. To change the version of minute do you have to go through a reinstall or just swap files on the SD card?
 

SDIO

Well-Known Member
OP
Member
Joined
Feb 13, 2023
Messages
2,969
Trophies
2
Age
29
XP
2,288
Country
Germany
I don't know what you did, but you didn't update stroopwafel... The version it shows there indicates it is from before the prshotp stuff
 

Lanfear624

Member
Newcomer
Joined
May 1, 2024
Messages
6
Trophies
0
Age
35
XP
15
Country
United States
I don't know what you did, but you didn't update stroopwafel... The version it shows there indicates it is from before the prshotp stuff
All I did was replace the wafel_core.ipx file in the plugins folder of the SD card. Is there a secondary step that needs to be performed?
 

SDIO

Well-Known Member
OP
Member
Joined
Feb 13, 2023
Messages
2,969
Trophies
2
Age
29
XP
2,288
Country
Germany
No, but somewhere you get the old file in. Maybe in your download folder when it automatically renames the new file if one with the same name already exists
 

Lanfear624

Member
Newcomer
Joined
May 1, 2024
Messages
6
Trophies
0
Age
35
XP
15
Country
United States
I found the problem........I had named the folder iso_plugins rather than ios_plugins. I'm happy to report that the install went fine and my once bricked wii-u is functioning again. Thank you for all your help!
 
  • Like
Reactions: LightRayn

moflihmorad

Member
Newcomer
Joined
May 27, 2024
Messages
7
Trophies
0
Age
39
XP
33
Country
Morocco
NEED HELP !

hi guys, i have the famous hynix eMMC
and am on de-fuse, everything is working fine am on Minute menu using an SDHC card
but i think i have a problem!!

Title 00050010-100040ff is broken its the System Updater OSv55 (all region)
i tried WiiUdownloader and downloaded the Title, but its impossible to decrypt the file
- Error "could not read 32768 bytes 00050010-100040ff/code/app.xml unexpected EOF"
and when i launch "Patch (sd) and boot IOS (slc)" i get this error:
-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Installation Failure detected
- Error value: -262169
- Package:
</vol/mcp_rawpkg/wafel_install/00050010100040ff>
- Title: 00050010-100040ff (0x083c)
- AppType: 1000000a
- Platform: Cafe
- Target dev: slc01
-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

And the LED starts blinking Orange
at the end i get
MLC SETUP FINISHED with WARNING!

when i reboot the console and select "" again (of course after deleting wafel_setup_mlc.ipx ) i get this
at the very end of the serial console
--------------------------------------------------------------------------------------------------------------------
00:00:26:421: MCP: life time number of fatal errors - 48
00:00:26:424: MCP: storing current logs as '/vol/system/logs/49.log'
00:00:27:039: MCP: Finished storing current logs as '/vol/system/logs/49.dsc'
alive
00:00:31:412: IFNET_ETH: Link DOWN.
alive
alive....
--------------------------------------------------------------------------------------------------------------------
LED remains purple, nothing on screen

on wafel_setup_mlc.log i get this
Install 00050010100040ff: fffbffe7
InstallInfo 0005001010040200: 00000000

i just see FATAL everywhere :D

00;00;25;547: SystemFatal - Core 0 resume in error display (6)
ector 4 registered on core 1.
00;00;25;547: SystemFatal - Core 0 resume in error display (6)
ector 8 registered on core 1.
00;00;25;547: SystemFatal - Core 2 resume in error display (6)
0x10045E80
00;00;25;547: !!!Abandoned Interrupt 5 for process 65535
for vector 6 registered on core 1.
00;00;25;547: !!!Abandoned Interrupt 2 for process 65535
for vector 5 registered on core 1.
00;00;25;547: Process 6 Delayed Start Acquire
2, Default Thread 0x10045140
00;00;25;600: OSSetting_SynchronousPrinting DISABLED
dler for vector 3 registered on core 1.
00;00;25;607: OSSetting_CrashDumpType 0, ng DISABLED
dler for vector 3 registered on core 1.
MINI dump after crash
6 Delayed Start Acquire
2, Default Thread 0x10045140
00;00;25;645: TCL(6): init DONE
Start Acquire
2, Default Thread 0x10045140
00;00;25;838: VPADInit() depricated, no need to call
ult Thread 0x10045140
00;00;25;838: VPAD Init end, BPERF: (0/25958274) Title PID=6
vector 3 registered on core 1.
00;00;25;840:
<><><><><><><> fatal error process called <><><><><><><>
egistered on core 1.
00;00;25;840: TYPE: Unknown(10)
rupt 5 for process 65535
for vector 6 registered on core 1.
00;00;25;840: CODE: 1601400
Core 0 resume in error display (6)
ector 8 registered on core 1.
00;00;25;840: Process: 2
7 exited with interrupt handler for vector 2 registered on core 1.
00;00;25;840: Internal Code: 0
ng Driver "NSYSUVD" (master 1)
00;00;25;840: Function __FSCheckAndSwitchErrorProcByMediaState, Line:189

00;00;26;049: ERPRC: System version: 5.5.5 E
rProcByMediaState, Line:189


using a Sandisk Ultra 64gb as MLC
using Defuse with SDHC 2gb card
 

moflihmorad

Member
Newcomer
Joined
May 27, 2024
Messages
7
Trophies
0
Age
39
XP
33
Country
Morocco
Thank you SDIO for fast response

UPDATE of my progress
i found that it was an incomplete OSv255 title, probably a failed download... i downloaded the title and things went smoothly for MLC rebuilding, LED flashing blue and finished without errors...
BUT....
when i reboot the console i chose "Patch (sd) and boot IOS (slc) " it starts but it get stuck forever
in this part

=================================
00;00;20;648: SWKBD: client version 3.
e in AssignTitlePatch.
ReferAcctLaunch
00;00;20;648: SWKBD: thread=0x100457e0, stackSize= 63 KB, stackBase=0x1069b4f8, stackEnd=0x1068b500 (SwkbdCreate)
00;00;20;895: ==== sysapp:dump data 0 ====
ckSize= 63 KB, stackBase=0x1069b4f8, stackEnd=0x1068b500 (SwkbdCreate)
00;00;20;895:
WKBD: client version 3.
e in AssignTitlePatch.
ReferAcctLaunch
00;00;20;895: ==== sysapp:dump data 0 ====
e [3133800/3670016]
cctLaunch.
ize = 989763(KB), 966(MB)
=================================
00;00;20;895:
pl_entry
1 16:43:44
ction done in AssignTitlePatch.......

i waited half an hour for progress but nothing ... repeated the process 3 times it always get stuck in there.
if i repeat the process do i need to restore the NAND SLC to its initial image ?
BTW do the disc drive needs to be attatched during this process ?!

thank you guys
 

moflihmorad

Member
Newcomer
Joined
May 27, 2024
Messages
7
Trophies
0
Age
39
XP
33
Country
Morocco
i had no other warnings for any of the titles "as far as i know"
am not sure what setup log is, but if you mean the serial console log i get when i start defuse, i joined it
i tried different SD cards (32gb, 64gb)
i have dumped OTP, SLC, SLCMPT, SEEPROM without any issues
i flashed the BOOT1_SLCCMPT.IMG so i can use bigger SD cards i hope its the way to go because it was not mentioned in the tutorial...
am using a 2Gb toshiba sd card..
am really confused!!

Thank you
 

Attachments

  • setup_log.txt
    4.3 KB · Views: 17

Site & Scene News

Popular threads in this forum

General chit-chat
Help Users
    Psionic Roshambo @ Psionic Roshambo: Micheal J Cox is running for mosquito control here lol his one sign says put Cox in your box +1