Fluffy
A feature-rich tool for installing NSPs!
Install / Use
/learn @fourminute/FluffyREADME
Fluffy
<b><a href="https://github.com/fourminute/Fluffy/blob/master/README_CH.md">查看中文使用说明,请点击这里!</a></b>
<b><a href="https://github.com/fourminute/Fluffy/blob/master/README_KR.md">한국어를 할 줄 알아요?</a></b>
<b><a href="https://github.com/fourminute/Fluffy/releases/latest">Latest Release v2.9.2</a></b>
<b><a href="https://github.com/fourminute/Fluffy/raw/master/Tinfoil.nro">Download Recommended TinFoil.nro</a></b>
<b><a href="https://github.com/fourminute/Fluffy/raw/master/Goldleaf.nro">Download Recommended Goldleaf.nro</a></b>
Features
- Support for <b>XorTroll/Goldleaf</b> and <b>Adubbz/Tinfoil</b>
- Support for languages: <b>English, Chinese, Vietnamese, Spanish, French, Brazilian Portuguese, Turkish, Italian, German, and Bahasa Indonesia</b>!
- Cross platform: Fluffy works natively on <b>Windows</b>, <b>Linux</b>, and <b>MacOS</b>!
- USB and Network: Display live transfer rate in MB/s with progress percentage.
- USB and Network: Display current NSP being installed and numbered queue.
- USB and Network: Batch NSP install support with individual selection.
- USB and Network: Consecutive installs without restart.
- USB and Network: Exception/Error handling, no restart required when an installation fails.
- USB and Network: Ability to abort an installation in queue.
- Tinfoil Network: Spoof file URL's to fix lengthy file name bug in Tinfoil's code.
- Tinfoil Network: Randomized port selection.
- Tinfoil Network: By default fall-back to Network Mode in the event USB mode can't be used(e.g. missing libraries).
- Goldleaf: Display current file being accessed.
- Goldleaf: Goldleaf v0.6 compatible with all of the file handling features.
- Goldleaf: Default protections are in place to safe-guard users from a potentially compromised Goldleaf file.
- Default: File operations such as file creation, deletion, renaming will result in a user-prompt(yes or no).
- Default: Read-only access for all files.
- Default: Read/write to non-NSP files are restricted.
- All of these security restrictions are changeable in fluffy.conf.
- Tinfoil USB: Selectable transfer rates between "Normal Mode" and "Safe Mode" for those with aging hardware(e.g. out of spec USB ports).
- USB: Switch connected indicator.
- User-Interface: Light Mode and Dark Mode.
- General: Auto saves to config Switch IP Address, Light/Dark Mode Settings, and Language Selection.
- General Support for UI scaling up to 4K resolution.
- Tinfoil USB: Switch Firmware 5.x USB Fix (Thanks to <a href="https://github.com/satelliteseeker">satelliteseeker</a> for finding this fix, choose 'Safe Mode')
- Cute fluffy penguin.
Screenshot
<img src="https://github.com/fourminute/Fluffy/blob/master/misc/uifluffy-sq3.png?raw=true" width="800"/>[Windows] Instructions For Use (Fluffy.exe)
1/3) Install TinFoil or Goldleaf on your Switch
- <b>These steps apply for all custom firmware. This includes but not limited to: Kosmos, ReINX, SXOS, etc.</b>
- Download <a href="https://github.com/fourminute/Fluffy/blob/master/Tinfoil.nro">Recommended TinFoil</a>
- Copy and paste "<b>TinFoil.nro</b>" to a folder named "Switch"(create it if necessary) on the root of your SD card.
- <i>or</i> Download <a href="https://github.com/XorTroll/Goldleaf/releases">Goldleaf</a> by XorTroll.
2/3) Install and Setup Zadig Driver
- Download Zadig: https://zadig.akeo.ie or github mirror in case the website goes down.
- With your Switch plugged in to your PC using a USB-C cable, open TinFoil(on your Switch). This will ensure your Switch is visible.
- Open Zadig > Options > List All Devices.
- In the scroll box above the button "Install Driver", tap the arrow until arriving at "libusbK".
- Click "Install Driver"
- Done!
3/3) Run Fluffy and Install NSP(s)! (Tinfoil)
- Connect your Switch and your PC with a USB Type-C cable.
- Run Fluffy.exe.
- On your Switch open Tinfoil > Title Management > USB Install NSP
- On Fluffy click "NSP Selection" > Select your NSP(s)
- On Fluffy's Tinfoil USB screen click "Begin Transfer".
3/3) Run Fluffy and Install NSP(s)! (Goldleaf)
- Run Fluffy.exe.
- On your Switch open Goldleaf > Explore Content
- On Fluffy's Goldleaf screen click "Begin Transfer".
- On your Switch select "PC Drive (via USB)"
- Navigate to and install your NSP(s).
[Windows] Instructions For Use (Fluffy.pyw)
1/5) Install TinFoil or Goldleaf on your Switch
- <b>These steps apply for all custom firmware. This includes but not limited to: Kosmos, ReINX, SXOS, etc.</b>
- Download <a href="https://github.com/fourminute/Fluffy/blob/master/Tinfoil.nro">Recommended TinFoil</a>
- Copy and paste "<b>TinFoil.nro</b>" to a folder named "Switch"(create it if necessary) on the root of your SD card.
- <i>or</i> Download <a href="https://github.com/XorTroll/Goldleaf/releases">Goldleaf</a> by XorTroll.
2/5) Install and Setup Zadig Driver
- Download Zadig: https://zadig.akeo.ie or github mirror in case the website goes down.
- With your Switch plugged in to your PC using a USB-C cable, open TinFoil(on your Switch). This will ensure your Switch is visible.
- Open Zadig > Options > List All Devices.
- In the scroll box above the button "Install Driver", tap the arrow until arriving at "libusbK".
- Click "Install Driver"
- Done!
3/5) Install Python
- Download and Install Python 3 from Python Website. Select the "PATH" option during install. <b>Ensure no previous version of Python is installed and do not use the 64-bit version of Python 3. This may cause an error "PyUSB not found".</b> Also be sure to include Tkinter with your installation(it should be a default option).
4/5) Install Python Dependencies
- Open Command-line/CMD (Start, search "CMD") and run the following:
pip3 install pyusb pyqt5 libusb libusb1 qdarkstyle configparser
5/5) Run Fluffy and Install NSP(s)! (Tinfoil)
- Connect your Switch and PC with a USB Type-C cable
- Run Fluffy.pyw
- On your Switch open Tinfoil > Title Management > USB Install NSP
- On Fluffy click "NSP Selection" > Select your NSP(s)
- On Fluffy's Tinfoil USB screen click "Begin Transfer"
5/5) Run Fluffy and Install NSP(s)! (Goldleaf)
- Connect your Switch and PC with a USB Type-C cable
- Run Fluffy.pyw
- On your Switch open Goldleaf > Explore Content
- On Fluffy's Goldleaf screen click "Begin Transfer"
- On your Switch select "PC Drive (via USB)"
- Navigate to and install your NSP(s)
Linux instructions
Ubuntu/Debian based distributions
1/3) Install Python and Dependencies
- Required:
python3 python3-pyusb python3-pyqt5 python3-tk python3.6-tk libusb libusb1 qdarkstyle. - Install Python3:
sudo apt install python3 python3-pip python3-tk.- Then open Terminal and run this command:
pip3 install pyusb pyqt5 libusb libusb1 qdarkstyle configparser.- If that doesn't work try
pip install pyusb pyqt5 libusb libusb1 qdarkstyle configparser.
2/3) Download Fluffy and Switch Rule
Download the latest <a href="https://github.com/fourminute/Fluffy/releases/latest">Fluffy.pyw</a> and <a href="https://github.com/fourminute/Fluffy/blob/master/linux/80-fluffy-switch.rules">80-fluffy-switch.rules</a>.
Open Terminal and change into the directory where these files are located using the cd command:
cd /path/to/fluffy/
Copy the file <b>80-fluffy-switch.rules</b> to <b>/etc/udev/rules.d/</b> using this command:
sudo cp 80-fluffy-switch.rules /etc/udev/rules.d/
Then give both the proper permissions:
sudo chmod 644 /etc/udev/rules.d/80-fluffy-switch.rules
sudo chmod 755 fluffy.pyw
3/3) Starting Fluffy
To start Fluffy.pyw you should be able to double-click to open. But if that doesn't work, you may need to run Fluffy.pyw using Terminal.
Open Terminal and Enter:
python3 /path/to/fluffy.pyw
<i>Alternatively</i>, you can install IDLE(A Python interface).
sudo apt-get install idle3
Open IDLE > Open Fluffy.pyw then select Run > Run Module.
Arch/Manjaro/Antergos
Install the AUR package <a href="https://aur.archlinux.org/packages/fluffy-switch/">fluffy-switch</a> maintained by <a href="https://github.com/YoyPa">YoyPa</a>.
Installation and Application Launcher (Optional)
You may wish to Install Fluffy. Download the latest <a href="https://github.com/fourminute/Fluffy/releases/latest">Fluffy.pyw</a> and 'icon.ico' and 'install.sh' from <a href="https://github.com/fourminute/Fluffy/tree/master/linux">here</a>. Extract and move each file into a single folder.
Installation is then as simple as:
cd /path/to/files/
sudo ./install.sh
MacOS instructions
brew install tcl-tk
brew reinstall python3
pip3 install pyusb pyqt5 libusb libusb1 qdarkstyle configparser
python3 ./fluffy.pyw
<sub>Special thanks to <a href="https://github.com/GuillaumeJulien">GuillaumeJulien</a> for these instructions.</sup>
<sub><i>For more info on brew, head to https://brew.sh/</i></sup>
Troubleshooting Tips
<b>(Linux)Fluffy.pyw still shows up as an unknown file?</b>
Answer: Run it using Terminal
python3 fluffy.pyw
<b>Why do I keep getting the error: "USBCore No Backend Available"?</b>
Answer: This can be caused by 1-2 things.
- Download <a href="https://github.com/fourminute/Fluffy/raw/master/windows/libusb-1.0.dll">libusb-1.0.dll</a> and place it in the same folder as Fluffy. If that doesn't work, install LibUSB using Zadig or <a href="https://github.com/fourminute/Fluffy/raw/master/windows/libusb-win32-devel-filter-1.2.6.0.exe">libusb-win
