Homebrew [Release] SocketPunch - FBI network CIA installer for Android & PC

Olmectron

Well-Known Member
OP
Member
Joined
Dec 31, 2012
Messages
2,657
Trophies
2
Age
31
Location
A game
XP
3,855
Country
Mexico
Socket Punch is an app developed for sending CIA files through local network and install them directly using FBI's network abilities.

Current platforms: Java 8 (32 and 64 bit), Windows 7+ (64-bit only) and Android 2.3.3+ (tested only on 4.0+ so far). Download links below.

The original SocketPunch GUI app was developed by GBATemp's user @Joshtech thanks to @Steveice10's sockfile. You can find the orignal SocketPunch it in his original post.

The app is available for desktop Java 8 platform and as a Java Native EXE installer. The Java version (JAR file) should work on Windows, Mac and some Linux distros, given that you can install the latest Oracle's Java version. The Java Native EXE installer works on Windows 7 and higher, and doesn't need you to install Java separately.

You can help translate the desktop app to other languages! First read the instructions about how to use the desktop version, then head over to the "How to translate and test to your preferred language" section below, it's in green text, you won't get lost.

The Android port should work on version 2.3.3 or higher. However, it's only been tested on Android 4.4 and 5.1 so far. You can find it below.

As of April, 2016, Steveice10, the author of FBI, has released the 2.0 update. This update changed the way data is sent to the app from the PC. The Desktop version is already compatible with this new protocol, while the Android version still needs to be updated.

While the Socket Punch Desktop app already works with the FBI 2 update, if you want to use the old sending method, you can use this FBI 1.4 build: Recommended FBI build from @wjchen (this build fixes the problem with big files stopping midway when transferring in FBI 1.4)

Instructions for Android

1. Start the app from your app menu.
2. Press the OPEN CIA button. A Document Selector will show up, look for your CIA files.
3. After selecting you CIA file in step 2, open FBI in your 3DS and press Y button.
4. Copy the IP Address that FBI will show to the "IP Address" field in the app.
5. Press the Punch icon blue button in the bottom right corner.
6. Wait for your CIA file to be installed!

Instructions for desktop
1. Start the JAR extension app. Or double click the installed Socket Punch app if you used the Native EXE installer.
2. Look for CIAS in your directories pressing the folder icon button in the upper right corner. (Or add them by dragging and dropping on the window).
3. Open FBI in your 3DS and press Y button.
4. Copy the IP Address that FBI will show to the "3DS IP Address" field in the app.
5. Press the Punch icon blue button in the bottom right corner.
6. Wait for your CIAS to be installed!

Note: I recommend to disable the prompt option in FBI by pressing A when waiting for network. Specially if you're transfering many CIAS.

Desktop version source code

GitHub Repository

Latest Android build


March 18th, 2016: SocketPunch Android v0.5 alpha, third release
  • Now you can add several files to a queue list. However, it still has problems installing all the queue at once, you'll need to press the Punch for each file.
  • Pressing the Punch button will only attempt to send and install uncompleted files.
  • Added button to the action bar for removing completed files from queue.
  • It now tells you the elapsed minutes when the transfer completes, only in the app right now, not in the notification bar.
  • If your app gets dropped out while transferring, the actual transfer will go on and complete alright, but the queue will be lost. This only should happen if you put the app in the background, and open several more of them. So, it's completely ok to transfer big files, since even if the app closes for opening others, the transfer is in a background app-independent thread.
  • Improved the GUI a little bit to make it more similar to the desktop version.

    Some images:

    Screenshot_2016-03-18-22-15-36.png Screenshot_2016-03-18-22-16-55.png Screenshot_2016-03-18-22-17-13.png
March 15th, 2016: SocketPunch Android v0.3 alpha, second release
  • Added still untested support for Android 2.3.3 and higher.
  • You can put app in background (change to another app, press home button, sleep your phone) and the transfer will go on.
  • Added app punch icon for the app menu.
March 12th, 2016: SocketPunch Android v0.1 alpha, first release
  • Socket Punch for Android devices. Just install the APK.
  • You can only open and send one file at a time.
  • Requires Android 4.4 or higher.
  • Still in alpha. There could be problems if you suspend your phone or put the app in the background while transferring a CIA. The transfer would cancel and the app will crash.
  • Work in progress for adding all the functions of the desktop version. Excepting Drag & Drop.

Latest desktop build

June 19th, 2016: SocketPunch v1.2.5
Standard multiplatform JAR




    • Fixed bug that prevented to send more than one file at in the same queue when using Newest Mode with FBI 2.
    • Fixed bug that didn't open the file chooser if your last opened directory was removed or deleted.
Note: There are some issues with language files right now. Method for loading strings will change for the next release, now it'll use XML files
April 18th, 2016: SocketPunch MOD v1.2.1-beta
Standard multiplatform JAR
Native EXE Installer for Windows

  • Bugfixes from 1.2.0 that prevented to complete the transfer once it reached 100%. I deleted that version from the log since it was broken with FBI 2. It should work now. This is what was added in 1.2.0-beta:

  • Now compatible with the recent FBI 2 release.
  • You can switch between old and new protocol, so you can still use wjchen's FBI 1.4 build if you want, or use the latest official FBI build by Steveice10.
  • The FBI 2 (newest) mode should now transfer faster than v1.1.0-beta. Please, help me to test it.
  • This is a beta release. The Newest Mode could present more bugs than the Legacy Mode, since it's been tested less.
  • Added German thanks to user @robflop
  • Added French thanks to user @Badablek
March 25th, 2016: SocketPunch MOD v1.0.5
Standard multiplatform JAR
Native EXE Installer for Windows

  • Now you can re-order items in the list by dragging around and releasing the mouse button on another item (they will swap places in the list). Thanks to @WallK for suggesting this feature.
  • Added Russian thanks to user @WallK
  • Added Italian thanks to user @Real.96 . Users @Criminal90 and @iv2b, shared an Italian translation too, so thanks everyone!

    movement_card.gif
March 21st, 2016: SocketPunch MOD v1.0.3
Standard multiplatform JAR
Native EXE Installer for Windows

  • Added in-app updater for both JAR and Windows native versions. The app will check automatically for updates on startup, or you can check if there are updates by clicking on the Updates option from the context menu that shows when pressing the upper-left menu button.
  • Added Chinese (simplified) thanks to user @qlm2009
March 20th, 2016: SocketPunch MOD v1.0.2
Standard multiplatform JAR
Native EXE Installer for Windows

  • This is embarrasing, but... String version fixed! It showed 0.9 in the last update, when it was actually the 1.0 release.
  • Added button for showing progress options, they're not shown in the side bar anymore.
  • Minor stability updates for improving the user experience. :D Now, seriously, I changed the socket transfer code a little bit, it should fix problems when the transfer hangs before finishing. Haven't tried on 2.5GB+ CIA sized files, though. If your transfers start hanging a lot more than before, please comment about it.
  • Added brazilian portuguese thanks to translator @ZeuS_br

March 17th, 2016: SocketPunch MOD v1.0
Standard multiplatform JAR
Native EXE Installer for Windows

  • Re-enabled the option for removing files from the queue after being transferred. It should work as expected now.
  • Fixed a bug that prevented the queue to be transferred completely (it tried to send the same file many times).
  • Now you can select between clearing the whole queue, or only removing only completed files from the list, when you use the icon button with a trash can icon.
  • Added button for resetting the queue transfer progress to zero.
  • The files at 100% progress transfer are ignored if they're still in the list when you punch again!
  • Added option for exporting language files. This is useful for people who wants to translate it.


March 16th, 2016: SocketPunch MOD v0.9
Standard multiplatform JAR
Native EXE Installer for Windows
  • Disabled option for deleting files when transferred. This is just temporary for this release, since there was a bug that tried to send the same file twice. Will be fixed for next update.
  • Spanish language added. Just select it from the "Change Language" option. You need to restart the app when changing languages.
  • Anyone can help translate the app now to their favorite language! Just translate the sample.txt file as explained below. You can share the TXT file with me once your translation is finished if you want, so I can add it to the package and everyone can enjoy it.
March 15th, 2016: SocketPunch mod v0.8
Standard multiplatform JAR
Native EXE Installer for Windows
  • Transfer speed improved (should be quicker, or at least more stable). This hasn't been tested thoroughly. Please, help me test this if you have some spare time.
  • Added checkbox for clearing files from queue list when transferred successfully.
March 12th, 2016: SocketPunch mod v0.7
Standard multiplatform JAR
Native EXE Installer for Windows
  • Now the app shows the initial code for each CIA file.
March 8th, 2016: SocketPunch mod v0.6 and Source Code released
Standard multiplatform JAR
Native EXE Installer for Windows
GitHub Repository with source code
Recommended FBI build from @wjchen
  • Added option to delete only one item at a time from the queue. Make a secondary (right) click on the item you want to delete from the list.
  • Source code released. I didn't clean it at all, it's messed up a lot. Click here.

January 28th, 2016:
SocketPunch mod v0.5 released
Standard multiplatform JAR
Native EXE Installer for Windows
  • Minor changes on speed per second math. Thanks to @TecXero for the suggestion. It was a chaos before, it now shows average speed while transferring, and not frame speed.
  • Added ETR math in minutes while transferring.
January 27th, 2016: Socket Punch mod v0.4 released
  • Transfer speed and transferred size info is now visible when transferring a file.
  • Added check boxes for enabling or disabling showing updates when sending files.
  • Elapsed time of transfer (in minutes) and average transfer speed is now added to the savelog file (log.txt).

January 26th, 2016: Socket Punch mod v0.2 released
  • Added option for changing the buffer size from the app itself. You could do this before, but only by editing the generated config.txt file. Just press the menu icon button in the upper left corner, and click Advanced options from the context menu. This feature was suggested by @Fabbbrrr
  • Changed layout for making the toolbar smaller, and put main actions as icon buttons in the upper right corner.

How to translate and test to your preferred language
1. Download and start the SocketPunch MOD app in your preferred distribution.
2. Click on the upper-left button (immediately next to the app title).
3. Select the Export language option from the context menu and then select the language you want to translate from.
4. Press the Export button, and save the text file to wherever you want.
5. Open and edit the exported text file from where you saved it. It should look like this:

translate.PNG


6. If you have problems viewing the file correctly, I recommend using Notepad++ to edit it if you're a Windows user. Mac and Linux users shouldn't have any problem opening it on their default text viewers.
7. Translate all the lines to the language you want to. Let the part before the "=" the way it is, just change the text at the right side. Also, please note that in some lines you'll find three points together like this "...", those represent the place where runtime info (time, data size) will go, please don't remove then, but you can change them of place so that it makes sense with the language you us. Edit like in this example:

translate2.PNG


8. Now test your text file in the app! You can rename the sample.txt file to anything else you want (french.txt for example), just don't change the extension (leave it on .txt). Then click in the upper-left button (with the menu icon).

click-menu.PNG


9. Press on the "Import language" option from the context menu that appeared. A file chooser will appear. Select the sample.txt file from the previous steps (or whatever name you changed it to, it just has to be a .txt extension file).

IMPORT_LANG.PNG


10. Click again the button in the upper-left corner. This time, press the "Change language" option.

CHANGE_LANG.PNG


11. Your TXT file will be in the available languages list. Select it and click the "CHANGE" button in the right-bottom corner of the dialog.

change_dialog.PNG


12. That's all! Now, simply close and then start the app again. It will load the text data you edited in the text file.

13. You can use it for yourself, or share it with me so I add it to the JAR package, this way it'll available to everyone who downloads the app. Please help me get as many languages as possible! Thank you so much for reading until the very end.

FAQ
Q: FBI doesn't want to connect, but I'm in a local network!
A: Sadly, FBI most times doesn't connect if you don't have an active internet connection in your 3DS (with internet access, and not only local network access). If you are sure your local network have internet access, check that your internet connection is correctly set up in your 3DS Settings.


Q: The transfer stops before it reaches 100%. I get a MISALIGNED error or something like that in FBI.
A: Download and install wjchen's build of FBI. The download link is nearly on the top of this post. Look for orange letters.

Q: Does it work if I'm using my 3DS connected to wifi tethering on my mobile device?
A: Yes, as long as your PC is connected to that same mobile network, and you have internet access.

Q: From my last question, I was talking about the Android app working with wifi tethering connected 3DS.
A: Oh. Yes, it should work. You can turn on your WiFi tethering on an Android device, and after connecting your 3DS to it, the Android app should work correctly with the local IP your 3DS will show.

socket_2_1.PNG


socket_2_2.PNG



Thanks to @Joshtech for his amazing work!
Thanks to @Steveice10 for his amazing homebrew app!
Thanks to @wjchen for sharing a FBI build with the misaligned issue fixed!
Thanks to @ZeuS_br for sharing a brazilian portuguese translation for the desktop version.
Thanks to @qlm2009 for sharing a Simplified Chinese translation for the desktop version.
Thanks to @Real.96 for sharing an Italian translation for the desktop version.
Thanks to @WallK for sharing a Russian translation for the desktop version.
Thanks to @robflop for sharing a German translation for the desktop version.
Thanks to @Badablek for sharing a French translation for the desktop version.

 
Last edited by Olmectron,

Olmectron

Well-Known Member
OP
Member
Joined
Dec 31, 2012
Messages
2,657
Trophies
2
Age
31
Location
A game
XP
3,855
Country
Mexico
Nice work! thanks

Can you add an option to change the buffer size from the UI?
Yeah, of course. I wanted to do that, but thought it would be problematic for some people who don't know what it is. I think I'll add an "Advanced options" tab or something like that.

And I will release the source, too. But it will be later, my code is a mess right now. Need to clean it up a bit. :)
 

Fabbbrrr

Well-Known Member
Newcomer
Joined
Jan 18, 2015
Messages
96
Trophies
0
Age
36
Location
Melbourne, Australia
XP
249
Country
Argentina
Yeah, of course. I wanted to do that, but thought it would be problematic for some people who don't know what it is. I think I'll add an "Advanced options" tab or something like that.

And I will release the source, too. But it will be later, my code is a mess right now. Need to clean it up a bit. :)
I'm willing to take a look at the code once released :)

Also, would be nice to upload the file in .zip format, since I had to install an external tool to uncompress .rar in my mac :(

Thanks!
 
  • Like
Reactions: Olmectron

Olmectron

Well-Known Member
OP
Member
Joined
Dec 31, 2012
Messages
2,657
Trophies
2
Age
31
Location
A game
XP
3,855
Country
Mexico
January 26th, 2016: Socket Punch mod v0.2 released
  • Added option for changing the buffer size from the app itself. You could do this before, but only by editing the generated config.txt file. Just press the menu icon button in the upper left corner, and click Advanced options from the context menu. This feature was suggested by @Fabbbrrr
  • Changed layout for making the toolbar smaller, and put main actions as icon buttons in the upper right corner.
 
Last edited by Olmectron,
  • Like
Reactions: Fabbbrrr

cvskid

Well-Known Member
Member
Joined
Apr 13, 2014
Messages
2,807
Trophies
1
XP
3,353
Country
United States
I made a mod of @Joshtech's Socket Punch, which you can find in his original post.

It's only a GUI mod, because the functionality is basically the same.
  • It uses a kind of Material Design.
  • It now supports Drag & Drop files, and opening them from other folders.
  • Log of use is saved backwards, so that latest logs are seen first.
You need to have installed the latest Java version (Java 8u71), since it uses several features of Java 8, so It could not open at all if you're using OpenJDK 6 or 7 on Linux.

It uses the same code for transfers as Joshtech's latest version. I tested it with @wjchen's build of FBI, it works great with it, download link is below.

January 26th, 2016: Socket Punch mod v0.2 released
  • Added option for changing the buffer size from the app itself. You could do this before, but only by editing the generated config.txt file. Just press the menu icon button in the upper left corner, and click Advanced options from the context menu. This feature was suggested by @Fabbbrrr
  • Changed layout for making the toolbar smaller, and put main actions as icon buttons in the upper right corner.

Downloads
Socket Punch mod v0.2
wjchen's FBI build

Instructions
1. Start the JAR extension app.
2. Look for CIAS in your directories pressing the folder icon button in the upper right corner. (Or add them by dragging and dropping on the window).
3. Open FBI in your 3DS and press Y button.
4. Copy the IP Address that FBI will show to the "3DS IP Address" field in the app.
5. Press the Punch icon blue button in the bottom right corner (or in the upper right).
6. Wait for your CIAS to be installed!

Notes: I recommend to disable the prompt option in FBI by pressing A when waiting for network. Specially if you're transfering many CIAS.

View attachment 36885

View attachment 36886

Thanks to @Joshtech for his amazing work!
Thanks to @Steveice10 for his amazing homebrew app!
Thanks to @wjchen for sharing a FBI build with the misaligned issue fixed!
Newest Java i see is Java 8u72. Does it make a difference?
 

weatMod

Well-Known Member
Member
Joined
Aug 24, 2013
Messages
3,305
Trophies
2
Age
47
XP
3,336
Country
United States
what is this, what is socketpunch, i never used FBI, so this can let you instal CIA over wifi and let you install directly from your PC and not from SD ? or it copies to the SD first then installs the CIA?
like if you can't install a cia from your SD because you need double the space you could use this to install it with just space of the cia needed?
 

Fabbbrrr

Well-Known Member
Newcomer
Joined
Jan 18, 2015
Messages
96
Trophies
0
Age
36
Location
Melbourne, Australia
XP
249
Country
Argentina
I'm not sure, everyone. But, shouldn't FBI's buffer size be changed for matching SocketPunch's too?
It seems that it's not true anymore, from my own experience. As I said before in the original thread, I've tried with buff sizes of 128,256,512,1024,2048 and 32768. Best results with 1024. I did not change nothing in FBI... and it just works ok.
 
  • Like
Reactions: Olmectron

Olmectron

Well-Known Member
OP
Member
Joined
Dec 31, 2012
Messages
2,657
Trophies
2
Age
31
Location
A game
XP
3,855
Country
Mexico
It seems that it's not true anymore, from my own experience. As I said before in the original thread, I've tried with buff sizes of 128,256,512,1024,2048 and 32768. Best results with 1024. I did not change nothing in FBI... and it just works ok.
Okay, then. :)

And what FBI build did you use?
 

wjchen

Member
Newcomer
Joined
Jan 6, 2016
Messages
14
Trophies
0
Age
37
XP
70
Country
Switzerland
My FBI build set the buf to 32. You can set buff size to any you like.
I think there is no deference if you set buff size than 32.
 

Site & Scene News

Popular threads in this forum

General chit-chat
Help Users
  • No one is chatting at the moment.
  • Veho @ Veho:
    The fuuuuu---
  • Veho @ Veho:
    I thought it was an actual xBox at that price.
  • Sicklyboy @ Sicklyboy:
    I wanna grab a 360 Slim and a 360 E one of these days. Missed the boat of getting them at their lowest though, once they were discontinued. Could've got them for cheap back when I was a broke 20 something working at Target, but then again, I was a broke 20 something working at Target
  • Veho @ Veho:
    Being broke is no fun.
  • K3Nv2 @ K3Nv2:
    @Sicklyboy, $150 isn't that bad for a jtag slim on ebay
  • Veho @ Veho:
    I only wish it was actually playable.
  • Veho @ Veho:
    There's a guy on the Tube of You that makes playable mechanical arcade games out of Lego. This could work on the same principle.
  • Veho @ Veho:
    Just a couple of guys taking their manatee out for some fresh air, why you have to molest them?
  • Veho @ Veho:
    Stupid Chinese shop switched their shipping company and this one is slooooooow.
  • LeoTCK @ LeoTCK:
    STOP BUYING CHINESE CRAP THEN
  • LeoTCK @ LeoTCK:
    SUPPORT LOCAL PRODUCTS, MAKE REVOLUTION
  • LeoTCK @ LeoTCK:
    THEY KEEP REMOVING LOCAL SHIt AND REPLACING WItH INFERIOR CHINESE CRAP
  • LeoTCK @ LeoTCK:
    THATS WHY MY PARTNER CANT GET A GOOTWEAR HIS SIZE ANYMORE
  • LeoTCK @ LeoTCK:
    HE HAS BIG FOOT AND BIG DUCK
  • LeoTCK @ LeoTCK:
    d*ck i mean*
  • LeoTCK @ LeoTCK:
    lol
  • Veho @ Veho:
    Mkay.
  • Veho @ Veho:
    I just ordered another package from China just to spite you.
  • SylverReZ @ SylverReZ:
    Communism lol
  • SylverReZ @ SylverReZ:
    OUR products
  • The Real Jdbye @ The Real Jdbye:
    @LeoTCK actually good quality products are dying out because they can't compete with dropshipped chinese crap
    +1
    The Real Jdbye @ The Real Jdbye: @LeoTCK actually good quality products are dying out because they can't compete with dropshipped... +1