Tutorial  Updated

How to setup USBMLC to fix system memory error 160-0103 (failing eMMC) without soldering

What is this for?



If you are encountering Error Code 160-0103 "There is a Problem with the system memory" or your Wii U is freezing at bootup or during Factory Reset it is likely that the eMMC Chip is failing.
This guide goes into fixing this Error 160-0103, by using a USB HDD to replace the failing eMMC, in a similar way redNAND does by using the SD card.
This guide will reinstall the system files to the USB HDD. If the HDD is already Wii U formatted and you already have games and saves on the USB HDD they *should* be preserved, but if something goes wrong, data might get lost.
It can also be used together with the USB Partition plugin.

This is a new Method, although I did some testing, there might still be some bugs lurking, if you want something more tried and tested, then I recommend redNAND

System updates don't seem to work, so please don't use vWii Decaffienator with this


Please note there are other possible causes for the 160-0103 error (like a CBHC brick). Also there are other possible solutions to this problem. To see if this Tutorial is right for you, check out the Ultimate Wii U Troubleshooting Guide

1751761597303.png


What this will do


We will first install ISFShax, which is an early exploit that runs before the operating system loads. This allows us to patch the OS to redirects the reads and writes, that normally go to the eMMC, to a USB HDD. So you will need to have the SD card in the Wii U to use it, as that is now it's new internal memory.
In this tutorial we are only redirecting the MLC. If you plan to try some dangerous things in the future, you can still mess up your system SLC and SLCCMPT. If you want to use this for such experiments consider using full redNAND, where all 3 devices get redirected.

What you need


  • SD card with at least 2GB (If you really need to there is a way to do it with a smaller SD; but this guide requires 2GB for simplicity)
  • Reliable USB Storage Device (Flash drives are notoriously unreliable, if they are not branded for endurance)

It is recommended to only have one USB Storage device connected, since this plugin will simply use the first one it finds. Generally USB devices in the back seem to be detected first, but as HDDs need some time to spin up it's a race between them. If you want to have a HDD for vWii I recommend you look into the USB Partition plugin to consolidate both on one HDD. Connecting another USB storage for data management after boot is still fine.

Installing ISFShax


For installing ISFShax follow this tutorial: https://gbatemp.net/threads/how-to-set-up-isfshax.642258 but skip the "Autoboot" part for now.
If you already have ISFShax installed, make sure to update the ISFShax files on the SD to the latest version.

Optional: Partitioning the HDD


If you want to partition the HDD to use part of it for vWii or Homebrew:
  • follow the instructions for partitioning the USB disk here: USB Partition
  • copy the 5usbpart.ipx to wiiu/ios_plugins on the SD card
  • copy the 5usbpart.ipxor 5upartsd.ipx(for the SD emulation) to hax/ios_pluginson the SD card

Optional: Backing up savegames


If your Wii U can still run Tiramisu or Aroma: https://wiiu.hacks.guide/#/ you can use SaveMii to back up your save games.
If it can't you then you probably already used UDPIH to install ISFShax. Launch the recovery again using UDPIH and then use the Dump SLC + MLC option. Your SD card needs to have at least 64GB for that (for a 32GB console). You then need to merge mlc.bin.part files in the right order and can then extract the savegames using wfs-extract.

You can also backup your saves after setting up redNAND, even if your old system isn't booting anymore, see this post for more details: https://gbatemp.net/threads/fixing-...ing-rednand-with-isfshax.642268/post-10417998

If you lost the password to your NNID and can't recover it because the email doesn't exist anymore, you can transfer it. This is only a last resort option. If you still have the email address, it would be better to use the "Forgot Password" option now, as you won't have it on the new system.
There is also the option to use a password reset option on the PC. For that you need to create a Nintendo Account and then link the NNID to it. When linking it will ask for the password and give a reset option using the email.

Keep in mind this transfer only works on the same console and only if you don't do a Factory Reset.
To transfer the NNID It's enough to copy the account.dat file over.
You can use ftpiiu everywhere to save it to the PC for now. Just copy the whole /storage_mlc/usr/save/system/act/ folder to the PC. In that folder you find one subfolder for each user and in that subfolder you find an account.dat (it's a plain text file, you can open it with notepad). The folders are numbered in the order the users were created.

On the new rebuild mlc the numbering will start again with 80000001. If the user with the NNID had a larger number just create new users on the new system until you reach that number. Then you can copy the account.dat back and reboot.
After that you should be able to access the eShop and download the games again.

Installing the USBMLC plugin


Download the 4usbmlc.ipxof the latest release from here: https://github.com/StroopwafelCFW/wafel_usb_mlc/releases and copy it to both wiiu/ios_plugins and hax/ios_plugins on the SD card.

Rebuilding the MLC


  1. Download all the mlc system titles for your region from NUS. This can be done conveniently with MLCRestorerDownloader by @Xpl0itU. To use the MLCRestoreDownloader, you need to extract it and then copy the otp.bin from the SD card to it's directory. Then start the Downloader and select mlc and then your consoles region.
    You will get the output/MLC/{region} directory, which contains a directory for each title. In total there should be 52 titles totaling ~1.1GiB.
    If your console has an older firmware also get the latest SLC titles.

  2. On the root of your SD card 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. Put the wafel_setup_mlc.ipx on the SD card only in wiiu/ios_plugins.

  4. Make sure only the USB HDD you want to use is connected.
    If the HDD isn't already formatted by your Wii U, then the setup will format it, erasing all data on it

  5. 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. (shouldn't take longer than 30 mins)
    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 inital setup on the next boot.

  6. Check that the wafel_setup_mlc.ipx deleted itself from wiiu/ios_plugins folder on the SD.

  7. Select Patch (sd) and Boot ios (slc) again. If everything worked, the initial setup should launch.

  8. Follow through with the initial setup.

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

Copy the plugins to the SLC


For now you need to have the SD card inside the console to boot the USBMLC. Without the SD it would just boot your old system from the internal memory.
To copy the files to the SLC so it also works without the SD in go back to the ISFShax guide and follow the instructions there for setting up Aroma and then copying the plugins to the SLC.
**Keep in mind, this will be undone by a factory reset**

Setting up autoboot


To not have to navigate the minute menu on every boot create the file sd:/minute/minute.ini with the following content:
INI:
[boot]
autoboot=1
autoboot_timeout=1

This will automatically load the plugins installed to the SLC. You can also set autoboot to 3 to load the plugins from SD, which is nice for testing new plugins.
 
Last edited by SDIO,
Since the USB is what the MLC will be booting from, could one possibly use SATA as storage this way instead of the front SD?
I'd be down to use a sandisk endurance drive to help test.
 
Last edited by DolphinPussy,
Okay, I got the stuff I need, and rebuilt a fused USBMLC plugin with the nocrypt applied.
I'll be testing it out, and will share if it doesn't have any issues.

I removed suspend_process, resume_process, pm_suspend_count_hook; I am using an SSD as USB, so this is unnecessary for me.
If someone here is using a rust drive as MLC (why would you) or it is required for initialization for some reason, then I shall re-add the hooks

I want to avoid that because i have 100 gigs of save data and games. All i want to do is dump the Wii U OS and all the default apps.
Theoretically, by using SDUSB, you can migrate all your old GameUSB/EMMC game data to the new SD partition, allowing you to conserve your data, and when you install USBMLC, your games will still be present in the SDUSB partition, and shown in the new MLC.
This might allow you to transfer your games to the SATA game drive too thanks to the hard work of @SDIO, haven't tried YET.
 
Last edited by DolphinPussy,
Does the vWii work with it? Because i know vWii doesn't work with redNAND, and i do really want to play wii games.
 
Can someone tell me how i can Homebrew my Wii U (and the vWii) with this running? Or is it so simple that i can make an folder called "homebrew" on the SD card and put all the homebrew stuff there?
 
So i managed to fix my Wii U transfer title (the one that was causing my system memory error) just by installing the title again with NUSspli... i have isfshax and usbmlc, how do i unistall the usbmlc without formating the whole drive? (i know there is a guide to uninstall isfshax but i am not sure this one here)

I will be transferring all my data to the other Wii U, then format my original one and then check for errors on my NAND just to see if it was failing for real.

Also does the Wii U have protection for bad sectors? Like when we format it, does it check for bad sectors and installs things accordingly?
 
How did you install the title to the eMMC then if you weren booting it?
You can just boot the MLC by not having the usbmlc plugin. Just remove it from your ios_plugins folder.

But to check what the issue is, I would recommend just dumping the sys crash logs.
 
How did you install the title to the eMMC then if you weren booting it?
You can just boot the MLC by not having the usbmlc plugin. Just remove it from your ios_plugins folder.

But to check what the issue is, I would recommend just dumping the sys crash logs.
Took my sd card out, and launched Aroma from my health and safety app.

i will dump the crash logs and upload them here
 
If you want to have a HDD for vWii I recommend you look into the USB Partition plugin to consolidate both on one HDD
I’ve set things up so that after configuring USBMLC, the last partition on the drive is used as the MLC replacement. I have a few questions about how this behaves:
Is this “emulated” MLC partition formatted as WFS internally so installing games they are written directly to this emulated MLC?
Does this setup inherit the same limitations as using the USB partition plugin with a real MLC (such as the ~4 TB limit and max 4 partitions)?
Since the MLC is effectively moved to USB, does this mean there could not be separate WFS USB storage anymore—everything is treated as one large internal-like storage with all content consolidated there?
And finally, does this setup support only a single USB drive at a time?
 
It uses whatever the Wii U would normally see as USB storage. If you use the USB partition plugin. It would use the partition according to the plugin.
The Wii U will see the USB storage as MLC.
You can connect another USB device and use that as normal USB storage, but then it's a race between the two, which shows up first on boot
 
  • Like
Reactions: pankos
Please troubleshoot one another case here:
Installed ISFShax and USBMLC on a Jap console with dead MLC (when inquiring under minute or WiiUident it simply say no MLC attached), installed with US 5.5.6U firmware. minute reported 5.5.5+ so no need to touch SLC titles.

The disk used is a 240G SSD in an enclosure with Y cable. partition one FAT32 80GB with 0c as attribute, the rest is partition two in NTFS, set as Active partition. The OS boots fine after installing MLC titles on USB and passed initialization.


But I want to remove the SD and only use USB, you mentioned this is doable and compatible with USB partition, but when I copy files to SLC for fastboot the console stuck at boot. Reinsert the SD and it booted again.

I understand on SD and on SLC you need to have different ios_plugins. these are mine (all took from corresponding github repo with latest release I can find):

Running on SD, working:
00core.ipx
4usbmlc.ipx
5isfshax.ipx
5payldr.ipx
5usbpart.ipx

On /storage_slc/sys/hax, stuck at boot, no video signal:
fw.img (fastboot, 316kb)
ios_plugins folder
--00core.ipx
--4usbmlc.ipx
--5isfshax.ipx
--5payldr.ipx
--5upartsd.ipx

Or I need 3 partitions for this to work? I mean partition 1=FAT32 for SD emulation+vWii games, partition 2= USB disk recognized by OS, and partition 3 as USB MLC? Thank you in advance.
 
It looks correct and I would expect it to work. Can you try with the plugin without SD emulation, in case that causes a problem with USBMLC?
 
It looks correct and I would expect it to work. Can you try with the plugin without SD emulation, in case that causes a problem with USBMLC?
Replaced 5upartsd.ipx on SLC with 5usbpart.ipx then renamed fw.img to fw1.img on SD root to make sure it loads from SLC, the console booted fine.

I also noticed under vWii, USB loaders can recognize wii backups under SD:/wbfs, so the FAT32 partition is also working.
 
Last edited by SDIO,
  • Like
Reactions: neverendsDull

Site & Scene News

Popular threads in this forum