miigrate: Recover and move Wii U & vWii savedata and Miis to a new console

Objective​

Recover the Wii U & vWii savedata and Miis from one console onto a different one when you can no longer reach the homebrew apps on the original console (because of a hardware or software problem), using miigrate and SaveMii /ProcessMod.

miigrate​

1786292057349.png


miigrate is a Linux/Windows tool that rescues Wii U and vWii savedata and Miis from a dying or broken console and packages them for restore onto a different console with SaveMii /ProcessMod — offline, straight from dumps, with no working homebrew needed on the original console.

It reads Wii U savedata (game and system titles) and the Mii databases from a WFS image or drive (the mlc internal storage or a usb drive), and vWii savedata + Miis from a SLCCMPT (Wii NAND) dump — including injects (Wii/GameCube games installed as Wii U titles, whose saves live on the vWii NAND). The result is a SaveMii /ProcessMod-compatible SD backup you drop onto a card and restore on the new console; a single --type auto run can do the whole console at once.

Prerequisites​

  • A dump of the original console's MLC.
  • The original console's Wii U USB drive (recommended) or a dump/image of it, if the console used one.
  • A dump of the SLCCMPT (vWii / Wii NAND).
  • The original console's OTP and SEEPROM keys (otp.bin, seeprom.bin).
  • An SD card set up to boot Aroma, with SaveMii /ProcessMod installed.
You can produce these dumps with a tool such as minute (OTP, SEEPROM, MLC, and SLCCMPT). See How to set up ISFShax + Stroopwafel and/or How to set up redNAND to fix system memory error 160-0103 (failing eMMC) without soldering for details.

There are also other ways to obtain a SaveMii /ProcessMod-compatible savedata + Miis dump of the failing MLC. See this post.

Using miigrate to extract the data​

1. Open a new terminal in your computer. To read directly from a physical Wii U USB drive you need superuser privileges: on Windows use a PowerShell running as Administrator; on Linux use sudo.

2. Create a new folder rec_wiiu in your home directory and copy into it the files you obtained from the original console:
  • the MLC dump,
  • the SLCCMPT dump,
  • otp.bin,
  • seeprom.bin.
  • A USB image is optional (and discouraged) — if you still have the physical Wii U USB drive, it is better to read it directly (steps 5–7) than to image it first.
* In --type auto mode, miigrate identifies these files inside the --input folder by their content, so their file names don't matter. You may omit any of the three images (MLC, USB, SLCCMPT) and it will back up whatever it finds — but the OTP is always required, and the SEEPROM is required to read a USB image. If it finds two candidates of the same kind (for example two MLC images, or two OTP files) it stops and asks you to remove the extra one.

3. Download the miigrate build for your operating system (Windows or Linux) and place it in the rec_wiiu folder. On Linux, make it executable:

chmod +x ~/rec_wiiu/miigrate

4. Insert the SD card (with Aroma) into your computer and note its path — typically d:\ on Windows or /mnt/d on Linux.

5. [Optional — only if reading a physical USB drive] Before plugging the Wii U USB drive in, list the current drives so you can spot the new one afterwards:
# Linux
lsblk

# Windows PowerShell
Get-WmiObject Win32_DiskDrive

6. [Optional] Plug in the Wii U USB drive. It is encrypted and cannot be read by the OS, so cancel any prompt asking you to format the disk!

7. [Optional] Identify the Wii U USB drive's device name by comparing the listing with the one from step 5:
# Linux — look for the new /dev/sdX entry
lsblk

# Windows PowerShell (as Administrator) — look for the new \\.\PhysicalDriveX
Get-WmiObject Win32_DiskDrive

8. Run miigrate. To back up savedata and Miis from the MLC and SLCCMPT only (no USB drive):

# Replace SD_PATH_HERE with your SD path (d:\ or /mnt/d ...)
cd ~/rec_wiiu
./miigrate --type auto --input ~/rec_wiiu --output SD_PATH_HERE
To also read the physical Wii U USB drive:

# Linux
# Replace SD_PATH_HERE with your SD path, and YOUR_DEVICE_HERE with the device from step 7
cd ~/rec_wiiu
sudo ./miigrate --type auto --input ~/rec_wiiu --usb YOUR_DEVICE_HERE --output SD_PATH_HERE
# Windows — in a PowerShell running as Administrator
# Replace SD_PATH_HERE with your SD path, and YOUR_DEVICE_HERE with the device from step 7
cd $HOME\rec_wiiu
.\miigrate.exe --type auto --input $HOME\rec_wiiu --usb YOUR_DEVICE_HERE --output SD_PATH_HERE

If you prefer, you can set `--output` to any folder on your computer. After the extraction, copy its contents to the root of your Aroma SD card.

9.
user01@user01:~/rec_wiiu$ sudo ./miigrate --type auto --input ~/rec_wiiu --usb /dev/sdh --output /mnt/d
miigrate 0.3.0
Scanning /home/user01/rec_wiiu for dumps...
Detected inputs:
OTP: /home/user01/rec_wiiu/otp.bin
SEEPROM: /home/user01/rec_wiiu/seeprom.bin
MLC: /home/user01/rec_wiiu/mlc.img
SLCCMPT: /home/user01/rec_wiiu/nand.img
USB: /dev/sdh (--usb)


=== USB drive ===
Extracting savedata -> /mnt/d/wiiu/backups/batch/2026-08-09T104730
[WiiU] Mario Bros. (00050000-10107d00) -> slot 0 [Using Default Permissions]
[WiiU] Skylanders Giants (00050000-10116000) -> slot 0 [Using Default Permissions]
[WiiU] Skylanders SWAP Force (00050000-10140400) -> slot 0 [Using Default Permissions]
[WiiU] JUST DANCE® 2015 (00050000-10176f00) -> slot 0 [Using Default Permissions]
...

Summary -> /mnt/d/wiiu/backups/batch/2026-08-09T104730
games (default permissions): 8
system titles (template perms): 0
unknown system titles skipped: 0

=== MLC (internal storage) ===
Extracting savedata -> /mnt/d/wiiu/backups/batch/2026-08-09T104730
[WiiU] New SUPER MARIO BROS. U (00050000-10101e00) -> slot 1 [Using Default Permissions]
[WiiU] Nintendo Land (00050000-10102100) -> slot 0 [Using Default Permissions]
[WiiU] MARIO KART 8 (00050000-1010ed00) -> slot 1 [Using Default Permissions]
[WiiU] JUST DANCE 4 (00050000-1010f000) -> slot 0 [Using Default Permissions]
...

Summary -> /mnt/d/wiiu/backups/batch/2026-08-09T104730
games (default permissions): 23
system titles (template perms): 14
unknown system titles skipped: 0

Mii repositories:
FFL: backed up (1004a200) -> /mnt/d/wiiu/backups/mii_repos_bckp/mii_bckp_ffl/0
FFL_C: repo created -> /mnt/d/wiiu/backups/mii_repos/mii_repo_FFL_C
ACCOUNT: backed up -> /mnt/d/wiiu/backups/mii_repos_bckp/mii_bckp_account/0
ACCOUNT_C: repo created -> /mnt/d/wiiu/backups/mii_repos/mii_repo_ACCOUNT_C

=== vWii (SLCCMPT) ===
Extracting vWii savedata -> /mnt/d/wiiu/backups/batch/2026-08-09T104747
[vWii] Skylanders (00010000-53535050) -> slot 0
[vWii] Wii Play (00010000-52484150) -> slot 0
...

Summary -> /mnt/d/wiiu/backups/batch/2026-08-09T104747
vWii titles: 8

Mii repositories:
RFL: backed up -> /mnt/d/wiiu/backups/mii_repos_bckp/mii_bckp_rfl/0
RFL_C: repo created -> /mnt/d/wiiu/backups/mii_repos/mii_repo_RFL_C

Notice that a title installed on both the USB drive and the MLC is backed up twice — as slot 0 (USB) and slot 1 (NAND) — exactly as SaveMii itself does it. Titles that are skipped or that behave unexpectedly (a GameCube inject, a vWii inject with no savedata on the NAND, an extraction failure, …) are listed by name at the end of each pass so you know exactly what was left out.

10. On the SD card, miigrate has created (<SD> is d:\ on Windows or /mnt/d on Linux):

<SD>/wiiu/backups/batch/<TIMESTAMP_1>/ --> Wii U savedata (WFS-X)
<SD>/wiiu/backups/batch/<TIMESTAMP_2>/ --> vWii savedata (ISFS-X)

<SD>/wiiu/backups/mii_repos_bckp/mii_bckp_ffl/<slot>/ --> Wii U Mii DB backup
<SD>/wiiu/backups/mii_repos_bckp/mii_bckp_account/<slot>/ -->Account Miis backup
<SD>/wiiu/backups/mii_repos_bckp/mii_bckp_rfl/<slot>/ --> vWii Mii DB backup

<SD>/wiiu/backups/mii_repos/mii_repo_FFL_C/ --> Wii U Mii DB, importable repo
<SD>/wiiu/backups/mii_repos/mii_repo_ACCOUNT_C/ --> Account Miis, importable repo
<SD>/wiiu/backups/mii_repos/mii_repo_RFL_C/ --> vWii Mii DB, importable repo

11. Move the SD card to the new Wii U and restore the data you need with SaveMii /ProcessMod.

Using SaveMii /ProcessMod to restore data​

Restoring savedata​

First install the game. Then, from Wii U Save Management, select the game and choose Restore savedata. Press (X) (Change BackupSet) to pick the BackupSet that holds the savedata — those created by miigrate are tagged with a WFS-X prefix.

Next, set up the users section:
  • If the users on the new console are the same (same profile id and count) as on the original console, choose the From: All users / To: Same user than Source option.
  • If they differ, set From User / To User for each profile save you want to migrate, and include the common savedata as well (Common Save: yes) at least once.
Then press (A) to restore.

Alternatively, select the BackupSet globally first: from the main menu open BackupSet Management, choose the miigrate set (its tag begins with WFS-X) and press (A) to select it. Then go to Wii U Save Management → your title → Restore savedata and restore — it uses the BackupSet you selected.

If all the games are already installed on the new console, you can use Batch Restore.

For a detailed description, see the Savedata section or Batch tasks in the SaveMii /ProcessMod READMEs.

Restoring vWii savedata​

vWii saves are managed separately from Wii U titles. First make sure the vWii game or channel is installed on the console's vWii. Then, from vWii Save Management, select the title and choose Restore savedata. Press (X) (Change BackupSet) to pick the BackupSet — miigrate's vWii sets are tagged with an ISFS-X prefix — then press (A) to restore. As with Wii U titles, you can instead pre-select the set from BackupSet Management, or use Batch Restore if every title is already installed.

Note: if the title does not appear in SaveMii, or you have trouble restoring it, first launch the title to create an initial savedata, then go back to SaveMii /ProcessMod, wipe it, and restore your savedata.

Restoring Miis​

Mii operations live under Mii Management in SaveMii's main menu. miigrate extracts the Wii U Mii database (FFL), the account Miis (ACCOUNT), and — from a SLCCMPT dump — the vWii Mii database (RFL).

General Wii U Miis​

  • Copy individual Miis — select the custom FFL_C repo, run Export, and send the Miis you need to the internal FFL (Mii Maker) database.
  • Restore the whole database — on the internal FFL repo run the Restore task and load the backup slot (miigrate's slots are tagged WFS-X); this replaces the console's current Wii U Mii database, and all its current Miis will be deleted.

vWii Miis​

miigrate extracts the vWii Mii database (RFL, RFL_DB.dat) from the SLCCMPT dump. It is console-independent, so it moves freely between consoles.

  • Copy individual Miis — select the custom RFL_C repo, run Export, and send the Miis you need to the internal RFL (Internal vWii Mii Database).
  • Restore the whole database — on the internal RFL repo run the Restore task and load the backup slot (miigrate's vWii slots are tagged ISFS-X); this replaces the console's current vWii Mii database, and all its current Miis will be deleted.
If you recover the Miis on a different console, they will appear as foreign Miis. You can transform them with SaveMii /ProcessMod to make them belong to that console (so you can edit them if needed), but their game association will be lost.

Account Miis​

Account Miis are console-locked — a full account restore only works on the same console (a serial-id check). To bring an original Account Mii onto a different console, use the Restore DB Mii Section task: pick your original Account Mii from the ACCOUNT_C repo or a backup slot as the source, and the account Mii to overwrite on the new console. It performs a cross-account restore of a Mii's MiiData + MiiImg, leaving NNID/PNID and other account attributes untouched.

A console restart is required afterwards, and you may also need to re-register the Mii so its miiimgXX.dat thumbnails regenerate (otherwise a mix of the old and new Mii can show).

To copy only the look, Transform → Transfer physical appearance also works.

Please refer to the Mii section README in the SaveMii /ProcessMod READMEs.

If you need to restore any of those Miis in Cemu or Dolphin, you can use SaveMyMiis.

Credits​

Please report any issue you find!
 
Last edited by qWii,

Site & Scene News

Popular threads in this forum