Homebrew RELEASE NS-USBloader - another one Tinfoil and GoldLeaf USB installer

pohaxsf

Well-Known Member
Member
Joined
Jan 7, 2019
Messages
230
Trophies
0
Age
25
XP
369
Country
Greece
NS-USBloader
version 0.3.1

33494485218_034a364eda_o.png


What is it all about?
It's just another one application to upload NSP files to Switch over USB and Network.
Spreads under GPLv3 license.

Supports:
  • TinFoil - both USB and Net methods (developed by Adubbz)
  • GoldLeaf (tested on v0.4)

Features:

  • Multiple file selection
  • GUI
  • Linux, Windows, MacOS support.
Requirements:
  • Java JRE/JDK 8u60 or higher
Known bugs:
  1. In some moments you can't interrupt file(s) transmission from application side. Not a big deal while you can unplug USB cord any moment, but FYI.
Screenshot.

46704448934_fb191a0fc3_o.png


Well, this is it.. I don't know what else to say. I'm newbie in GBAtemp. Sorry if I missed something :unsure:
Just want to share it with public.

To translators:

If you want to translate this application on your language, grab this file and translate it.
List of our translators mentioned in readme file on GitHub. Thanks for help with translation @Stephane012547

Project:
GitHub issues:

Downloads (see green label 'Latest release', NOT pre-release):

Let me know what you're thinking about all this. Thanks!

--
EDIT/UPDATE: Now I can insert links and images. Thanks for adding links before I updated post @hippy dave, @Idontknowwhattoputhere
I prefer yours
 
  • Like
Reactions: developer_su

developer_su

Developer
OP
Developer
Joined
Feb 18, 2019
Messages
163
Trophies
0
XP
1,892
Country
Russia
Looking on v0.3/v0.3.1 now..
"Don't serve requests" option is broken because of stupid mistake, NET-install is slow as hell and it could be faster for sure.

If you use it, I'm sorry for quality.

Will fix (or try to fix) it once have time.
 

Jiro2

Well-Known Member
Member
Joined
Mar 28, 2011
Messages
781
Trophies
1
XP
759
Country
United States
I am having trouble getting it to work (on Linux, over USB, with Goldleaf). Version is 0.4, using Goldleaf 0.5 on the Switch.

The log is as follows:

Code:
Files to upload:
  /home/------/iso/switch/Syberia.1.and.2.RF.XCI.[switchiso.org]/Syberia 1 and 2 [01004bb00421e800][30000][UPD].nsp
[ INFO ]    Start chain
[ PASS ] libusb initialization
[ PASS ] Get device list
[ PASS ] Read file descriptors for USB devices
[ PASS ] NS in connected USB devices found
[ PASS ] Open NS USB device
[ INFO ] Free device list
[ WARN ] libusb doesn't support function 'CAP_SUPPORTS_DETACH_KERNEL_DRIVER'. It's normal. Proceeding.
[ PASS ] Set active configuration to device.
[ PASS ] Claim interface
[ INFO ] ===========================================================================
[ INFO ] PFS Start NSP file analyze for [Syberia 1 and 2 [01004bb00421e800][30000][UPD].nsp]
[ PASS ] PFS Read file starting bytes.
[ PASS ] PFS Read 'PFS0'.
[ PASS ] PFS Read files count [6]
[ PASS ] PFS Read header [381]
[ PASS ] PFS Read NCA inside NSP: 0
[ PASS ]   Padding check
[ PASS ]   NCA offset check: 0
[ PASS ]   NCA size check: 248806912
[ PASS ]   NCA name offset check: 153
[ PASS ] PFS Read NCA inside NSP: 1
[ PASS ]   Padding check
[ PASS ]   NCA offset check: 248806912
[ PASS ]   NCA size check: 794112
[ PASS ]   NCA name offset check: 190
[ PASS ] PFS Read NCA inside NSP: 2
[ PASS ]   Padding check
[ PASS ]   NCA offset check: 249601024
[ PASS ]   NCA size check: 111104
[ PASS ]   NCA name offset check: 227
[ PASS ] PFS Read NCA inside NSP: 3
[ PASS ]   Padding check
[ PASS ]   NCA offset check: 249712128
[ PASS ]   NCA size check: 5120
[ PASS ]   NCA name offset check: 264
[ PASS ] PFS Read NCA inside NSP: 4
[ PASS ]   Padding check
[ PASS ]   NCA offset check: 249717248
[ PASS ]   NCA size check: 704
[ PASS ]   NCA name offset check: 306
[ PASS ] PFS Read NCA inside NSP: 5
[ PASS ]   Padding check
[ PASS ]   NCA offset check: 249717952
[ PASS ]   NCA size check: 1792
[ PASS ]   NCA name offset check: 343
[ PASS ] PFS Final padding check
[ INFO ] PFS Collecting file names
[ PASS ] PFS Finish NSP file analyze for [Syberia 1 and 2 [01004bb00421e800][30000][UPD].nsp]
[ PASS ] GL File structure validated and it will be uploaded
[ PASS ] GL Initiating GoldLeaf connection: 1/2
[ PASS ] GL Initiating GoldLeaf connection: 2/2
[ INFO ] GL 'ConnectionResponse' command:
[ PASS ]   [1/4]
[ PASS ]   [2/4]
[ PASS ]   [3/4]
[ PASS ]   [4/4]
[ INFO ] GL Handle 'Start' command:
[ PASS ]   [Send command prepare]
[ PASS ]   [Send command]
[ PASS ]   [Send length]
[ INFO ]   [Send information for 6 files]
[ PASS ]     [1/4] File #0
[ PASS ]     [2/4] File #0
[ PASS ]     [3/4] File #0
[ PASS ]     [4/4] File #0
[ PASS ]     [1/4] File #1
[ PASS ]     [2/4] File #1
[ PASS ]     [3/4] File #1
[ PASS ]     [4/4] File #1
[ PASS ]     [1/4] File #2
[ PASS ]     [2/4] File #2
[ PASS ]     [3/4] File #2
[ PASS ]     [4/4] File #2
[ PASS ]     [1/4] File #3
[ PASS ]     [2/4] File #3
[ PASS ]     [3/4] File #3
[ PASS ]     [4/4] File #3
[ PASS ]     [1/4] File #4
[ PASS ]     [2/4] File #4
[ PASS ]     [3/4] File #4
[ PASS ]     [4/4] File #4
[ PASS ]     [1/4] File #5
[ PASS ]     [2/4] File #5
[ PASS ]     [3/4] File #5
[ PASS ]     [4/4] File #5
[ INFO ] GL Handle 'Content' command
[ PASS ]   [Read requested ID = 3 ]

System logs in Linux show me this:
Code:
Apr 20 03:04:18 linux.local kernel: usb 1-5: new high-speed USB device number 5 using ehci-pci
Apr 20 03:04:20 linux.local kernel: usb 4-2: new full-speed USB device number 3 using ohci-pci
Apr 20 03:04:21 linux.local kernel: usb 4-2: New USB device found, idVendor=057e, idProduct=3000
Apr 20 03:04:21 linux.local kernel: usb 4-2: New USB device strings: Mfr=1, Product=2, SerialNumber=3
Apr 20 03:04:21 linux.local kernel: usb 4-2: Product: NintendoSdkDebugger
Apr 20 03:04:21 linux.local kernel: usb 4-2: Manufacturer: Nintendo
Apr 20 03:04:21 linux.local kernel: usb 4-2: SerialNumber: Serial Number

and it hangs with a moving red, white, and blue line on the ns-usbloader window but no actual progress bar.

On the Switch, Goldleaf just tells me "Processing application records..."

At some point it stops with this in the log (right after the Read requested):
Code:
[ FAIL ] Data transfer (write) issue
  Returned: ERROR_NO_DEVICE
[ FAIL ] Execution stopped
[ WARN ] Release interface
  Returned: -4 (sometimes it's not an issue)
[ INFO ] Requested handler close
[ INFO ] Requested context close
[ INFO ]    End chain


The filename does not contain special characters (I renamed it to remove a &, no difference).
 
Last edited by Jiro2,

Jiro2

Well-Known Member
Member
Joined
Mar 28, 2011
Messages
781
Trophies
1
XP
759
Country
United States
I tried two different nsp files (the main one and the update one for this game). Neither worked.

When I copied them over to the Switch an directly installed them (they are small enough to fit in fat32), they installed and ran successfully.
 

developer_su

Developer
OP
Developer
Joined
Feb 18, 2019
Messages
163
Trophies
0
XP
1,892
Country
Russia
I tried two different nsp files (the main one and the update one for this game). Neither worked.

When I copied them over to the Switch an directly installed them (they are small enough to fit in fat32), they installed and ran successfully.

No idea how to help you. It looks like in one moment switch goes to sleep mode or GoldLeaf stops listening for connections. In dmesg you'll see it as switch connected twice (disconnected/connected again).
IMHO it's something wrong with NSP or GL or USB cable (or even firmware if it has been ever updated to 7.0.1).
 

Jiro2

Well-Known Member
Member
Joined
Mar 28, 2011
Messages
781
Trophies
1
XP
759
Country
United States
It did seem to be going into sleep mode when I finally got the FAIL, but it never showed any signs that it was transferring anything before that happened. It just stayed on "[Read requested ID = 3 ]" and "Processing application records..."

The cable works fine for other purposes. The system was on at 4.1 at that point and had never been upgraded.
 

developer_su

Developer
OP
Developer
Joined
Feb 18, 2019
Messages
163
Trophies
0
XP
1,892
Country
Russia
Just wish to add that it always show a "Upgrade" is available even tho there isn't one.

Please download v0.4 again (?). It's fixed in there.

--------------------- MERGED ---------------------------

It did seem to be going into sleep mode when I finally got the FAIL, but it never showed any signs that it was transferring anything before that happened. It just stayed on "[Read requested ID = 3 ]" and "Processing application records..."

Ok. To be honest I don't have enough time to investigate this and I don't know when I'll have it. And I'm almost sure that I can't do anything with this issue.
If you want, you can bring up, for example Win 7 in VirtualBox, forward usb device inside VM, install Goldtree and check if it works (using same NSP files). I think you'll see the same issue on the same step.
Thanks!
 

bcoleman

Active Member
Newcomer
Joined
Apr 12, 2019
Messages
38
Trophies
0
Age
22
XP
162
Country
United States
I'm running Reinx 2.1, Goldleaf 0.5 and firmware 7.1. This tool works great, only problem I had was trying to install a split NSP. When I load the NSP, it shows up as a few KB. Basically it's only the folder. Since then I've recombined the NSPs and they install fine but maybe add support for split NSP?

Other than that, my NSPs install fine as long as the Switch doesn't go to sleep. The one time it did, the game showed up on my home screen and it said "this software cannot be started". So maybe have it pause when the switch sleeps (and pick back up when you wake it up). Thanks for the app!
 
  • Like
Reactions: developer_su

developer_su

Developer
OP
Developer
Joined
Feb 18, 2019
Messages
163
Trophies
0
XP
1,892
Country
Russia
Since then I've recombined the NSPs and they install fine but maybe add support for split NSP?
What is it? :) Never heard about it.
So maybe have it pause when the switch sleeps (and pick back up when you wake it up).
Can't do it on my side (and not sure that someone could fix it). Actually the installation process is next:
1. My app transfers files (files inside NSP-file-container) requested by GL or TF
2. TF or GL extract receiving data immediately to the location where they should be stored. That's why for example we could use FAT32. Interrupting this process is a bad idea, in other hand tracking data consistency in case it's interrupted (because of sleep mode) is also not trivial (and could not cover every type of failure).

If your software couldn't be started you have to remove and re-install it. If it won't helps, then something wrong with NSP (most likely).
(But I guess you know that already.)
Thanks!
 
  • Like
Reactions: bcoleman

bcoleman

Active Member
Newcomer
Joined
Apr 12, 2019
Messages
38
Trophies
0
Age
22
XP
162
Country
United States
What is it? :) Never heard about it.

Can't do it on my side (and not sure that someone could fix it). Actually the installation process is next:
1. My app transfers files (files inside NSP-file-container) requested by GL or TF
2. TF or GL extract receiving data immediately to the location where they should be stored. That's why for example we could use FAT32. Interrupting this process is a bad idea, in other hand tracking data consistency in case it's interrupted (because of sleep mode) is also not trivial (and could not cover every type of failure).

If your software couldn't be started you have to remove and re-install it. If it won't helps, then something wrong with NSP (most likely).
(But I guess you know that already.)
Thanks!

Yes, I deleted the game, reinstalled it and it worked fine.

When I use to install NSPs through the SD card method in tinfoil, if the switch went to sleep the download would pause, but it picked back up as soon as I woke it up. Don’t know if it’s possible with USB though.

A split NSP is an NSP over 4.29gb. When I used the SD card method on Fat32, I had to use a tool called “NSP Divider” so that I could drag the game to the SD card. The NSP divider splits the games into 4gb segments named “00”, “01”, “02” etc. and these files are placed in a folder that ends with “.nsp”. With this method, tinfoil and goldleaf allows you to drag the .nsp folder containing the pieces and install the folder as if it’s a complete NSP.

It’s not too important to add compatibility for it because people using USB Installation have no need to split those NSPs but coming from the SD method mine were already split. Just something to think about. I think the “fluffy” usb installer is adding compatibility for it from what I hear.
 

CameronCataclysm

Well-Known Member
Member
Joined
Sep 17, 2018
Messages
190
Trophies
0
Age
30
Location
North Carolina
XP
1,115
Country
United States
Quoted as "just another usb installer". Yet my friend this has been the only one to work for me. Thank you so much! Even games that would previously give me corrupted errors are working flawlessly using this. Also perfect solution for fat32. Great work!

Edit:Had to come back to express how this has made all complications I've had with installing NSPs completely disappear. Couldn't imagine not having this now. Again thanks so much.
 
Last edited by CameronCataclysm,

Site & Scene News

Popular threads in this forum

General chit-chat
Help Users
  • BigOnYa @ BigOnYa:
    Not even once, but 100's of times
    +2
  • Psionic Roshambo @ Psionic Roshambo:
    My girlfriend at the time, she had me stay up with her all night because some how the crazy bitch had spent like 12 hours snorting 2 8 balls, didn't use any water (gotta clean your nose) so she had so much crusted in her nose I was sure she was gonna blow up her heart. I mean this was the stuff right off the boat so absolutely pure. ugghh so annoying
  • Psionic Roshambo @ Psionic Roshambo:
    Also doing like 320 dollars worth of coke in half a day lol damn it
  • Psionic Roshambo @ Psionic Roshambo:
    hmmm 360 even lol
  • Psionic Roshambo @ Psionic Roshambo:
    Well I was getting a discount so 320 is probably right
  • BigOnYa @ BigOnYa:
    That is cheap, I used to pay $100 for a tine.
  • Psionic Roshambo @ Psionic Roshambo:
    Tine? One gram?
  • BigOnYa @ BigOnYa:
    Sixteenth
  • Psionic Roshambo @ Psionic Roshambo:
    Also it was literally out of a kilo when I got it off the boat so absolutely pure
  • Psionic Roshambo @ Psionic Roshambo:
    Holy shiz that's a lot
    +1
  • Psionic Roshambo @ Psionic Roshambo:
    I was getting 3.5 Grams for 320 could have stepped on it and doubled my money easy lol
    +1
  • BigOnYa @ BigOnYa:
    I'd be afraid to it nowdays, my heart would explode prob. I just stick beers n buds nowdays.
  • Psionic Roshambo @ Psionic Roshambo:
    I would get to drive from tarpon springs to like Miami a thousand bucks lol do that twice a week and back in 92 that was good money
  • Xdqwerty @ Xdqwerty:
    @BigOnYa,
    @Psionic Roshambo what are you guys talking about?
  • Psionic Roshambo @ Psionic Roshambo:
    Blew it on women and muscle cars lol
    +1
  • BigOnYa @ BigOnYa:
    @Xdqwerty Hamster food, its pricey nowadays to keep PCs running.
    +2
  • Psionic Roshambo @ Psionic Roshambo:
    I don't do anything except cigarettes and gotta stop eventually lol
    +1
  • BigOnYa @ BigOnYa:
    I'd do shrooms again if could find, and I was outside camping/fishing, and had a cooler full of beer.
    +1
  • Psionic Roshambo @ Psionic Roshambo:
    I wouldn't mind some LSD, laughing until my face hurt sounds fun lol
    +1
  • BigOnYa @ BigOnYa:
    You ever try soaper powder/qauludes? I did once and like a dumbass drank beer on top of taking, I woke up laying in my backyard in the pouring rain, it knocked me out. I have not seen it around in many many years.
    +1
  • Psionic Roshambo @ Psionic Roshambo:
    No never tried a lot of things but never that lol
  • Psionic Roshambo @ Psionic Roshambo:
    I did pass out one time on a floor after taking a bunch of Ambien lol thought it would help me sleep and did it lol
  • Psionic Roshambo @ Psionic Roshambo:
    Girlfriend was working at a pharmacy and stole like 500 of them, was and still is the biggest pill bottle I have ever seen lol
    Psionic Roshambo @ Psionic Roshambo: Girlfriend was working at a pharmacy and stole like 500 of them, was and still is the biggest...