Advertisement
If you have a new account but are having problems posting or verifying your account, please email us on hello@boards.ie for help. Thanks :)
Hello all! Please ensure that you are posting a new thread or question in the appropriate forum. The Feedback forum is overwhelmed with questions that are having to be moved elsewhere. If you need help to verify your account contact hello@boards.ie

My Wii U - It Met with a Terrible Fate...

Options
  • 14-07-2023 4:24pm
    #1
    Registered Users Posts: 7,467 ✭✭✭


    As many will have heard in mainstream news over the past while, certain models of the Wii U are starting to exhibit errors and problems related to failing nand chips. Apparently those with Hynix NAND chips are failing, either due to lack of use, age, or just poor quality chips - take your bets. Anyway, when I read this news, I decided I'd grab my own Wii U from display duties, and perform a NAND-Dump, should the unit ever show signs of failure. This way, I'd at least have a backup of the console's NAND and it wouldn't be a lost cause (though bleeding edge developments may no longer even necessitate this, but I digress.)

    So, this particular Wii U is a Launch Model 32GB Black one. Bought on launch day, by my son and I, so while I mightn't use it much (at all!), it still holds a sentimental place in my heart. Keeping it alive is important to me. Anyway, I take the Wii U and proceed with the necessary steps to run the dumping payload, and dump the NAND. This, is where I ran into trouble! The very moments the dumper starts to run, boom, a stark 160-0103 error, which halts any progress in dumping the NAND. Balls, game over I thought. The console itself actually functions fine, but the NAND within will likely continue to deteriorate over time, and eventually something important will become corrupted, and that'll be that for this Wii U.

    I then seen talk of a wonderful little PCB, designed by Voultar, that when installed, allows you to bypass the original NAND chip, and instead, use a Micro-SD card instead. It seemed there was also a way to boot into a Recovery Menu using a Pi Pico, and dump the NAND this way! Then, using some special software tools, a sprinkling or magic dust, and the help of some great people, it seemed all hope wasn't lost. It was apparently possible to dump the NAND via the Recovery Menu, burn this same corrupted NAND image to the Micro SD Card, and use various methods to resolve the corruption. If it all worked out, the Wii U would be back to 100% operation, and wouldn't have to worry about a deteriorating NAND chip again!

    ^^ The Wii U in a bit of a sorry state. It's working, but as can be seen below, deterioration of the NAND chip has begun.

    ^^ Using the Browser Exploit, it's possible to dump the NAND while keeping the console itself fully stock. I've ran the exploit here, and the NAND dumper payload has been launched.

    ^^ Damn. 160-0103 is one of the error codes which suggests a NAND issue. I tried this multiple times, tried clearing browsing data, and any other last-ditched things I could think of. Nothing worked, same result every time. No way to dump the NAND at this early stage.

    It seems, it has met with a terrible fate...



Comments

  • Registered Users Posts: 7,467 ✭✭✭Inviere


    Dawn of the First Day - 72 Hours Remain

    Ok, it was time to take things a bit further. I had a spare Pi Pico, which I could use to enter a USB Recovery Menu. You simply load the UDPIH file to the Pico, and then put the actual Recovery Menu file itself onto the SD Card. More info here - https://github.com/GaryOderNichts/udpih

    ^^ The Pico itself. Tiny, but a powerful little SBC. It's been flashed with the UDPIH file here (as simple as dragging it over via computer).

    ^^ I've got a 64GB SD Card here to accommodate the NAND dump (the dump itself will only be 32GB, but it's nice to have a bit of breathing room.) I've formatted it here in FAT32, using the great guiformat tool.

    ^^ SD Card inserted, and the Pico ready to go. The timing is important for the Pico to be able to trigger the exploit. You boot the Wii U, and the moment the 'Nintendo' on the display/gamepad changes to 'Wii U' you insert the USB cable of the Pico into the Wii U. If all is done correctly, you'll boot into the Recovery Menu.

    ^^ Boom! It worked. Ok, the first of many steps taken!

    *** Just some important information to note here. There's two things dumped when using the dumping tools, the MLC (which is the Wii U internal storage containing saves, games, DLCs, etc), and the SLC (which is the Wii U firmware.) During regular use, these two components are synchronised. It is vitally important that when you're dumping the NAND, you dump both the MLC AND the SLC together, because when if you're restoring a NAND image, the two components must be from the same dump. The moment you boot the console, the state of both will change, and a newer state of one, will NOT be compatible with an older backup of the other. Basically, the sate of the slc is linked to the state of the mlc. Just booting the console changes that state. If you restore an older state of one, you also need to restore the older state of the other. If you boot an MLC with an OLD SLC, there's going to be significant problems, and so on.

    When you initially dump the NAND, you need to power off the console direclty, and do NOT use it until you've cut the CLK jumper as shown. ***


    ^^ Ok, the it seems I'm able to dump the NAND this way. The corruption errors will of course be reflected in any dumps, but at least it gives me something to work with. The SLC errors are normal using this dumping method, and can apparently be safely ignored. The MLC errors on the other hand, they're not normal.

    ^^ Sorry for the blurry pic, my phone doesn't seem to get on with the Wii U Gamepad very much. You can see here, there's a large amount of errors showing for the MLC. 917 of them to be precise! These are areas of the NAND that are unable to be accessed/read etc.

    ^^ When the NAND dump is finished, the 15 NAND parts (and other related files) will be on the SD card.

    In order then to assess the extent of the NAND corruption, these individual NAND parts need to be merged into one file, and then I can use a special piece of software to try to extract this NAND image. This will generate a list of failures, and from there, I can use that list to identify WHAT is actually corrupt, and assess the probability of repairing it.

    ^^ the command to combine the individual NAND parts can be run from a simple CMD prompt. If anyone needs it in the future, the command is:

    "copy /b mlc.bin.part01 + mlc.bin.part02 + mlc.bin.part03 + mlc.bin.part04 + mlc.bin.part05 + mlc.bin.part06 + mlc.bin.part07 + mlc.bin.part08 + mlc.bin.part09 + mlc.bin.part10 + mlc.bin.part11 + mlc.bin.part12 + mlc.bin.part13 + mlc.bin.part14 + mlc.bin.part15 mlc.bin"

    This then gives me a single mlc.bin file. I then need to try to extract this mlc.bin file, using software called wfs-tools.

    ^^ When I ran the appropriate command with wfs-extract, all the errors were displayed and I could use that list to see what was actually going on.

    Dumping...
    Error: Failed to read /"sys\\title\\00050010\\1004a200\\content\\arclayout\\layout.sgarc.cmp"
    Error: Failed to read /"sys\\title\\00050010\\1004a200\\content\\sound\\stream\\BGM_STR_BARISTA_ACS_SUGAR_DRC.dspadpcm.bfstm"
    Error: Failed to read /"usr\\packages\\title\\0000000000000016\\0005000e10144e00\\00000004.app"
    Error: Failed to read /"usr\\packages\\title\\0000000000000016\\0005000e10144e00\\00000007.app"
    Error: Failed to read /"usr\\packages\\title\\0000000000000016\\0005000e10144e00\\00000011.app"
    Error: Failed to read /"usr\\packages\\title\\0000000000000016\\0005000e10144e00\\00000013.app"
    Error: Failed to read /"usr\\packages\\title\\0000000000000016\\0005000e10144e00\\00000014.app"
    Error: Failed to read /"usr\\packages\\title\\0000000000000016\\0005000e10144e00\\00000015.app"
    Error: Failed to read /"usr\\packages\\title\\0000000000000016\\0005000e10144e00\\00000016.app"
    Error: Failed to read /"usr\\packages\\title\\0000000000000016\\0005000e10144e00\\00000017.app"
    Error: Failed to read /"usr\\packages\\title\\0000000000000016\\0005000e10144e00\\00000018.app"
    Error: Failed to read /"usr\\packages\\title\\0000000000000016\\0005000e10144e00\\00000019.app"
    Error: Failed to read /"usr\\packages\\title\\0000000000000016\\0005000e10144e00\\0000001a.app"
    Error: Failed to read /"usr\\packages\\title\\0000000000000016\\0005000e10144e00\\0000001b.app"
    Error: Failed to read /"usr\\packages\\title\\0000000000000016\\0005000e10144e00\\0000001c.app"
    Error: Failed to read /"usr\\packages\\title\\0000000000000016\\0005000e10144e00\\0000001d.app"
    Error: Failed to read /"usr\\packages\\title\\0000000000000016\\0005000e10144e00\\0000001e.app"
    Error: Failed to read /"usr\\packages\\title\\0000000000000016\\0005000e10144e00\\0000001f.app"
    Error: Failed to read /"usr\\packages\\title\\0000000000000016\\0005000e10144e00\\00000020.app"
    Error: Failed to read /"usr\\packages\\title\\0000000000000016\\0005000e10144e00\\00000021.app"
    Error: Failed to read /"usr\\packages\\title\\0000000000000016\\0005000e10144e00\\00000022.app"
    Error: Failed to read /"usr\\packages\\title\\0000000000000016\\0005000e10144e00\\00000023.app"
    Error: Failed to read /"usr\\packages\\title\\0000000000000016\\0005000e10144e00\\00000024.app"
    Error: Failed to read /"usr\\packages\\title\\0000000000000016\\0005000e10144e00\\00000025.app"
    Error: Failed to read /"usr\\packages\\title\\0000000000000016\\0005000e10144e00\\00000026.app"
    Error: Failed to read /"usr\\packages\\title\\0000000000000016\\0005000e10144e00\\00000027.app"
    Error: Failed to read /"usr\\packages\\title\\0000000000000016\\0005000e10144e00\\00000028.app"
    Error: Failed to read /"usr\\packages\\title\\0000000000000016\\0005000e10144e00\\00000029.app"
    Error: Failed to read /"usr\\packages\\title\\0000000000000016\\0005000e10144e00\\0000002a.app"
    Error: Failed to read /"usr\\packages\\title\\0000000000000016\\0005000e10144e00\\0000002b.app"
    Error: Failed to read /"usr\\packages\\title\\0000000000000016\\0005000e10144e00\\0000002e.app"
    Error: Failed to read /"usr\\packages\\title\\0000000000000016\\0005000e10144e00\\00000030.app"
    Error: Failed to read /"usr\\packages\\title\\0000000000000016\\0005000e10144e00\\00000031.app"
    Error: Failed to read /"usr\\packages\\title\\0000000000000016\\0005000e10144e00\\00000032.app"
    Error: Failed to read /"usr\\packages\\title\\0000000000000016\\0005000e10144e00\\00000033.app"
    Error: Failed to read /"usr\\packages\\title\\0000000000000016\\0005000e10144e00\\00000034.app"
    Error: Failed to read /"usr\\packages\\title\\0000000000000016\\0005000e10144e00\\00000035.app"
    Error: Failed to read /"usr\\title\\00050000\\10105700\\code\\libicu_rpl.rpl"
    Error: Failed to read /"usr\\title\\00050000\\10105700\\code\\libwebkitcafe_rpl.rpl"
    Error: Failed to read /"usr\\title\\00050000\\10109900\\meta\\bootSound.btsnd"
    Error: Failed to read /"usr\\title\\00050000\\1010a700\\code\\WUP-JAJP.rpx"
    Error: Failed to read /"usr\\title\\00050000\\10113800\\code\\t.rpx"
    Error: Failed to read /"usr\\title\\00050000\\10113800\\content\\gui_sfx.pxp"
    Error: Failed to read /"usr\\title\\00050000\\10113800\\content\\MARVEL_Avengers.pxp"
    Error: Failed to read /"usr\\title\\00050000\\10113800\\content\\MARVEL_FearItSelf.pxp"
    Error: Failed to read /"usr\\title\\00050000\\10113800\\content\\MARVEL_InfinityGauntlet.pxp"
    Error: Failed to read /"usr\\title\\00050000\\10113800\\content\\MARVEL_WWH.pxp"
    Error: Failed to read /"usr\\title\\00050000\\1011b700\\content\\Main.dat"
    Error: Failed to read /"usr\\title\\00050000\\1011b700\\content\\UplayMedia.dat"
    Error: Failed to read /"usr\\title\\00050000\\10128600\\content\\resource.pak"
    Error: Failed to read /"usr\\title\\00050000\\10128c00\\content\\boss\\buil\\boss_buil.lzss"
    Error: Failed to read /"usr\\title\\00050000\\10128c00\\content\\boss\\cent\\boss_cent.lzss"
    Error: Failed to read /"usr\\title\\00050000\\10128c00\\content\\boss\\empe\\boss_empe.lzss"
    Error: Failed to read /"usr\\title\\00050000\\10128c00\\content\\boss\\giga\\boss_giga.lzss"
    Error: Failed to read /"usr\\title\\00050000\\10128c00\\content\\boss\\grif\\boss_grif.lzss"
    Error: Failed to read /"usr\\title\\00050000\\10128c00\\content\\boss\\kong\\boss_kong.lzss"
    Error: Failed to read /"usr\\title\\00050000\\10128c00\\content\\boss\\mamm\\boss_mamm.lzss"
    Error: Failed to read /"usr\\title\\00050000\\10128c00\\content\\boss\\mons\\boss_mons.lzss"
    Error: Failed to read /"usr\\title\\00050000\\10128c00\\content\\boss\\octp\\boss_octp.lzss"
    Error: Failed to read /"usr\\title\\00050000\\10128c00\\content\\boss\\spdr\\boss_spdr.lzss"
    Error: Failed to read /"usr\\title\\00050000\\10128c00\\content\\boss\\trex\\boss_trex.lzss"
    Error: Failed to read /"usr\\title\\00050000\\10128c00\\content\\boss\\yama\\boss_yama.lzss"
    Error: Failed to read /"usr\\title\\00050000\\10128c00\\content\\common\\common.lzss"
    Error: Failed to read /"usr\\title\\00050000\\10128c00\\content\\eft\\stage1\\arc.lzss"
    Error: Failed to read /"usr\\title\\00050000\\10128c00\\content\\lyt\\always\\lyt_always_eu_es.lzss"
    Error: Failed to read /"usr\\title\\00050000\\10128c00\\content\\lyt\\bigteki\\lyt_bigteki_eu_es.lzss"
    Error: Failed to read /"usr\\title\\00050000\\10128c00\\content\\lyt\\bigteki\\lyt_bigteki_eu_it.lzss"
    Error: Failed to read /"usr\\title\\00050000\\10128c00\\content\\lyt\\bigteki02\\lyt_bigteki02_eu_de.lzss"
    Error: Failed to read /"usr\\title\\00050000\\10128c00\\content\\lyt\\bigteki02\\lyt_bigteki02_eu_fr.lzss"
    Error: Failed to read /"usr\\title\\00050000\\10128c00\\content\\lyt\\bigteki02\\lyt_bigteki02_jp_ja.lzss"
    Error: Failed to read /"usr\\title\\00050000\\10128c00\\content\\lyt\\common02\\lyt_common02_eu_es.lzss"
    Error: Failed to read /"usr\\title\\00050000\\10128c00\\content\\lyt\\credit\\lyt_credit_eu_de.lzss"
    Error: Failed to read /"usr\\title\\00050000\\10128c00\\content\\lyt\\credit\\lyt_credit_eu_fr.lzss"
    Error: Failed to read /"usr\\title\\00050000\\10128c00\\content\\lyt\\dlc\\lyt_dlc_eu_fr.lzss"
    Error: Failed to read /"usr\\title\\00050000\\10128c00\\content\\lyt\\logo\\lyt_logo_eu_it.lzss"
    Error: Failed to read /"usr\\title\\00050000\\10128c00\\content\\lyt\\menu\\lyt_menu_eu_en.lzss"
    Error: Failed to read /"usr\\title\\00050000\\10128c00\\content\\lyt\\menu02\\lyt_menu02_eu_fr.lzss"
    Error: Failed to read /"usr\\title\\00050000\\10128c00\\content\\lyt\\menu03\\lyt_menu03_eu_de.lzss"
    Error: Failed to read /"usr\\title\\00050000\\10128c00\\content\\lyt\\menu03\\lyt_menu03_eu_en.lzss"
    Error: Failed to read /"usr\\title\\00050000\\10128c00\\content\\lyt\\menu03\\lyt_menu03_eu_it.lzss"
    Error: Failed to read /"usr\\title\\00050000\\10128c00\\content\\lyt\\minateki\\lyt_minateki_eu_en.lzss"
    Error: Failed to read /"usr\\title\\00050000\\10128c00\\content\\lyt\\minateki\\lyt_minateki_eu_fr.lzss"
    Error: Failed to read /"usr\\title\\00050000\\10128c00\\content\\lyt\\minateki\\lyt_minateki_eu_it.lzss"
    Error: Failed to read /"usr\\title\\00050000\\10128c00\\content\\lyt\\minateki\\lyt_minateki_jp_ja.lzss"
    Error: Failed to read /"usr\\title\\00050000\\10128c00\\content\\lyt\\mission\\lyt_mission_eu_en.lzss"
    Error: Failed to read /"usr\\title\\00050000\\10128c00\\content\\lyt\\mission\\lyt_mission_eu_es.lzss"
    Error: Failed to read /"usr\\title\\00050000\\10128c00\\content\\lyt\\mission02\\lyt_mission02_eu_en.lzss"
    Error: Failed to read /"usr\\title\\00050000\\10128c00\\content\\lyt\\mission02\\lyt_mission02_eu_es.lzss"
    Error: Failed to read /"usr\\title\\00050000\\10128c00\\content\\lyt\\mission02\\lyt_mission02_jp_ja.lzss"
    Error: Failed to read /"usr\\title\\00050000\\10128c00\\content\\lyt\\mission03\\lyt_mission03_eu_de.lzss"
    Error: Failed to read /"usr\\title\\00050000\\10128c00\\content\\lyt\\mission_c\\lyt_mission_c_eu_de.lzss"
    Error: Failed to read /"usr\\title\\00050000\\10128c00\\content\\lyt\\mission_c\\lyt_mission_c_eu_en.lzss"
    Error: Failed to read /"usr\\title\\00050000\\10128c00\\content\\lyt\\mission_c\\lyt_mission_c_eu_es.lzss"
    Error: Failed to read /"usr\\title\\00050000\\10128c00\\content\\lyt\\mission_c\\lyt_mission_c_eu_fr.lzss"
    Error: Failed to read /"usr\\title\\00050000\\10128c00\\content\\lyt\\mission_c\\lyt_mission_c_eu_it.lzss"
    Error: Failed to read /"usr\\title\\00050000\\10128c00\\content\\lyt\\mission_m\\lyt_mission_m_eu_es.lzss"
    Error: Failed to read /"usr\\title\\00050000\\10128c00\\content\\lyt\\mission_m2\\lyt_mission_m2_eu_en.lzss"
    Error: Failed to read /"usr\\title\\00050000\\10128c00\\content\\lyt\\mission_m2\\lyt_mission_m2_eu_es.lzss"
    Error: Failed to read /"usr\\title\\00050000\\10128c00\\content\\lyt\\mission_m2\\lyt_mission_m2_eu_fr.lzss"
    Error: Failed to read /"usr\\title\\00050000\\10128c00\\content\\lyt\\orekong\\lyt_kong_eu_de.lzss"
    Error: Failed to read /"usr\\title\\00050000\\10128c00\\content\\lyt\\orekong\\lyt_kong_eu_es.lzss"
    Error: Failed to read /"usr\\title\\00050000\\10128c00\\content\\lyt\\orekong\\lyt_kong_jp_ja.lzss"
    Error: Failed to read /"usr\\title\\00050000\\10128c00\\content\\lyt\\story\\lyt_story_eu_it.lzss"
    Error: Failed to read /"usr\\title\\00050000\\10128c00\\content\\lyt\\team\\lyt_team_eu_en.lzss"
    Error: Failed to read /"usr\\title\\00050000\\10128c00\\content\\lyt\\team\\lyt_team_eu_it.lzss"
    Error: Failed to read /"usr\\title\\00050000\\10128c00\\content\\movie\\mission_movie\\mission_movie.lzss"
    Error: Failed to read /"usr\\title\\00050000\\10128c00\\content\\movie\\title_movie\\title_movie.lzss"
    Error: Failed to read /"usr\\title\\00050000\\10128c00\\content\\personal\\d_morii\\common.bfsar"
    Error: Failed to read /"usr\\title\\00050000\\10128c00\\content\\personal\\d_morii\\stream\\STRM_MARIOKART_PCM16.bfstm"
    Error: Failed to read /"usr\\title\\00050000\\10128c00\\content\\personal\\d_okada\\d_okada_0000.lzss"
    Error: Failed to read /"usr\\title\\00050000\\10128c00\\content\\resident\\main.lzss"
    Error: Failed to read /"usr\\title\\00050000\\10128c00\\content\\satellite\\arc.lzss"
    Error: Failed to dump folder /"usr\\title\\00050000\\10128c00\\content"
    Error: Failed to read /"usr\\title\\00050000\\10128c00\\meta\\Manual.bfma"
    Error: Failed to read /"usr\\title\\00050000\\10132100\\code\\libcrypto_rpl.rpl"
    Error: Failed to read /"usr\\title\\00050000\\10132100\\code\\libicu_rpl.rpl"
    Error: Failed to read /"usr\\title\\00050000\\10132100\\code\\libwebkitwiiu_rpl.rpl"
    Error: Failed to read /"usr\\title\\00050000\\10132100\\content\\assets\\sound\\stream\\BGM_HEX_01.dspadpcm.bfstm"
    Error: Failed to read /"usr\\title\\00050000\\10132100\\content\\assets\\sound\\stream\\STRM_BGM_MAIN.bfstm"
    Error: Failed to read /"usr\\title\\00050000\\10132100\\meta\\bootTvTex.tga"
    Error: Failed to read /"usr\\title\\00050000\\10149600\\content\\boot\\2d\\it\\skin_01\\arc_0000.lzss"
    Error: Failed to read /"usr\\title\\00050000\\10149600\\content\\common\\not_localize\\arc_0000.lzss"
    Error: Failed to read /"usr\\title\\00050000\\10149600\\content\\common\\not_localize\\arc_0001.lzss"
    Error: Failed to read /"usr\\title\\00050000\\10149600\\content\\common\\not_localize\\arc_0002.lzss"
    Error: Failed to read /"usr\\title\\00050000\\10149600\\content\\Drc\\2d\\en\\skin_01\\arc_0002.lzss"
    Error: Failed to read /"usr\\title\\00050000\\10149600\\content\\Drc\\2d\\it\\skin_01\\arc_0000.lzss"
    Error: Failed to read /"usr\\title\\00050000\\10149600\\content\\eft\\visualizer\\arc_0001.lzss"
    Error: Failed to read /"usr\\title\\00050000\\10149600\\content\\global\\feature\\en\\2013061200_00_en.magazine"
    Error: Failed to read /"usr\\title\\00050000\\10149600\\content\\global\\miiphoto\\mii_photo_bg_034.jpg"
    Error: Failed to read /"usr\\title\\00050000\\10149600\\content\\global\\miiverse\\miiverse_memo01_fr.tga"
    Error: Failed to read /"usr\\title\\00050000\\10149600\\content\\global\\movie\\00000001.dat"
    Error: Failed to read /"usr\\title\\00050000\\10149600\\content\\global\\movie\\00000004.dat"
    Error: Failed to read /"usr\\title\\00050000\\10149600\\content\\global\\tsv\\ja\\wiiudb.dat"
    Error: Failed to read /"usr\\title\\00050000\\10149600\\content\\info\\2d\\de\\skin_01\\arc_0001.lzss"
    Error: Failed to read /"usr\\title\\00050000\\10149600\\content\\info\\2d\\en\\skin_01\\arc_0001.lzss"
    Error: Failed to read /"usr\\title\\00050000\\10149600\\content\\info\\2d\\fr\\skin_01\\arc_0001.lzss"
    Error: Failed to read /"usr\\title\\00050000\\10149600\\content\\karaoke\\localize\\fr\\arc_0000.lzss"
    Error: Failed to read /"usr\\title\\00050000\\10149600\\content\\stage\\stage03\\arc_0000.lzss"
    Error: Failed to read /"usr\\title\\0005000e\\10101e00\\code\\red-pro2.rpx"
    Error: Failed to read /"usr\\title\\0005000e\\10101e00\\content\\Common\\actor\\cobPack.szs"
    Error: Failed to read /"usr\\title\\0005000e\\10101e00\\content\\Common\\actor\\jyotyuActorPack.szs"
    Error: Failed to read /"usr\\title\\0005000e\\10101e00\\meta\\bootTvTex.tga"
    Done!
    

    ^^ Ok, the list of errors within the NAND. Quite a list, and I needed the wisdom of some smarter people than me over on the Gbatemp forums to make sense of this for me.

    Basically:

    • sys/title/00050010 - these refer to a system file that's corrupt. This will need to be reinstalled manually.
    • usr/packages/title/00000000000016 - these are files left over from previous downloads. They can be safely deleted.
    • usr/title/0005000 - these relate to corrupted titles that are installed. There's a folder which couldn't be dumped in this section too. Errors such as these (corrupted directories) CAN'T be deleted or removed via the method I'm using, but they can be MOVED to a new location where they don't interfere with things.

    ^^ That's the basic jist of that whole list. The title ID's can be inferred then by the locations. So for example:

    • /"usr\\title\\00050000\\10105700\ can be simplified down as 00050000-10105700
    • /"usr\\title\\00050000\\10109900\\meta\\bootSound.btsnd can be simplified down as 00050000-10109900, and so on.

    We can then use the Wii U Title Database to resolve these names for us. 00050000-10105700 resolves as the YouTube application. 00050000-10109900 resolves as Zelda:LttP. I do this for the rest of the codes, and compile a list of the problematic applications. The Title ID Database is here - http://wiiubrew.org/wiki/Title_database

    ^^ That's my working list.

    *** As an aside. 00050010-1004a200 is the Mii Maker app, I'll need to reinstall this manually, I'll go into this down below.

    Post edited by CiDeRmAn on


  • Registered Users Posts: 7,467 ✭✭✭Inviere


    Dawn of the Second Day - 48 Hours Remain

    Ok, time to get to work. First thing's first. I need to install the Nand-Aid PCB from Voultar. It's a beautifully neat little thing, and a kind user from Germany over on Gbatemp was able to sell one to me and post it over here. Voultar has kindly shared to PCB design files and BOM, but it has was handy to just buy a kit from a user as I only needed x1 of these.

    ^^ The Wii U on the operating table. No I'm not playing SMB 3 here as seen in the reflection, I tend to watch a good long Summoning Salt video in the background if I'm doing anything involved that takes time - this was his SMB World Records video, highly recommended!

    ^^ Wii U tear down. Nothing terribly exciting to see here. Just a matter of keeping track of screws etc, the usual stuff.

    ^^ Ok, we're where we need to be. NAND chip can be seen here towards the top right of the image.

    ^^ Bloody Hynix, this is the cause of all the trouble.

    ^^ The NAND aid itself. Wonderfully designed, and elegantly simple.

    ^^ This capacitor is on the way on my board version. Thankfully, it's an unnecessary capacitor, and even Nintendo dropped it from later board revisions. The advice is, it can safely be removed.

    ^^ Done, and area then cleaned with IPA. The pad on the right hand side shows a bit of the mask removed around it, this is perfectly fine, the Nand-Aid will go over this and be soldered then to this area.

    ^^ Test fit. Absolutely lovely fit I must say, now that the un-needed capacitor is removed.

    ^^ First step is to cut the CLK track to the original NAND. This will make the chip essentially defunct, and the Nand-Aid can take over from there. The jumper at R26 is where this should be cut, between the two points.

    ^^ Done. Continuity check then with a multimeter to be sure, and there's now zero connection between the two points.

    ^^ The Nand-Aid can then start to be soldered into place. The advice is to start with the ground connection, which lies to the right hand side of the board. The hole in the board alligns perfectly with the ground pad of where that capacitor was that we removed. It's a little difficult to get this right, the ground plane saps a LOT of heat away, and the hole being small means the soldering iron tip is relatively small to get through it. This makes thermal transfer a little difficult. I tin the pad underneath first ever so slightly, and then with a good bit of heat, a lot of flux, and some patience, you can get the solder flowing.

    ^^ Here's a better view of the point. It's a ground point, but also the only proper anchor the Nand-Aid has which gives it strength, so be doubly sure it's nice and secure before proceeding.

    ^^ Next up are the solder pads on the Nand-Aid. These line up with the resistors, and with these aged eyes, a bit of magnification was necessary. The CLK pin on the right hand side was a small distance away from the pad, but a solder bridge can fill any void here. Just need to be very careful of shorts.

    ^^ There's a tiny little capacitor needed on the Nand-Aid too, it's quite small, so again, magnification was needed!

    ^^ Resistors, CLK point, DSB bridge, 3.3 volt wire, Micro SD slot, and capacitor all soldered into place. That should be everything, and the Wii U is now ready to have it's NAND image put back in, although this time, it'll be on the SD card and not on the faulty Hynix NAND chip!

    ^^ The recommended SD Card is a Samsung Endurance, so here's a 32GB card to replace the 32GB Hynix chip. There's some bleeding edge work going on that will allow larger sizes to be used as Internal NAND storage, but in this case I'm happy to keep things original.

    ^^ The mlc.bin that we made by combining all of the 15 individual parts earlier, is flashed to the new SD card.

    ^^ Put into place, and this Wii U is now more or less back to where it was. From here though, we can work on fixing the corruption, knowing the SD card won't continue to deteriorate as the Hynix chip would have.

    ^^ Reassembled, and full of filthy paw prints. Gloss black is a pain for this, but such is life!

    Post edited by Inviere on


  • Registered Users Posts: 7,467 ✭✭✭Inviere


    Dawn of the Final Day - 24 Hours Remain

    Ok, I'm going to start with the corrupt system app. It's the Mii Maker app, specifically the EU version. I'm told that regional considerations are a factor here, so I needed a verified, clean, and legitimate version of the Mii Maker app. There are easier ways to grab this if you're using CFW on the Wii U, but as I want to keep this as original as possible, I'll have to do it the hard way.

    ^^ Using a piece of software called jnustool, I can grab the files I need directly from Nintendo. At least this way I know it's an exact match of the title id, and therefore an exact match for the region etc.

    To install this then, I need to place the downloaded files onto the SD card, and use the USB Recover Menu to install is (WUPinstaller.)

    ^^ Very easy in the end. That should overwrite the previously corrupted areas, with fresh new 1's and 0's. That's the System App problem resolved.

    Next step was to remove the remnant downloads, using what's called WUP Server on the Wii U (Recovery Menu) and WUP Client on the PC. Between these two, I can push commands from my PC to the Wii U, deleting the unnecessary files. However, for this to work, I need to give the USB Recovery Menu my Wifi info/code, as I don't have an ethernet adapter here handy for the Wii U.

    ^^ I create a network.cfg file on the SD Card, and using the above template, fill in the correct SSID/credentials etc.

    ^^ Then in the USB Recovery Menu, I select Load Network Configuration. This pulls the info from the config file above, and gives me WiFi connectivity.

    ^^ I leave this screen on, and then move over to the PC for the Client side of the program.

    However, I also need to tell the client how to find the Wii U via its IP address shown above. You simply edit line 30 of the code, and put in your own Wii U's IP address.

    ^^ Done.

    ^^ Manually deleting the package files. There wasn't too many of them, so it was quick enough. These can also likely be deleted via FTP, which we'll explore later on. It was nice to see how the WUP Client/Server works though.

    So that's the System App fixed, the Package Remnants done, what's next is to fix the corrupted installs. We can do this through the Wii U's own data management system. Time to boot this Wii U, using its new SD-Card NAND replacement!

    ^^ Wow, it boots, I haven't seemingly broken anything!

    ^^ I started with the YouTube app, and made my way down through the list we compiled above. There wasn't much to delete really, thankfully.

    ^^ Cool, the Wii U seems to have no issues deleting these corrupted files.

    ^^ I chose to reinstall a handful of the games, and didn't bother with the rest. They'd never be used so there'd be no point having them sitting there. It was nice to get the games back on though.

    ^^ Reinstalled, and working away perfectly. No more corruption!

    ^^ Back how it should be!

    ^^ Mii Maker app back to full functionality also, sweet.

    One last thing, I need to move the corrupted folder to a new location where it can be quarantined as such.

    ^^ New 'corrupted' folder created, and the corrupted folder location moved to within that new location. Using this method, I can't delete a corrupted location, but I can move it, which I've done here. From here, I can FTP in and manually delete as many of the corrupted files as I can...but the folder will have to remain...

    Post edited by Inviere on


  • Registered Users Posts: 7,467 ✭✭✭Inviere


    Dawn of a New Day

    Ok, we're almost there. I need to FTP in and delete the corrupted files from the new 'corrupted' folder I created. I don't want to install CFW on this Wii U, but thankfully, I can create a temporary CFW environment and use the new Aroma CFW to do this - https://github.com/wiiu-env/Aroma. It'll be only temporary, and won't survive a reboot, which is exactly what I want here. You can install this permanently too if required.

    By putting the Aroma files on the SD card, and then using the Web Exploit shown above, I can launch the Environment Loader by running the Exploit and holding the Y button. This launches the Environment Loader, and I can then choose Aroma to boot.

    ^^ Instead of hitting Installer here, which would install the CFW to the console, I can launch it as a once off for this boot cycle.

    ^^ Not a problem here, as this console will remain stock.

    ^^ Ok, we're into the Wii U System Menu, but with Aroma running too.

    ^^ FTPiiU is a a plugin that needs to be placed on the SD card also, and once you're in the CFW Enviroment (Aroma in this case), you can configure the plugin to allow access to the System Files - we need this, otherwise we won't have access to the new 'corrupted' folder.

    ^^ I've access now over FTP, and can delete everything that can be deleted in the Corrupted folder.

    ^^ The files are now gone, and only some of the folders remain. Perfect.

    ^^ A final NAND dump to be sure to be sure, and look, zero MLC errors (the SLC errors are normal using this method.) Absolutely delighted, it's fixed!

    ^^ All cleaned up, back to full health!

    Post edited by Inviere on


  • Registered Users Posts: 7,467 ✭✭✭Inviere


    I'd say a massive, massive thanks to the users SDIO and v10lator over on the GBAtemp forums, their help was absolutely invaluable. Voultar also for the wonderful little PCB called nand-aid, it makes the job so much neater and cleaner. GaryOderNichts for the SD Recovery Menu, and all the great minds who put necessary the software together for everyone to use.



  • Advertisement
  • Registered Users Posts: 5,780 ✭✭✭eddhorse


    Love all your very well explained projects. I follow Voultar and his work and its just astounding what the community is doing. Basically rescuing bricked consoles. You've done a great job here and taking pictures etc has been very helpful.

    Should be a lot of these bricked units becoming available soon I suppose.

    Great job again

    EDIT : you should tweet Voultar as he loves seeing recovered consoles in the wild with the aid of his pcbs



  • Registered Users Posts: 7,467 ✭✭✭Inviere


    Cheers for the kind words Ed, appreciated. The community work is exceptional I have to say, literally saving consoles. Yep Voultar is aware, I tweeted him some of the pics and linked to the thread. He even used one of the pics on the product page (he's selling Nand-Aid kits now on his site).



  • Registered Users Posts: 5,780 ✭✭✭eddhorse




  • Registered Users Posts: 7,467 ✭✭✭Inviere


    Yeah I seen that during my efforts, it's very impressive. That same user, SDIO, was mega helpful to me. There's other great things coming, like being able to replace the internal dvd drive with a SATA based ssd too.

    The Wii U's time has finally come!



  • Registered Users Posts: 4,215 ✭✭✭KeRbDoG


    During your research, did you find a fix for a Wii U which won't turn on anymore? :)

    Now you can try re3-wiiu, the GTA III Wii U Port - I never got around to finding a working version



  • Advertisement
  • Registered Users Posts: 7,467 ✭✭✭Inviere


    When you say won't turn on, is it completely dead, no led, no power at all?

    I'' check out re3-wiiu, sounds interesting cheers!



  • Registered Users Posts: 34,431 ✭✭✭✭o1s1n
    Master of the Universe


    Finally had a bit of a chance for a proper read through this (I really don't like to skim through a good Inviere mod/fix thread!) fantastic work. It really is incredible how quickly it's gone from discovering this NAND issue exists to literally being able to buy a product from Voultar to help fix it.

    Fascinating to see your NAND corruption in real time with that dump even though the console was working fine. I wonder at what point does it go from working with NAND corruption to bricked.



  • Registered Users Posts: 4,215 ✭✭✭KeRbDoG


    I threw the orginial PCB design into OSH Park PCB ordering, and it looks like its just over $5 shipped - can't remember if thats from the US or somewhere in Asia so import fun may apply. You'd just need to install the MicroSD card another small componet yourself. The kit direct from Voltar is a few times that amount.



  • Registered Users Posts: 7,467 ✭✭✭Inviere


    Cheers man, I'm so relived it was revived, damage repaired, and no further deterioration will now happen. There was ways to do this before, by directly soldering a micro-sd to sd adapter to the mainboard, but Voultar's pcb negates needing to do that, and keeps everything very neat and clean.

    I suppose the NAND deterioration is going to be random in each case. Some consoles won't even boot because something crucial has been corrupted, and others like mine was, appear fine, but when you need them to do something specific, that's when they'll show the problem. The deterioration will continue to spread though I gather, and left unchecked, the Hynix based NAND models will likely all fail at some point. Thankfully though it's looking like the wizards over on GBAtemp have pretty much cracked how to rebuild an MLC image without having a prior dump, so I'd guess that such consoles will ALL be repairable, if the owner is willing.



  • Registered Users Posts: 7,467 ✭✭✭Inviere


    Yep Voultar released the PCB design for free, and encourages people to use it. As you say you'll need the additional components yourself (micro-sd card slot, and capacitor), whereas his kit is complete. That said, even the complete kit needs to be assembled by the purchaser because the ground point to be soldered, lies underneath where the sd-card reader needs to go, so that HAS to be done first. I'd say the best value would be ordering a few of these pcb's, and a matching amount of the additional components.



Advertisement