Homebrew [Release] FBI - Open source CIA installer

  • Thread starter Thread starter Deleted User
  • Start date Start date
  • Views Views 1,611,715
  • Replies Replies 4,207
  • Likes Likes 102
I can understand that but still it's annoying. It's a good idea to setup your sysNand Home menu and emuNand Home Menu differently so as not to confuse the 2 when updating the system. For me I made 3 extra folders that say SYS for sysNand and EMU for emuNand. I put them on the bottom left as I have 3 rows.

You should be able to backup the emuNand partition using most partitioning software. This would make recovery much quicker.
I don't think you do understand, otherwise you wouldn't be calling it a bug.

The 3DS always reboots when leaving the settings app, even when you exit it from sysNAND.
 
I don't think you do understand, otherwise you wouldn't be calling it a bug.

The 3DS always reboots when leaving the settings app, even when you exit it from sysNAND.

I called it a bug because other people were calling it that. I didn't know the 3DS restarts when exiting the System Settings App.
 
I suppose it wouldn't hurt to reduce it to something like 4 times a second.

EDIT: Okay, updated it just now. I actually decided to just go ahead and make the progress display only redraw when the percentage changes.

This has increased performance of network transfers. Haven't had a misaligned size yet... Transfered 600mb+ cias
 
I suppose it wouldn't hurt to reduce it to something like 4 times a second.
EDIT: Okay, updated it just now. I actually decided to just go ahead and make the progress display only redraw when the percentage changes.

Checked installation time:
v.1.3.4 - 8:45
v.1.3.6 - 8:00
About 669KiB/s vs 731KiB/s. Thanks for a quick fix!
 
I don't think you do understand, otherwise you wouldn't be calling it a bug.

The 3DS always reboots when leaving the settings app, even when you exit it from sysNAND.

Ontop of that, If you change any settings, then go to system transfer, I believe it attempts to restart before the system transfer (meaning you can't change setting right before a transfer of emunand)
 
New version of FBI is working great for me - network transfers seem completely stable now.

I had a quick question, though I don't know if it's an easy answer or not.

Just wondering if there is a hard limit to the speed of .cia network transfers on the 3DS? To me it seems like 500KB/s is a hard limit, but I'm just wondering if it would be possible to go passed this speed, maybe to 1 or 2 MB/s? Would this introduce performance issues, dropped packets, or some other kind of error?
 
New version of FBI is working great for me - network transfers seem completely stable now.

I had a quick question, though I don't know if it's an easy answer or not.

Just wondering if there is a hard limit to the speed of .cia network transfers on the 3DS? To me it seems like 500KB/s is a hard limit, but I'm just wondering if it would be possible to go passed this speed, maybe to 1 or 2 MB/s? Would this introduce performance issues, dropped packets, or some other kind of error?

It depends on your network speed and the 3DS's WiFi speed. There's no limit enforced by FBI's code.
 
  • Like
Reactions: Margen67
It depends on your network speed and the 3DS's WiFi speed. There's no limit enforced by FBI's code.

what if you increase the buffer size? the larger the buffer, the less number of calls to recv() required (which means better performance and faster transfer). a 64kb buffer seems a bit too little.
 
what if you increase the buffer size? the larger the buffer, the less number of calls to recv() required (which means better performance and faster transfer). a 64kb buffer seems a bit too little.

Increased buffer size does not necessarily equal increased performance. FYI, others have had it go close to 1mbps, so its definitely not FBI capping it to 500kbps.

I'll increase it a bit, but no guarantees it'll actually help.
 
  • Like
Reactions: Margen67
Increased buffer size does not necessarily equal increased performance. FYI, others have had it go close to 1mbps, so its definitely not FBI capping it to 500kbps

increasing the buffer size does not significantly affect performance with small files. but the bigger the files, the bigger the performance impact. just saying, 64kb is not an appropriate buffer size for files in the several-hundred-megabytes to gigabyte range.
 
increasing the buffer size does not significantly affect performance with small files. but the bigger the files, the bigger the performance impact. just saying, 64kb is not an appropriate buffer size for files in the several-hundred-megabytes to gigabyte range.

Just changed the buffer size of sockfile and FBI from 16kb to 128kb. Despite the fact that it's a 8x increase in buffer size, I didn't notice any improvements. Feel free to try it yourself though, I've updated the link in the first post with the change.
 
It depends on your network speed and the 3DS's WiFi speed. There's no limit enforced by FBI's code.

I see. Thanks for the quick and simple answer.

I'll have to see if there's anything I can do to improve my router's performance by changing settings around. Maybe changing it from b/g/n mode to b/g mode or just g mode might improve speed a bit?

Just changed the buffer size of sockfile and FBI from 16kb to 128kb. Despite the fact that it's a 8x increase in buffer size, I didn't notice any improvements. Feel free to try it yourself though, I've updated the link in the first post with the change.

I'll give it a try too, though it sounds like it probably won't make any real difference so I won't get my hopes up too much.

edit: Yeah, no discernible difference and still getting just a little under 500KB/s with PC connected via ethernet and 3DS next to router. Will try messing with router settings later though, maybe I can get up to 1MB/s too.

I'll update SocketPunch soon to conform to the increased buffer.

Ah. Looking forward to seeing if that makes any difference. I figure there has to be a limit to the rate the 3DS can install .cias though, seeing as even SD card installation doesn't seem that fast to me with a genuine class 10 sandisk card.
 
  • Like
Reactions: Margen67
Just changed the buffer size of sockfile and FBI from 16kb to 128kb. Despite the fact that it's a 8x increase in buffer size, I didn't notice any improvements. Feel free to try it yourself though, I've updated the link in the first post with the change.

128kb is still a small buffer if you intend to transfer big files. what if you up it to a megabyte? with each call to recv(), you probably call lots of other stuff as well (progress drawing code) which affects performance.
 
  • Like
Reactions: Margen67
128kb is still a small buffer if you intend to transfer big files. what if you up it to a megabyte? with each call to recv(), you probably call lots of other stuff as well (progress drawing code) which affects performance.

Progress drawing code is only called when the percentage changes. Even with a big buffer, its not guaranteed that the buffer will actually be filled. It only fills it up with as much as it has received so far, so its not necessarily "calls = totalSize / bufferSize"
 
Progress drawing code is only called when the percentage changes. Even with a big buffer, its not guaranteed that the buffer will actually be filled. It only fills it up with as much as it has received so far, so its not necessarily "calls = totalSize / bufferSize"

even if it's just approximation (because the buffer is not guaranteed to be filled completely), it's guaranteed that your code will not be the bottleneck with a buffer size of appropriate size. several hundred calls to recv() weigh less than several thousands, obviously. anyway, still your call.
 
even if it's just approximation (because the buffer is not guaranteed to be filled completely), it's guaranteed that your code will not be the bottleneck with a buffer size of appropriate size. several hundred calls to recv() weigh less than several thousands, obviously. anyway, still your call.

Assuming the buffer was filled every time, it would only be called ~8192 times per GB, which I think is safe enough.
 
Uh, I managed to download system updates with 3DNUS and install them on sysNAND, without any signature patching CFW. Managed to downgrade system settings with this ;) (Used the Ninjhax build, btw). As for eShop content - if you download it with FunkyCia, you could use the "-private" option, making the CIA's "legit", I think.

the option is '-personal' and it doing that makes it only legit/(installable?( with your 3ds -- and this way the cia only installed via pbt anyway, at the moment it has the most cfw patches for us
 

Site & Scene News

Popular threads in this forum