No description
Find a file
2019-02-16 17:58:26 +03:00
src/main v0.2-development intermediate results of UI updates 2019-02-16 17:58:26 +03:00
Jenkinsfile Initial commit 2019-02-10 04:59:54 +03:00
LICENSE Initial commit 2019-02-10 04:59:54 +03:00
pom.xml v0.2-development intermediate results 2019-02-15 05:45:58 +03:00
README.md v0.2-development intermediate results 2019-02-15 05:44:39 +03:00

NS-USBloader

NS-USBloader is a PC-side TinFoil/GoldLeaf NSP USB uploader. Replacement for default usb_install_pc.py and GoldTree.

With GUI and cookies.

Read more: https://developersu.blogspot.com/2019/02/ns-usbloader-en.html

Here is the version of 'not perfect but anyway' tinfoil I use. Ok, I'm almost sure that this version has bugs. I don't remember where I downloaded it. But it works for me somehow.. Let's rephrase, if you have working version of TinFoil DO NOT use this one.

License

Source code spreads under the GNU General Public License v.3. You can find it in LICENSE file.

Requirements

JRE 8 or higher. See below.

Used libraries

Usage

Linux:

Install JRE/JDK 8 or higher (openJDK is good. Oracle's one is also good). JavaFX not needed, if you're interested (it's embedded).

root # java -jar /path/to/NS-USBloader.jar

macOS

See 'Linux' section.

Set 'Security & Privacy' if needed.

Windows:

  • Download Zadig: https://zadig.akeo.ie/
  • Open tinfoil. Set 'Title Managment' -> 'Usb install NSP'
  • Connect NS to pc
  • Open Zadig, select NS in dropdown, select 'libusbK (v3.0.7.0)' (version may vary), click 'Install WCID Driver'
  • Check that in device list of you system you have 'libusbK USB Devices' folder and your NS inside of it
  • Download and install Java JRE (8+)
  • Get this application (JAR file) double-click on on it (alternatively open 'cmd', go to place where jar located and execute via 'java -jar thisAppName.jar')
  • Remember to have fun!

Tips&tricks

Add user to udev rules to use NS non-root (Linux):

root # vim /etc/udev/rules.d/99-NS.rules

SUBSYSTEM=="usb", ATTRS{idVendor}=="057e", ATTRS{idProduct}=="3000", GROUP="plugdev"

root # udevadm control --reload-rules && udevadm trigger

Known bugs

  • Unable to interrupt transmission when libusb awaiting for read event (when user sent NSP list but didn't selected anything on NS).

TODO:

  • macOS QA by Konstanin Kelemen. Appreciate assistance of Vitaliy Natarov.
  • Windows support
  • code refactoring
  • GoldLeaf support
  • XCI support
  • Settings
  • File order sort (non-critical)