NAND Fix Pro Switch
More actions
| NAND Fix Pro | |
|---|---|
| General | |
| Author | sthetix |
| Type | PC Utilities |
| Version | 2.0.4 |
| License | N/A |
| Last Updated | 2025/11/21 |
| Links | |
| Download | |
| Website | |
| Source | |
| Support Author | |
NANDFixPro is a Windows-based PC utility automates unbricking Nintendo Switch consoles affected by software-related NAND issues. The tool offers tiered recovery methods (Level 1, 2, and 3) to handle various brick scenarios, from system partition fixes to full NAND reconstruction using donor files. It integrates essential dependencies like Python and community tools for seamless operation.
Features
- Three-Tiered Repair System: Choose the right level of repair for your specific issue.
- User-Friendly GUI: A modern, dark-themed interface that guides you through every step. No command-line knowledge required.
- Automatic Path Detection: The application automatically finds its required tools from the
libfolder. - Safety First: Critical actions require user confirmation to prevent accidental data loss. Buttons remain disabled until all required files and paths are correctly configured.
- Erista & Mariko Support: Automatically detects the console model from its PRODINFO and applies the correct settings for boot file generation.
- Automated Dependency Management: The included launcher ensures Python and required libraries are installed automatically.
- Built-in Admin Elevation: Automatically prompts for administrator rights, which are required for direct eMMC access.
- Robust Logging: All operations are logged to the screen and saved in an
error_log.txton crash, making troubleshooting easy. - Disk Space Validation: Automatically checks for sufficient free space (60GB) before starting any repair process.
The Three Levels of Repair
Level 1: System Restore (Data Preserved)
- What it does: Dumps the SYSTEM partition from your Switch, replaces the core OS files with clean ones generated from your firmware, and flashes it back.
- When to use it: Ideal for fixing boot issues caused by a failed system update, a bad custom theme, or general software corruption where your save games and installed titles are still intact.
- Outcome: Your console's OS is repaired, and all your user data (saves, games, profiles) is preserved.
Level 2: Full Rebuild (User Data Erased)
- What it does: Uses your Switch's unique PRODINFO to rebuild the entire NAND using clean, pre-packaged donor partitions.
- When to use it: Use this when multiple partitions (not just SYSTEM) are corrupt, but your console's PRODINFO is still readable and intact.
- Outcome: Your console is restored to a factory-like state. All user data will be erased.
- New Advanced Option - Fix USER Partition: This level now includes a separate, advanced function to repair only a corrupt USER partition without touching the rest of the OS. This is a faster alternative if your problem is isolated to user data corruption (e.g., being unable to boot past the setup screen). Like the full rebuild, this process will also erase all user data.
Level 3: Complete Recovery (Last Resort)
- What it does: Reconstructs a complete NAND from scratch using a donor PRODINFO file and a pre-built NAND skeleton. It automatically detects the eMMC size (32GB/64GB) to use the correct template.
- When to use it: This is the final option for a completely dead or lost NAND where even the original PRODINFO is gone or corrupt.
- Outcome: A brand new, functional NAND is written to the eMMC. This is a total overwrite.
Prerequisites
Before using this tool, you will need to provide:
- Your Keys File: A
prod.keysfile dumped from your own console. - Firmware Files: A folder containing the extracted firmware for the version you wish to install.
- (Level 3 Only): A decrypted donor
PRODINFOfile if your original is lost.
All other required tools and donor partitions are included in the release package.
Installation & Windows Defender Notice
Download and Extract
- Download the
NAND-Fix-Pro-v2.0.0.exefile from the latest release page. - Important: The downloaded
.exefile is actually a 7-Zip self-extracting archive. When you run it or extract it, Windows Defender may flag theNANDFixPro.exelauncher as a potential threat.
False Positive Warning
This is a known false positive detection. The NANDFixPro.exe launcher is flagged because it:
- Automatically elevates to administrator privileges
- Installs a portable Python environment
- Executes system-level operations required for eMMC access
The tool is completely safe and open-source. You can review the source code in this repository at any time.
How to Exclude from Windows Defender
To use NAND Fix Pro, you'll need to add an exclusion to Windows Defender:
Method 1: Add Exclusion Before Extracting (Recommended)
- Open Windows Security by searching for it in the Start menu
- Click on Virus & threat protection
- Under "Virus & threat protection settings", click Manage settings
- Scroll down to Exclusions and click Add or remove exclusions
- Click Add an exclusion and select Folder
- Navigate to and select the folder where you plan to extract NAND Fix Pro
- Now extract the
NAND-Fix-Pro-v2.0.0.exeto that folder
Method 2: Restore Quarantined File
If Windows Defender already quarantined the file:
- Open Windows Security
- Go to Virus & threat protection
- Click on Protection history
- Find the
NANDFixPro.exeentry and click on it - Click Actions → Restore
- Then follow Method 1 above to add the folder to exclusions to prevent future detection
Method 3: Using Windows Defender via Settings
- Press
Windows + Ito open Settings - Go to Privacy & Security → Windows Security
- Click Virus & threat protection
- Under "Virus & threat protection settings", click Manage settings
- Scroll to Exclusions → Add or remove exclusions
- Click Add an exclusion → Folder
- Select your NAND Fix Pro installation folder
Usage
Getting started is designed to be as simple as possible.
1. Prepare Your Console and Files
- CRITICAL: Create a full NAND backup using Hekate before doing anything else. This is your essential safety net and must be done regardless of which repair level you plan to use. Without this backup, you cannot recover if something goes wrong.
- Get your unique console files. Use Lockpick RCM to dump your
prod.keysfile. You must copy this file from your Switch's SD card to your computer, as the tool needs it for all operations. - If you're performing a Level 3: Complete Recovery, you will also need a decrypted donor
PRODINFOfile. If you used theprodinfo_gentool to create one, ensure you copy this file to your computer as well. - Prepare a USB cable to connect your Switch to your computer.
2. Connect and Configure with Hekate
- Boot your Switch into Hekate.
- Navigate to the USB Tools menu.
- Ensure the "Read-only" option is disabled. This will allow the tool to write to your eMMC.
- Select eMMC RAW GPP. This makes your Switch's eMMC accessible to your computer.
3. Run the Tool
- Download the
NAND-Fix-Pro-v1.0.0.zipfile from the latest release page. - Extract the entire contents of the ZIP file to a folder on your computer.
- Simply double-click the
NANDFixPro.exefile.
The launcher will automatically perform a one-time setup:
- It will install an embedded, portable version of Python.
- It will install the necessary Python dependencies (
wmi). - It will then start the NAND Fix Pro application for you.
4. Flash the Generated Boot Files
- After the tool generates the new
boot0andboot1files, you must flash them to your console. - Copy the generated
boot0andboot1files into thebackup/<your-emmc-id>/restorefolder on your Switch's SD card. The<your-emmc-id>is a unique alphanumeric ID based on your eMMC chip, for example,e4ff5e48. - In Hekate, go to the Tools section. Select Restore eMMC, then choose eMMC BOOT0 & BOOT1 to flash these files back to your console.
Media
UNBRICKING THE SWITCH WITH LEVEL 1 METHOD USING THE NANDFIX PRO (sthetix)
UNBRICKING THE SWITCH WITH LEVEL 2 METHOD USING THE NANDFIX PRO 2.0.0 (sthetix)
UNBRICKING THE SWITCH WITH LEVEL 3 METHOD USING THE NANDFIX PRO 2.0.3 (sthetix)
Screenshots
File Structure
The tool relies on a specific folder structure to function correctly. Ensure your extracted folder looks like this:
NAND-Fix-Pro/
│
├── NANDFixPro.exe
├── nandfixpro.py
│
└───lib/
├── 7z/
│ └── 7z.exe
├── EmmcHaccGen/
│ └── EmmcHaccGen.exe
├── NxNandManager/
│ └── NxNandManager.exe
│
└───NAND/
├── donor32.7z
├── donor64.7z
├── PRODINFOF.7z
├── SAFE.7z
├── SYSTEM.7z
├── USER-32.7z
└── USER-64.7z
Disclaimer
This tool interacts directly with your console's internal memory (eMMC). While it includes safety measures, any interruption during a write process (e.g., power loss, cable disconnection) or use of incorrect files can lead to a permanent brick.
- You are using this tool at your own risk.
- Always make a full NAND backup with Hekate before attempting any repairs.
- The author is not responsible for any damage to your console.
Changelog
v2.0.4
- Key Features:
- Automatic detection of emuMMC raw devices (USBSTOR\DISK&VEN_HEKATE&PROD_SD_GPP)
- Track drive type (eMMC vs emuMMC) throughout the entire repair workflow
- Smart boot file placement based on detected drive type:
- eMMC: backup/[emmcID]/restore/
- emuMMC: backup/[emmcID]/restore/emummc/
- Enhanced user interface feedback showing detected drive type
- All Level 1/2/3 repair processes now support both eMMC and emuMMC targets
v2.0.3
- New Feature: Console Type Override
- A new "Override Console Type Detection" option has been added to the Level 1 and Level 2 tabs.
- Solve Mismatch Errors: This is specifically designed for users whose Switch console (e.g., a Mariko V2, Lite, or OLED) reports an incorrect boot chip ID to the software, often leading to a boot chain crash with error messages like "Erista pkg1 on Mariko" or "Wrong pkg1 flashed".
- Manual Selection: When enabled, a new dialog appears, allowing the user to manually select the correct console type (Erista or Mariko) for the EmmcHaccGen process, overriding the automatic detection from the PRODINFO.
- General Improvements and Fixes
- Improved Application Reset: The Reset App function has been enhanced to be more thorough. It now correctly clears the console type override checkbox state and resets the manual console type selection. It also clears the temporary paths (keys, prodinfo, and firmware) from the application's configuration file (config.ini).
v2.0.2
- Hotfix: eMMC Write Stability
- Advanced USB Error Detection: Added specific detection for "Bad file descriptor" errors (OSError: errno 9). This error often occurs due to an unstable USB connection, a bad cable, or a port issue during the raw write process.
- New User-Friendly Dialog: If this errno 9 error occurs, a new dialog box will now appear. It explains the potential causes (bad cable, USB 2.0 vs 3.0 port, etc.) and suggests concrete solutions to the user instead of just failing.
- More Robust Write Loop: The os.write() command inside the raw copy function is now wrapped in its own try...except block. This allows the app to immediately catch a write failure as it happens and report it, rather than failing silently or ambiguously.
- Safer File Handle Closing: The os.fsync() and os.close() commands are now in separate try...except blocks. This ensures that even if fsync fails (which is normal on some systems), the app will still attempt to properly close the file handle to the eMMC, preventing it from being left in a locked state.
v2.0.1
- Bug Fixes & Quality of Life Improvements
- Smarter SD Card & File Handling
- Manual SD Card Selection: If automatic detection of the Hekate SD card fails, you will now be prompted to select the drive manually. This provides a crucial fallback and ensures the application is always usable.
- Context-Aware "Get Keys from SD": The tool is now smarter. It will only look for, validate, and import a donor PRODINFO file if you are on the "Level 3" tab, preventing confusion and unnecessary file operations for Level 1 and 2 users.
- Robust Session Management: Fixed a critical bug where temporary paths for prod.keys, prodinfo, and firmware were saved to config.ini. The app now starts with a clean slate for these paths every time, preventing errors from using stale data from a previous session.
- Enhanced Cleanup & Application Reset
- Complete Cleanup After Copy: The "Copy BOOT to SD" function now performs a full cleanup. After successfully copying the files, it automatically deletes the entire temporary working directory, as well as the temporary prod.keys and PRODINFO files, leaving your system clean.
- Supercharged "Reset App" Button: The reset button is now far more powerful. It will:
- Delete any temporary prod.keys and PRODINFO files.
- Find and remove all switch_gui_* temporary folders created by the app.
- Reset all workflow states and clear the log for a truly fresh start.
- Improved Exit Cleanup: The application now properly cleans up temporary files and folders if you close it before completing the "Copy BOOT to SD" step.
- Under-the-Hood Optimizations
- Smoother Progress Bar: The visual progress bar has been refactored to update on a single line without flickering. It now uses a more efficient rendering method for a smoother user experience during long operations.
- Persistent Temporary Folders: Fixed a critical issue where the temporary folder containing the final BOOT0 and BOOT1 files could be deleted prematurely if an operation failed or the app was closed. The folder now persists until it is successfully used or manually reset.
- Dependency Check on Launch: The application startup script now verifies that required Python packages (wmi, psutil) are installed, and will attempt to install them automatically if they are missing.
v2.0.0
- Self-Extracting Package
- One-Click Installation: Version 2.0.0 is packaged as a self-extracting executable (SFX)
- Simply double-click the downloaded .exe file and it will automatically extract all files to your chosen location
- No manual extraction needed: No need for 7-Zip or WinRAR to unpack the archive
- Automatic Dependency Installation
- The NANDFixPro.exe launcher now handles all dependencies automatically on first run.
- OSFMount: Automatically installs PassMark OSFMount silently in the background
- Python Runtime: Installs a portable Python environment without affecting your system
- .NET Framework: Ensures required .NET components are installed silently
- Python Packages: Auto-installs required libraries (wmi, psutil) without user intervention
- Zero Configuration: Just run the launcher and everything is set up for you
- Built-in PRODINFO Editor
- Edit your PRODINFO file directly within the application without external tools.
- Serial Number Modification: Change the 14-character serial number with validation
- WiFi Region Selection: Update region codes (America, Europe, Japan, Asia, Australia)
- Frame Color Customization: Modify bezel and main body colors with a visual color picker
- Real-time Preview: See color changes instantly before applying
- Integrity Verification: Built-in CRC16 and SHA256 validation to ensure file integrity
- Automatic Checksum Recalculation: All checksums are automatically updated when you save changes
- Access via Menu: Available from the new "PRODINFO Editor" menu (enabled after loading a PRODINFO file)
- Visual Progress Tracking
- No more wondering what's happening during long operations.
- Progress Bars: Visual progress bars for all 7z extractions, file copies, and eMMC writes
- Real-time Updates: See exactly how much data has been processed and estimated time remaining
- Percentage Display: Clear percentage indicators for all major operations
- Cleaner Log Output: Progress bars update on a single line instead of flooding the log
- Enhanced Workflow Management
- Streamlined process from start to finish with intelligent button states.
- Smart Button States: Buttons change color to indicate status (blue=active, green=completed, gray=disabled)
- "Get Keys from SD" Integration: One-click import of prod.keys and donor PRODINFO from SD card
- Automatic PRODINFO Detection: Finds generated_prodinfo_from_donor.bin, PRODINFO, or PRODINFO.bin automatically
- "Copy BOOT to SD" Button: Automatically detects the correct backup folder and copies files
- Reset Application State: New "Reset App" button to start fresh without restarting the program
- Workflow Persistence: Completed steps stay green so you always know where you are in the process
- Improved Hardware Detection
- More reliable detection using Windows Management Instrumentation (WMI).
- Precise eMMC Detection: Identifies Switch eMMC by exact hardware ID (VEN_HEKATE&PROD_EMMC_GPP)
- SD Card Recognition: Detects Hekate SD card mounts by hardware signature (VEN_HEKATE&PROD_SD_RAW)
- Automatic Backup Folder Location: Finds backup/[emmcID]/restore folders without manual navigation
- Safer Operation: Multiple drive detection prevents accidental writes to wrong devices
- Advanced Options & Settings
- More control over the application's behavior.
- Custom Temporary Directory: Choose where to store temporary files (useful for drives with more space)
- Automatic Cleanup: Temp directories are properly cleaned up after operations complete
- Disk Space Validation: Pre-flight check ensures 60GB free space before starting operations
- Dependency Auto-Install: Automatically installs required Python packages (wmi, psutil) on first run
- Better Logging & Debugging
- Comprehensive logging system for troubleshooting.
- Save Log Function: Export logs to timestamped text files for sharing or analysis
- Clear Log Function: Clean the log view without closing the application
- Detailed Error Messages: More informative error messages with context
- Crash Recovery: Unhandled exceptions are logged to error_log.txt with full stack traces
- Quality of Life Improvements
- PRODINFO Menu Integration: Dedicated menu item for PRODINFO editing (disabled until file is loaded)
v1.0.3
- New "Help" Menu & Detailed Usage Guide
- You no longer need to search for external guides. All the information you need is now built directly into the app.
- New Help Menu: A "Help" menu has been added to the top bar with "Usage Guide" and "About" sections.
- External Guide File: The detailed guide is loaded from lib/docs/usage.txt, making it easy for the community to update and translate without changing the application code.
- Comprehensive Details: The guide provides in-depth explanations for when to use each level, the importance of backups, prerequisites like using Lockpick_RCM, and the consequences of each action (e.g., data loss, loss of online functionality).
- New Feature: Advanced USER Partition Fix
- A new "Advanced: Fix USER Only" button has been added to the Level 2 tab.
- Targeted Repair: This allows you to completely replace a corrupt USER partition without touching the operating system (SYSTEM) or any other part of the NAND.
- Fast & Efficient: It's perfect for common issues where the console boots but can't access user profiles or data. The process is significantly faster than a full Level 2 rebuild because it only writes the first 100MB of the partition.
v1.0.2
- Universal eMMC Detection & Confirmation (Safety First!)
- The most important feature of this update is a massive improvement to drive detection safety, which is now consistent across all three levels.
- WMI For All: The robust and reliable WMI drive detection, previously only in Level 3, is now implemented for Level 1 and Level 2.
- Final Confirmation Pop-up: Before any operation begins, a confirmation dialog will now appear for all levels. It displays the details of the detected eMMC (Path, Size, Model) and requires you to approve the action, virtually eliminating the risk of accidentally running a process on the wrong drive.
- Live Progress Bars (Know What's Happening)
- No more staring at the screen wondering if the script has frozen. A smooth, non-jittering progress bar now provides live feedback for all long-running file operations.
- Visual Feedback: You will now see a [█████-----] XX% progress bar during:
- All 7-Zip archive extractions (like SYSTEM.7z, donor64.7z, etc.).
- Large file copy operations, like preparing the NAND skeleton in Level 3.
- The final raw NAND write to the eMMC in Level 3.
- Process Optimizations & Bug Fixes
- Faster Level 3 Write: The optimized raw write for the Level 3 process has been reduced from 5GB to 4GB, speeding up the final step slightly while still covering all essential partitions.
- Critical Threading Fix: Resolved a major bug that could cause the application to freeze or become unresponsive during any of the repair processes. This ensures much greater stability.
v1.0.1
- Enhanced Logging System
- Save Log Feature: Export complete session logs with timestamps for troubleshooting and support
- Clear Log Function: Reset the log window during long sessions
- Cleaner Output: Reduced verbose debugging messages for more professional, readable logs
- Improved Error Prevention
- Disk Space Validation: Automatic check for 60GB free space before starting any repair level
- Better Error Messages: More descriptive error dialogs with actionable solutions
- Dependency Auto-Install: Automatic installation of required Python packages (WMI) on first run
- Flexible Storage Management
- Custom Temp Directory: Set temporary directory to any location on your PC for better storage management
- Improved Storage Control: Choose optimal drive locations based on available space and performance needs
- Process Completion Notifications
- Success Popups: Clear completion dialogs for Level 1 and Level 2 processes (Level 3 already had this)
- Consistent User Experience: All three levels now provide the same feedback structure
- Bug Fixes
- Fixed critical crash in Level 2 and Level 3 when modifying SYSTEM partitions
- Resolved save log dialog parameter errors
- Improved file path validation and error handling
v1.0
- First Release.
Acknowledgements
This application is a graphical frontend that would not be possible without the foundational work of these incredible tools and the teams behind them:
- EmmcHaccGen by suchmememanymuch
- NxNandManager by eliboa
- OSFMount by PassMark Software
- 7-Zip by Igor Pavlov
