Using a Large HDDs (2TB+) on Wii U with Separate GameCube / Wii / Wii U Partitions
TL;DR
This guide covers setting up a single large HDD (I used 10TB, but this scales to other sizes) with three separate partitions on a modded Wii U:
All coexisting on one drive, all working through Nintendont / USB Loader GX / the Wii U's native game system. This requires bypassing the normal 2TB limit that both the Wii and Wii U impose on external drives, using a USB-SATA bridge that can emulate 4K logical sectors.
Before doing any of this, go read wii.hacks.guide and get your Wii U and vWii properly modded first. This guide assumes that's already done and focuses specifically on the large-drive partitioning problem, which isn't fully covered there.
The Core Problem
Both the Wii/vWii and the Wii U have hard addressing limits on external storage:
The way around the vWii limit is 4K logical sectors instead of 512-byte. At 4K, the same 32-bit addressing math extends the ceiling to 8-16TiB depending on cluster size. The problem: most consumer drives are "512e," meaning they physically use 4K sectors internally but emulate 512-byte sectors for compatibility, and most 512e drives can't be switched to report native 4K sectors. This is a firmware-level lock, not something you can format your way around.
The fix: a USB-to-SATA bridge chip that does the sector emulation itself, so it reports 4K logical sectors to the host regardless of what the drive underneath is doing.
Hardware
If you buy the exact dock linked above, you can skip this check. If you're using a different enclosure, verify it actually has this chip using USB Device Tree Viewer, and look for VID
ID 174C:55AA.
Step 1: Flash the ASM1153E Dock Firmware
This is the step that makes the whole thing possible. The dock needs its firmware flashed with a specific config flag enabled so it reports 4K logical sectors instead of 512.
Tool: Spagh3ttiC0de/ASM1153E_FIRMWARE. This includes the firmware file and the flashing tool.
Important, this is the part that trips people up: generic ASMedia MPTool downloads (from Station Drivers or elsewhere) often either don't have the right config option, or fail silently when you try to write it. The tool linked above worked correctly where others didn't. Steps:
Verify it worked. Open PowerShell and run:
Find your drive in the output. You want to see:
If it still shows 512, the flash didn't take. Don't move on until this is confirmed.
Step 2: Partition the Drive (gparted)
Boot a gparted Live USB (don't do this from within Windows, since that reduces risk of a background process interrupting the operation on a drive this size).
Layout I used (10TB drive, ~9.1TiB usable)
*See note below on why partition 4 is created unformatted.
The rules that matter, regardless of your drive size:
Steps in gparted:
Formatting the Wii partition to FAT32
gparted's own FAT32 formatter has a hard cap around 2TiB. It won't let you format a FAT32 partition larger than that directly, even though FAT32 itself supports much larger sizes at 4K sector size. This isn't a real FAT32 limit, it's just gparted's dialog being conservative. Since the Wii partition (partition 4) is larger than 2TiB, this cap will block you if you try to format it FAT32 directly in gparted, which is why it's created as unformatted in the step above instead.
Use AOMEI Partition Assistant to format partition 4 to FAT32 at full size instead. It doesn't share gparted's size ceiling. (I also tried the FAT32 GUI Formatter tool for this, and it didn't work for me. Not worth going into why, just use AOMEI.)
Partition 2 (Wii U) stays as the NTFS format you gave it in gparted. This is a temporary NTFS format. The Wii U will wipe and reformat this to WFS itself later in Step 4.
Adapting sizes to your drive
The ratios I used were roughly: ~22% GameCube / ~31% Wii U / ~47% Wii, but this is arbitrary. Set it based on your actual library sizes. The one thing worth knowing:
Step 3: Console-Side Setup: Stroopwafel and the USB Partition Plugin
Important clarification that confused me initially: Stroopwafel is a plugin loader, not a formatting or partitioning tool. You don't use it to format anything directly. Its job is to load small .ipx plugin files into IOS at boot. One of those plugins, USB Partition, is what actually lets the Wii U recognize and use a partitioned external drive instead of demanding to wipe the whole thing as one blob.
If you've already followed wii.hacks.guide, you should already have Aroma installed. If you haven't done ISFShax and Stroopwafel yet, here's how to add those via Wafel Installer:
At this point you have ISFShax (persistent exploit), Stroopwafel (plugin loader), and Aroma (Wii U homebrew environment) all working. What you need to add on top of this base setup:
Don't confuse this with Wafel Installer's own built-in USB/SD partition tool. That's a separate, simpler 2-way FAT32+WFS splitter meant for a single homebrew SD card or USB drive. It doesn't understand a custom 3-partition layout like the one in this guide. Keep your HDD disconnected while running Wafel Installer's SD card setup, so it doesn't try to touch it.
Step 4: Formatting the Wii U Partition
With the drive partitioned (Step 2) and the USB Partition plugin in place (Step 3):
Known graphical bug, read this before panicking: After formatting, the Wii U's Data Management screen will show your Wii U storage capped at 2TB, even if your actual partition is larger (mine is 2.86TB). This is not a real limit, it's a display bug in the system menu.
Verification: Install NUSspli and check the reported capacity there. It correctly shows the true partition size (2.86TB in my case), confirming the 2TB figure on the main system screen is cosmetic only.
Step 5: cIOS (vWii side)
Not covering this in detail. wii.hacks.guide's cIOS section already covers this well. Just make sure you're running a current d2x cIOS build, not whatever came with an older guide or video. An outdated cIOS is a common cause of drives/partitions not being read correctly on the Wii side.
Step 6: The USB Loader GX Display Bug
Once your Wii partition is formatted FAT32 (per Step 2) and games are loaded on it, you may see USB Loader GX report a wildly incorrect drive size, mine showed something like 256GB/366GB instead of the actual multi-TB size, when I checked in the hard drive loader settings panel.
This is a graphical bug in USB Loader GX's hard drive loader settings panel specifically, not a real problem. Here's how to confirm:
Step 7: Populating the Drive
Do Not Use WBFS
Do not format any partition to the WBFS filesystem. Windows can't read or write WBFS-formatted partitions, which causes "access denied / error locking device" errors. Use FAT32 for the Wii partition instead, modern USB Loader GX doesn't need WBFS.
Summary Checklist
This was heavily inspired with my troubleshooting questions with Claude. Written up from my own build process. Happy to answer questions if anyone runs into issues replicating this.
TL;DR
This guide covers setting up a single large HDD (I used 10TB, but this scales to other sizes) with three separate partitions on a modded Wii U:
- GameCube games (FAT32)
- Wii games (FAT32)
- Wii U games (WFS, formatted by the console itself)
All coexisting on one drive, all working through Nintendont / USB Loader GX / the Wii U's native game system. This requires bypassing the normal 2TB limit that both the Wii and Wii U impose on external drives, using a USB-SATA bridge that can emulate 4K logical sectors.
Before doing any of this, go read wii.hacks.guide and get your Wii U and vWii properly modded first. This guide assumes that's already done and focuses specifically on the large-drive partitioning problem, which isn't fully covered there.
The Core Problem
Both the Wii/vWii and the Wii U have hard addressing limits on external storage:
- vWii/Wii: uses 32-bit LBA addressing. At the standard 512-byte sector size, that caps out at exactly 2TiB, regardless of filesystem, partition table, or how many partitions you use.
- Wii U (WFS): has its own hard 2TB cap per partition for game storage.
The way around the vWii limit is 4K logical sectors instead of 512-byte. At 4K, the same 32-bit addressing math extends the ceiling to 8-16TiB depending on cluster size. The problem: most consumer drives are "512e," meaning they physically use 4K sectors internally but emulate 512-byte sectors for compatibility, and most 512e drives can't be switched to report native 4K sectors. This is a firmware-level lock, not something you can format your way around.
The fix: a USB-to-SATA bridge chip that does the sector emulation itself, so it reports 4K logical sectors to the host regardless of what the drive underneath is doing.
Hardware
- A 10TB (or other size) HDD. Mine was a Toshiba MG06ACA10TE, a 512e enterprise drive. The exact model doesn't matter much; what matters is the dock.
- An ASM1153E-based USB-SATA dock/enclosure. I used this one: Amazon link. Any enclosure using the ASM1153E chip should work, but this is the one I confirmed works.
If you buy the exact dock linked above, you can skip this check. If you're using a different enclosure, verify it actually has this chip using USB Device Tree Viewer, and look for VID
Step 1: Flash the ASM1153E Dock Firmware
This is the step that makes the whole thing possible. The dock needs its firmware flashed with a specific config flag enabled so it reports 4K logical sectors instead of 512.
Tool: Spagh3ttiC0de/ASM1153E_FIRMWARE. This includes the firmware file and the flashing tool.
Important, this is the part that trips people up: generic ASMedia MPTool downloads (from Station Drivers or elsewhere) often either don't have the right config option, or fail silently when you try to write it. The tool linked above worked correctly where others didn't. Steps:
- Download the tool and firmware from the repo above.
- Click the key icon at the top of the tool and enter the password asmedia to unlock it.
- Open it, and use the "Check Config" button/dialog.
- Find and enable the 2TB flag, then confirm/apply.
- Flash the firmware to the dock.
- Unplug and replug the dock so it reinitializes with the new config.
Verify it worked. Open PowerShell and run:
Code:
Get-Disk | Format-List
Find your drive in the output. You want to see:
Code:
LogicalSectorSize : 4096
PhysicalSectorSize : 4096
If it still shows 512, the flash didn't take. Don't move on until this is confirmed.
Step 2: Partition the Drive (gparted)
Boot a gparted Live USB (don't do this from within Windows, since that reduces risk of a background process interrupting the operation on a drive this size).
Layout I used (10TB drive, ~9.1TiB usable)
| Partition | Type | Filesystem | Size | Purpose |
| 1 | Primary | FAT32 | 2.00 TiB | GameCube |
| 2 | Primary | NTFS | 2.86 TiB | Wii U |
| 3 | Extended | (none) | remaining | Container for logical partition |
| 4 | Logical | unformatted, then FAT32 later* | 4.23 TiB | Wii |
*See note below on why partition 4 is created unformatted.
The rules that matter, regardless of your drive size:
- Must be MBR, not GPT. At 4K logical sectors, MBR supports up to 16TiB, so you don't need GPT.
- The Wii U partition must be Primary, not logical. The Stroopwafel USB Partition plugin scans for the primary NTFS-type partition with the highest starting LBA and grabs that one to reformat as WFS for the Wii U. If you only have one primary NTFS partition, this is unambiguous.
- The Wii partition must be Logical (inside an extended partition container). This keeps it invisible to the Wii U's partition scan, so it doesn't get grabbed and reformatted.
- GameCube can be primary or logical. It's FAT32, which the Wii U's plugin ignores regardless.
Steps in gparted:
- Device → Create Partition Table → msdos (this is gparted's name for MBR). This wipes the whole drive, so make sure you've selected the right disk first (check the size shown).
- Create partition 1: Primary, FAT32, sized for GameCube.
- Create partition 2: Primary, NTFS, sized for Wii U. This one formats fine directly in gparted, no size cap issue here since it's under gparted's NTFS limits.
- Create partition 3: Extended, using the remaining space.
- Create partition 4, inside the extended partition's free space: Logical, filesystem unformatted. Don't format it FAT32 yet, see below for why.
- Apply.
Formatting the Wii partition to FAT32
gparted's own FAT32 formatter has a hard cap around 2TiB. It won't let you format a FAT32 partition larger than that directly, even though FAT32 itself supports much larger sizes at 4K sector size. This isn't a real FAT32 limit, it's just gparted's dialog being conservative. Since the Wii partition (partition 4) is larger than 2TiB, this cap will block you if you try to format it FAT32 directly in gparted, which is why it's created as unformatted in the step above instead.
Use AOMEI Partition Assistant to format partition 4 to FAT32 at full size instead. It doesn't share gparted's size ceiling. (I also tried the FAT32 GUI Formatter tool for this, and it didn't work for me. Not worth going into why, just use AOMEI.)
Partition 2 (Wii U) stays as the NTFS format you gave it in gparted. This is a temporary NTFS format. The Wii U will wipe and reformat this to WFS itself later in Step 4.
Adapting sizes to your drive
The ratios I used were roughly: ~22% GameCube / ~31% Wii U / ~47% Wii, but this is arbitrary. Set it based on your actual library sizes. The one thing worth knowing:
- The Wii U partition can be larger than 2TB and it works. Mine is 2.86TB and functions correctly, full capacity is usable, confirmed via NUSspli (see Step 4). The only thing that caps at 2TB is the display on the Wii U's Data Management screen, which is a graphical bug, not a real limit.
- Everything else, GameCube and Wii sizing, is flexible and just needs to add up to your usable drive capacity.
Step 3: Console-Side Setup: Stroopwafel and the USB Partition Plugin
Important clarification that confused me initially: Stroopwafel is a plugin loader, not a formatting or partitioning tool. You don't use it to format anything directly. Its job is to load small .ipx plugin files into IOS at boot. One of those plugins, USB Partition, is what actually lets the Wii U recognize and use a partitioned external drive instead of demanding to wipe the whole thing as one blob.
If you've already followed wii.hacks.guide, you should already have Aroma installed. If you haven't done ISFShax and Stroopwafel yet, here's how to add those via Wafel Installer:
- Get Wafel Installer onto your SD card and boot it on the Wii U (see wii.hacks.guide for getting homebrew running in the first place if you haven't done that yet).
- It'll walk through several prompts in order:
- SD/USB format: choose Homebrew only (not Homebrew + Games), since your games are going on the separate 10TB drive from this guide, not the SD card.
- Stroopwafel: choose Yes. When asked where to install it, choose SD Card (recommended, keeps everything on the SD card for easier troubleshooting, versus SLC which is harder to access).
- ISFShax: choose Yes. This is the actual exploit that gives you a persistent hack surviving reboots. Confirm the warning prompt, and the console will reboot into the ISFShax installer automatically.
- Once that's done, reboot as normal. You'll boot straight into Aroma without any extra menus, since that's already configured from your original Aroma setup.
At this point you have ISFShax (persistent exploit), Stroopwafel (plugin loader), and Aroma (Wii U homebrew environment) all working. What you need to add on top of this base setup:
- Download 5usbpart.ipx from the wafel_usb_partition releases page, get the current version.
- Place it in the same location Stroopwafel itself is installed, since this guide has Stroopwafel on the SD card:
- sd:/wiiu/ios_plugins/5usbpart.ipx
- Reboot. Stroopwafel loads plugins automatically at boot from that folder, no manual activation step.
Don't confuse this with Wafel Installer's own built-in USB/SD partition tool. That's a separate, simpler 2-way FAT32+WFS splitter meant for a single homebrew SD card or USB drive. It doesn't understand a custom 3-partition layout like the one in this guide. Keep your HDD disconnected while running Wafel Installer's SD card setup, so it doesn't try to touch it.
Step 4: Formatting the Wii U Partition
With the drive partitioned (Step 2) and the USB Partition plugin in place (Step 3):
- Plug the HDD into the Wii U.
- Boot into the Wii U Menu (through Aroma/Stroopwafel as normal).
- The console should detect the drive and prompt you to format it for Wii U use. Confirm.
- It will reformat your primary NTFS partition (the highest-LBA one) to WFS.
Known graphical bug, read this before panicking: After formatting, the Wii U's Data Management screen will show your Wii U storage capped at 2TB, even if your actual partition is larger (mine is 2.86TB). This is not a real limit, it's a display bug in the system menu.
Verification: Install NUSspli and check the reported capacity there. It correctly shows the true partition size (2.86TB in my case), confirming the 2TB figure on the main system screen is cosmetic only.
Step 5: cIOS (vWii side)
Not covering this in detail. wii.hacks.guide's cIOS section already covers this well. Just make sure you're running a current d2x cIOS build, not whatever came with an older guide or video. An outdated cIOS is a common cause of drives/partitions not being read correctly on the Wii side.
Step 6: The USB Loader GX Display Bug
Once your Wii partition is formatted FAT32 (per Step 2) and games are loaded on it, you may see USB Loader GX report a wildly incorrect drive size, mine showed something like 256GB/366GB instead of the actual multi-TB size, when I checked in the hard drive loader settings panel.
This is a graphical bug in USB Loader GX's hard drive loader settings panel specifically, not a real problem. Here's how to confirm:
- Wrong number: the hard drive loader settings panel shows a fraction of the real size.
- Correct number: the main USB Loader GX menu shows all your games and the correct storage size. Press the Wii button on the right side of the interface to cycle/swap through which storage drive it's displaying.
Step 7: Populating the Drive
- Wii and GameCube games: I used TinyWiiBackupManager for both. It reads all Wii and GameCube image formats and writes/splits them correctly onto FAT32 partitions. Switch between which drive/partition you're targeting using the hard drive icon button in the bottom right of the TinyWiiBackupManager interface.
- Wii U games: I used NUSspli to transfer games from my SD card over to the WFS partition on the HDD.
Do Not Use WBFS
Do not format any partition to the WBFS filesystem. Windows can't read or write WBFS-formatted partitions, which causes "access denied / error locking device" errors. Use FAT32 for the Wii partition instead, modern USB Loader GX doesn't need WBFS.
Summary Checklist
- Read wii.hacks.guide, get base Wii U/vWii mods done first
- Flash ASM1153E dock firmware with 2TB config flag (tool), verify with Get-Disk
- Partition drive in gparted: MBR, GameCube (primary FAT32) / Wii U (primary, NTFS) / Wii (logical, unformatted, inside extended)
- Format the Wii partition to FAT32 using AOMEI Partition Assistant (gparted's own FAT32 formatter caps out around 2TiB)
- Install 5usbpart.ipx alongside your existing Stroopwafel install
- Plug drive into Wii U, let it format the Wii U partition to WFS, ignore the 2TB display bug, verify real size in NUSspli
- Load games with TinyWiiBackupManager (Wii + GameCube) and NUSspli (Wii U)
- Do NOT format any partition to the WBFS filesystem
This was heavily inspired with my troubleshooting questions with Claude. Written up from my own build process. Happy to answer questions if anyone runs into issues replicating this.
Last edited by Mbucc9000,






