2019-02-10 04:59:54 +03:00
# NS-USBloader
NS-USBloader is a PC-side tinfoil NSP USB uploader. Replacement for default usb_install_pc.py
With GUI and cookies.
## License
Source code spreads under the GNU General Public License v.3. You can find it in LICENSE file.
2019-02-10 13:07:40 +03:00
## Requirements
2019-02-11 04:26:51 +03:00
JRE 8 or higher. See below.
2019-02-10 13:07:40 +03:00
2019-02-10 04:59:54 +03:00
## Used libraries
* OpenJFX https://wiki.openjdk.java.net/display/OpenJFX/Main
* usb4java: https://mvnrepository.com/artifact/org.usb4java/usb4java
2019-02-10 15:39:44 +03:00
* Few icons taken from: http://materialdesignicons.com/
2019-02-10 04:59:54 +03:00
2019-02-10 17:40:29 +03:00
## Usage
2019-02-11 04:26:51 +03:00
### 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).
2019-02-10 05:01:20 +03:00
2019-02-10 17:40:29 +03:00
`root # java -jar /path/to/NS-USBloader.jar`
2019-02-10 05:01:20 +03:00
2019-02-11 04:26:51 +03:00
### 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!
### macOS
Coming...
2019-02-10 17:40:29 +03:00
## Tips&tricks
2019-02-11 04:26:51 +03:00
### Add user to udev rules to use NS non-root (Linux):
2019-02-10 17:40:29 +03:00
`root # vim /etc/udev/rules.d/99-NS.rules`
2019-02-11 05:16:07 +03:00
2019-02-10 17:40:29 +03:00
`SUBSYSTEM=="usb", ATTRS{idVendor}=="057e", ATTRS{idProduct}=="3000", GROUP="plugdev"`
2019-02-11 05:16:07 +03:00
2019-02-10 17:40:29 +03:00
`root # udevadm control --reload-rules && udevadm trigger`
2019-02-10 04:59:54 +03:00
## 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
2019-02-11 04:26:51 +03:00
- [x] Windows support
- [ ] code refactoring