[Guide] vWii Unbrick Guide by GaryOderNichts

Discussion in 'Wii U - Tutorials' started by GaryOderNichts, Jan 8, 2019.

  1. GaryOderNichts
    OP

    GaryOderNichts Member

    Newcomer
    2
    Aug 9, 2018
    Germany
    vWii Unbrick Guide by GaryOderNichts
    I'm not responsible for any Bricks or Data Loss!

    If for some reason you can't perform one the options (missing NAND Backup, etc...) or don't wan't to, use one of the other ones in that Category.

    Extract your NAND Backup
    Setup FTPiiU Everywhere

    IOS Brick

    vWii System Menu Brick

    Brick from corrupted Channel

    Replace SLCCMPT

    Extract your NAND Backup

    Some of the steps require your vWii NAND backup (SLCCMPT) and keys.bin/keys.txt.
    Follow the steps below if you have a NAND Backup and need it for one of the steps.

    DumpMiiNand Nand dumps dont't work for me. I get an error when trying to extract them.
    If you want to backup your vWii NAND properly use Wii U Nanddumper to dump your SLCCMPT and xyzzy to backup your keys.

    1. Download the latest release of Wii U Nand Extractor. Linux or Mac users may be able to use WINE here.
      Extract the NAND Extractor.exe to a Folder on your PC.
    2. Copy your nand.bin/slccmpt.bin and your keys.bin/keys.txt to this folder.
    3. Open the NAND Extractor.exe.
    4. Click on File > Open and select your backup.
      Your keys should be read automatically if they're called keys.bin/keys.txt.
      If not, go to File > Enter NAND Key and enter your NAND Key.
    5. Go to File > Extract All and your nand gets extracted to a folder named like your backup file.

    Setup FTPiiU Everywhere

    Some of the steps require FTPiiU Everywhere.
    Follow the steps below if you haven't set up FTPiiU Everywhere already and need it for one of the steps.

    1. Download ftpiiu everywhere.
      Mocha users should use this version. Extract the .zip to the root of your SD Card.
      Haxchi/CBHC users this version. Rename the ftpiiu.elf to ftpiiu_everywhere.elf and place it on your SD Card under "/wiiu/apps/ftpiiu_everywhere/".
    2. Run CFW on your Wii U and go to the Homebrew Launcher.
    3. Start FTPiiU_Everywhere.
      Your IP should be displayed there.
    4. On your PC start a FTP Client like FileZilla.
    5. Enter your IP only up to the colon in the "Host:" field. And the two numbers after it in the "Port:" field.
      Leave everything else blank and press "Quickconnect".
    6. You should see your Wii Us Nand. Do not modify anything here or you can brick!

    IOS Brick

    If you have a corrupted IOS (for example when you tried to install Wii cIOS) follow one of the options below.


    vWii still working
    If your vWii still works but one of the IOS is broken follow one of the options below.
    The steps below require a clean .wad of the corrupted IOS on your SD Card. You can dump it from another console using Yet Another BlueDump Mod.

    Homebrew Channel working
    If your HBC works (you still have IOS58), run a wad manager (for example Some YAWMM Mod) to reinstall the broken IOS.

    Homebrew Channel not working
    If HBC doesn't work, is missing or can't be reinstalled using hackmii installer, BUT you have IOS58 and forwarder channel (forwarder for USBloaderGX, Wiiflow or any other homebrew) follow the steps below.
    1. On your PC replace the target's boot.dol with the wad manager's boot.dol (for example Some YAWMM Mod)

    2. Install the clean vWii IOS using the wad manager.
    If HBC doesn't work, is missing or can't be reinstalled using hackmii installer, and you don't have IOS58 or any forwarder channel installed follow the steps below.

    If you have vWii cIOS 236:

    1. Perform a game exploit or use wuphax to launch SD:/boot.elf.
      Replace Hackmii installer's boot.elf with the boot.elf of this wad manager.
    2. Your wad manager should start.
    3. Reload to cIOS236, which gives IOS installation permission, and install the needed clean vWii IOS.
    If you have vWii d2x cIOS:
    1. Perform a game exploit or use wuphax to launch SD:/boot.elf.
      Replace Hackmii installer's boot.elf with the boot.elf of this .7z.
      Place the V58i.wad on your SD Card.
    2. Your wad manager should start.
    3. Choose any d2x cIOS slot, which only has permission for non system WADs.
    4. Install the special channel (V58i.wad).
    5. Return to vWii system menu and launch the newly added channel.
      That channel contains a wad manager which can now install IOS files thanks to granted AHB access.



    vWii not working
    If your vWii is not working but one of the IOS is broken follow one of the options below.

    No NAND Backup required

    The steps below create a WiiU WiiVC channel with a vWii Wad Manager to install clean versions of the vWii IOS. Credits: @Cyan
    The steps below require a clean .wad of the corrupted IOS on your SD Card. You can dump it from another console using Yet Another BlueDump Mod.

    1. Download the WiiU VC injector script (requires .NET framework). Linux or Mac users may be able to use WINE here.
    2. Download this (v)Wii Wad manager.
    3. Download WupInstaller_gx2 and copy the contents to the root of your sd card.
    4. If you need to reinstall IOS58, you need the clean vWii IOS58 v6432.wad
      if you need to reinstall any other IOS, you also need a clean vWii IOS wad for it.
      copy the wad to "SD:/wad/".
    5. Launch the TeconMoon's WiiVC Injector.exe.
    6. Select "Wii Homebrew Injection" mode.
    7. Click on the "Game..." button, and select the "boot.dol" you got in step 2.
    8. You'll have to select some banners/icon that will be used for your created channel. They will be displayed on your WiiU system menu.
      I updated the ones provided by @antnida. You can download them here. Or you can download the original ones by antnida here.
      Or if you want your own pictures, you'll have to choose 2 different targa pictures with the right size (the script will convert to correct tga format automatically).
      You can find more samples here.
    9. On the "Game Pad/Meta Options" tab,
      You'll have to choose a name for your created channel, so let's call it "vWii wad manager" or "YAWMM".
      It should generate a random titleID for you (this is good, don't try to change it).
    10. Go to "Build Title" tab
      Fill in the text fields the WiiU common key (google) and the "Rhythm Heaven Fever" USA game key (wiiu key website, google it too), and when all requirements are displayed in green, click on the "Build" button to build the channel.
    11. Put the generated files into your SD:
      SD:/install/wiiWadmanager/<Put.appAndOtherFilesHere> .
    12. Launch your WiiU in CFW mode (CBHC, haxchi, or anything else which is NOT redNAND, like sigpatcher2sysmenu or sigpatcher2hbl).
    13. Launch WUP installer GX2 from Homebrew launcher and install the generated channel to your WiiU.
    14. Still with CFW enabled, launch the installed channel.
      Your WiiU will boot in vWii mode, with the WAD manager from step 2 launched automatically without going through the vWii Homebrew Channel nor even requiring IOS58.
    Install the clean vWii IOS with the WAD manager.
    Done!

    FAQ

    NAND Backup required
    The Paths below are for my EUR Console! I don't know if they change if you have a console of a different region.
    The Paths below are also for IOS80 if you installed a different IOS you need to find the Path for it or overwrite the whole "\slccmpt01\title\00000001\" folder with your backup which will replace all your titles with the backup.
    1. In FileZilla locate to "\slccmpt01\title\00000001\00000050\".
      Go to the same path in your extracted NAND folder.
    2. Replace the content folder with the clean one from your backup.

    vWii System Menu Brick

    If you have a System Menu Brick (for example when you tried to install Priiloader) follow the steps below.
    The steps below require a extracted NAND Backup, if you dont have one follow these steps.

    The Paths below are for my EUR Console! I don't know if they change if you have a console of a different region.

    1. In FileZilla locate to "\slccmpt01\title\00000001\00000002\content\".
      Go to the same path in your extracted NAND folder.
    2. Replace 00000022.app and 00000023.app with the clean ones from your backup folder.

    Brick from corrupted Channel

    If you have a corrupted Channel (for example when you tried to install Wii Channels) follow the steps below.
    The steps below require a extracted NAND Backup, if you dont have one follow these steps.

    1. In FileZilla locate to "\slccmpt01\title\00000001\<TitleID>\" without the <>.
    2. Delete the folder

    Replace SLCCMPT

    If the steps above didn't helped you or you're just lazy there is a quick and dirty way of replacing your SLCCMPT.
    The steps below require a extracted NAND Backup, if you dont have one follow these steps.

    1. In FileZilla locate to "\slccmpt01\".
    2. Delete every folder in it.
    3. Copy every folder of your NAND Backup in there.
      You now need to set the right permissions for the folders.
    4. Download MochaCFW and this config file for it (Right Click > Save As...).
    5. Copy the contents of the mocha.zip to the root of your SD card and the config.ini to the /wiiu/apps/mocha/ folder on your SD card.
    6. Download Python (If the latest version doesn't work try using Python 2.7) and save the wupclient.py on a folder on your PC (Right Click > Save As...).
    7. Open wupclient.py with some kind of text editor and replace 192.168.0.197 in line 30 with your Wii Us IP and leave the port as it is.
    8. On your wii u start the Homebrew Launcher (CBHC Users have to press the Home button while boot and start the Homebrew Launcher from there).
    9. Run MochaCFW and you should return to the Homebrew Launcher. You're running now wupserver in the background.
    10. On your PC run Command Prompt and type "cd <PathToFolderContainingWupclient.py>" without the <>. Press Enter to continue.
    11. Type py -i wupclient.py and press Enter again.
    12. Enter the Command below:
      Code:
      mount_sd()
      mount_slccmpt01()
      def do_folder(path):
          results = w.ls(path, return_data = True)
          for result in results:
              w.chmod(path + '/' + result['name'], 0x666)
              if not result['is_file']:
                  do_folder(path + '/' + result['name'])
      
      do_folder('/vol/storage_slccmpt01')
      unmount_slccmpt01()
      unmount_sd()
      Old Command

      This will set the right permission for the folders.

    Info

    This is still WIP and I will try to keep it up-to-date.
    If I did something wrong or missed something please let me know! Hope that it will help someone.
     
    Last edited by GaryOderNichts, Feb 12, 2019
  2. gary4356767

    gary4356767 Member

    Newcomer
    1
    Jul 18, 2018
    United States
    Nice guide! I bricked mine and replaced all of the slccmpt files (using ftpiiu everywhere) with the nand backup. I tried using wupserver to change the permissions. However, I keep getting a struct error. Please help if you can.
     
  3. GaryOderNichts
    OP

    GaryOderNichts Member

    Newcomer
    2
    Aug 9, 2018
    Germany
    Did you enter your consoles IP in line 30 of the wupclient.py?
     
    gary4356767 and Cyan like this.
  4. Cyan

    Cyan GBATemp's lurking knight

    Global Moderator
    22
    Oct 27, 2002
    France
    Engine room, learning
    thanks for making a guide to fix vWii using WiiU file access, and knowing about file permission and wupserver (I suppose you'll add it to your guide).
    don't forget to tell users to not use CBHC's sysmenu patching, and boot directly into hbl from the boot menu to launch mocha.

    About (the other) Gary: maybe he didn't use the correct wupserver file? MonkeyMan said it can be a problem: https://gbatemp.net/posts/8374827

    I made a guide to reinstall clean wad files using an injected Wiiu VC Wii channel, I don't know if you want to cover it too, it's another way to do it. It's maybe less intrusive, you don't need ftpiiu_everywhere or mocha to get proper file permission, but some users have issues with creating a working injected channel which can't be shared (contains nintendo files). You also need proper wad of the IOS or channel files you want to restore made using BlueDumpMod while softmodding the vWii (unfortunately, lot of users think skipping this step is a good idea). not all files can be restored using this method, but most issues are caused by installing Wii version of IOS over the vWii version. it seems this Wii pack is a common one : https://gbatemp.net/posts/8377194, I wonder from which site it comes.

    Feel free to add any steps of my guide into yours if you want to cover all possible way to unbrick vWii.
     
    Last edited by Cyan, Jan 10, 2019
  5. gary4356767

    gary4356767 Member

    Newcomer
    1
    Jul 18, 2018
    United States
    Yes I did. I did everything I was supposed to do. I am using python 2.7. But I keep getting this error:
    EDIT: I used the wupclient.py provided by FIX94.
    D454229F-2E94-4D47-8316-4A53D04EDF40.
     
    Last edited by gary4356767, Jan 10, 2019
  6. GaryOderNichts
    OP

    GaryOderNichts Member

    Newcomer
    2
    Aug 9, 2018
    Germany
    I'm using Python 3.6.4 and everything is working fine.

    I also used this version of wupclient: https://raw.githubusercontent.com/FIX94/iosuhax/master/wupserver/wupclient.py (Right Click > Save as...).
    Replace 192.168.0.197 in line 30 with your own IP and leave the port as it is.

    Then start wupclient.py and run these commands one by one:

    Code:
    w.chmod('/vol/storage_slccmpt01/tmp',0x666)
    w.chmod('/vol/storage_slccmpt01/wfs',0x666)
    w.chmod('/vol/storage_slccmpt01/meta',0x666)
    w.chmod('/vol/storage_slccmpt01/import',0x666)
    w.chmod('/vol/storage_slccmpt01/shared1',0x666)
    w.chmod('/vol/storage_slccmpt01/shared2',0x666)
    w.chmod('/vol/storage_slccmpt01/title',0x666)
    w.chmod('/vol/storage_slccmpt01/ticket',0x666)
    w.chmod('/vol/storage_slccmpt01/sys',0x666)
    I add these steps to the guide later. Edit: Added them.
     
    Last edited by GaryOderNichts, Jan 10, 2019
    gary4356767 likes this.
  7. gary4356767

    gary4356767 Member

    Newcomer
    1
    Jul 18, 2018
    United States
    I changed the port to 21. I think that’s why Im getting that error. Thanks for your help :)
     
    Last edited by gary4356767, Jan 10, 2019
  8. Cyan

    Cyan GBATemp's lurking knight

    Global Moderator
    22
    Oct 27, 2002
    France
    Engine room, learning
    @GaryOderNichts

    there's a third method to fix vWii.
    Maybe you could use tabs to separate them, so your guide covers all possible ways to fix vWii ?

    third method is actually the oldest. it's done directly on vWii mode.
    there are different branches based on your current setup.

    A) If HBC works (you still have IOS58) -> run a wad manager with AHB access to reinstall IOS. (the easiest, not really a brick, just a wrong setup)

    B) If HBC doesn't work, is missing or can't be reinstalled using hacmii installer, BUT you have IOS58.
    If you have a forwarder channel (forwarder for USBloaderGX, Wiiflow, any other homebrew): replace the target's boot.dol with the wad manager's boot.dol
    reinstall the clean IOS to fix vWii.
    reinstall HBC if missing using game exploit, or wuphax.

    C) If HBC doesn't work, is missing or can't be reinstalled using hackmii installer, and you don't have IOS58 or any forwarder channel installed:
    It's usually because of missing IOS58, or replaced IOS58 with unclean or wii IOS versions.
    This method works as long as you can boot into vWii and still have a working exploit (retail game or Miimaker replacement with wuphax)

    1) You installed vWii cIOS 236 :
    perform a game exploit to launch SD:/boot.elf
    instead of using hackmii installer's boot.elf, you use a wadmanager's boot.elf (we made a special one)
    Reload to cIOS236, which gives IOS installation permission, and install the needed clean vWii IOS.

    2) You don't have IOS236, but you installed vWii d2x cIOS
    put a clean IOS58 on SD root
    perform a game exploit to launch SD:/boot.elf
    instead of using hackmii installer's boot.elf, you use a wadmanager's boot.elf (we made a special one)
    reload to any d2x cIOS slot, which only has permission for non system WADs.
    install a special channel (V58i.wad)
    return to vWii system menu, launch the newly added channel which is using another slot (not IOS58). That channel contains a wad manager which can now install IOS files thanks to granted AHB access. (actually I don't remember if it contains a wad manager, or is a silent IOS58 wad installer)

    all these methods were the only available for a long time, before we could access vWii NAND directly from WiiU mode.
    they might seem outdated, but could be useful for some users as it doesn't require WiiVC inject or using ftpiiu which can be complicated and dangerous.



    IOS58 channel installer (without clean IOS58 wad file)
    the package contains the wad manager boot.elf, and the IOS58 installer channel. (I don't remember which slot it uses, but it's easy to check, or edit with a tool to load based on user's working setup)
    the included manager is YAWMM DE hacksden edition. (contains boot.elf and boot.dol)

    Latest version of wad manager is YAWMM-mod with AHB access from Fix94 (doesn't reload to another IOS)
     
    Last edited by Cyan, Jan 13, 2019
    gary4356767 and GaryOderNichts like this.
  9. GaryOderNichts
    OP

    GaryOderNichts Member

    Newcomer
    2
    Aug 9, 2018
    Germany
    Couldn't you use wuphax there?
     
  10. Cyan

    Cyan GBATemp's lurking knight

    Global Moderator
    22
    Oct 27, 2002
    France
    Engine room, learning
    yes, use whatever works to launch the boot.elf from SD root.
    users should decide based on their working IOS.
    if they messed with the IOS used by Miimaker, they need to use a game disc.
    if they don't have any game disc, or all their disc uses an IOS the user messed with, then miimaker is the solution.
    if none are available, then Method 1 (ftpiiu) or Method2 (injected WiiVC channel) must be used.
     
    gary4356767 likes this.
  11. flynn272

    flynn272 Member

    Newcomer
    1
    Oct 1, 2018
    Australia
    What happens if I try and install a patched IOS 80?
     
  12. GaryOderNichts
    OP

    GaryOderNichts Member

    Newcomer
    2
    Aug 9, 2018
    Germany
    If you have a bricked IOS80 and you install a backup of a patched IOS80 you would end up with a patched IOS80. This should work if the backup works.

    Just make sure that the backup is from vWii and not another Wii.
     
    gary4356767 likes this.
  13. flynn272

    flynn272 Member

    Newcomer
    1
    Oct 1, 2018
    Australia
    cheers man
     
  14. Shadowplay

    Shadowplay Newbie

    Newcomer
    1
    Feb 10, 2019
    United States
    I tried the Replace SLCCMPT method listed here last summer but was never able to get the wupserver part to work. I was following a guide that wasn't all in English. None the less following this guide was easy and everything seemed to work with out any issues. However now when I try to launch vWii mode it boots to a black screen. I get the black and white Wii logo on the Game pad, but nothing after that. Booting to vWii system menu from the CBH boot menu also boots to black screen.

    I've tried using the SLCCMPT backup from WiiU nanddumper and tried using the NAND backup I did when following the hacks guide for the vWii back in June/July time frame. Neither worked.

    When using nandextractor I don't have key.txt, but do have keys.bin. Thought I would mention incase it makes a difference.
    Here's the results of executing the py commands.

    C:\wupserver>py -i wupclient_r.py
    0x2c4042
    0x0
    0x0
    >>> w.chmod('/vol/storage_slccmpt01/tmp',0x666)
    chmod returned : 0xfffcffe9
    >>> w.chmod('/vol/storage_slccmpt01/wfs',0x666)
    chmod returned : 0xfffcffe9
    >>> w.chmod('/vol/storage_slccmpt01/import',0x666)
    chmod returned : 0xfffcffe9
    >>> w.chmod('/vol/storage_slccmpt01/meta',0x666)
    chmod returned : 0xfffcffe9
    >>> w.chmod('/vol/storage_slccmpt01/shared1',0x666)
    chmod returned : 0xfffcffe9
    >>> w.chmod('/vol/storage_slccmpt01/shared2',0x666)
    chmod returned : 0xfffcffe9
    >>> w.chmod('/vol/storage_slccmpt01/sys',0x666)
    chmod returned : 0xfffcffe9
    >>> w.chmod('/vol/storage_slccmpt01/ticket',0x666)
    chmod returned : 0xfffcffe9
    >>> w.chmod('/vol/storage_slccmpt01/title',0x666)
    chmod returned : 0xfffcffe9
    >>> exit()

    C:\wupserver>
     
  15. Cyan

    Cyan GBATemp's lurking knight

    Global Moderator
    22
    Oct 27, 2002
    France
    Engine room, learning
    I'm not sure if 0xfffcffe9 is good or wrong, and I'm not sure it's helpful but I'll ask anyway:
    are you using Mocha ?
    if you have CBHC installed, you might need to skip CBHC's CFW patching at boot by going into the CBHC boot menu (press home button when booting the console), select launch HBL, from here you launch mocha with the debug option enabled.
     
  16. Shadowplay

    Shadowplay Newbie

    Newcomer
    1
    Feb 10, 2019
    United States
    yes, infact the process you described is exactly what I did, altho "with the debug option enabled" I'm not sure, I just launched Mocha from HBL and then ran the py script and once completed, I rebooted the WiiU and launched the Wii icon.

    Is there anything else that needs done after doing what's listed in the guide? Or should it be back to a stock vWii once the steps are completed? Appreciate your thoughts.
     
  17. Cyan

    Cyan GBATemp's lurking knight

    Global Moderator
    22
    Oct 27, 2002
    France
    Engine room, learning
    I wasn't sure the debug was an option, so I guess it's always included in Mocha by default.
    I never had to fix permission of my vWii using the debugger, so I can't help you more.
    you'll have to wait for someone who knows what these returned results mean.
     
  18. GaryOderNichts
    OP

    GaryOderNichts Member

    Newcomer
    2
    Aug 9, 2018
    Germany
    0xfffcffe9 seems to be the normal thing that returns. Maybe you could upload a screenshot of the File System in your SLCCMPT from filezilla to make sure the files are in the correct place.
    If that doesn't work maybe try using this command in wupclient instead of the w.chmod ones:

    Code:
    mount_sd()
    mount_slccmpt01()
    def do_folder(path):
        results = w.ls(path, return_data = True)
        for result in results:
            w.chmod(path + '/' + result['name'], 0x666)
            if not result['is_file']:
                do_folder(path + '/' + result['name'])
    
    do_folder('/vol/storage_slccmpt01')
    unmount_slccmpt01()
    unmount_sd()
     
  19. Shadowplay

    Shadowplay Newbie

    Newcomer
    1
    Feb 10, 2019
    United States
    Fantastic !! Just executed that code, rebooted, and vWii is working. Thanks so much. This community is truly awesome.
    I'm wondering if this worked because it looped through all the sub folders, where doing it the other way just set the permissions to the main folders. Not sure. I do know it took a bit to finish this time. Thanks again.
     
    Cyan likes this.
  20. GaryOderNichts
    OP

    GaryOderNichts Member

    Newcomer
    2
    Aug 9, 2018
    Germany
    I'm glad it worked! I'll replace the command in the guide with the one above. I thought it should be enough to set the right permissions to the top folders... I hope it works for other people now...

    Edit: Maybe the other command didn't work because it didn't mount the slccmpt...
     
    Last edited by GaryOderNichts, Feb 12, 2019
    Cyan likes this.
Loading...