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

Discussion in '3DS - Homebrew Development and Emulators' started by Olmectron, Jan 26, 2016.

  1. Olmectron
    OP

    Olmectron GBAtemp Addict

    Member
    2,134
    1,335
    Dec 31, 2012
    Mexico
    A game
    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
    Warning: Spoilers inside!

    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
    Warning: Spoilers inside!
    Warning: Spoilers inside!

    How to translate and test to your preferred language
    Warning: Spoilers inside!

    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, Jun 19, 2016
  2. Olmectron
    OP

    Olmectron GBAtemp Addict

    Member
    2,134
    1,335
    Dec 31, 2012
    Mexico
    A game
    I added some images to the OP.
     
    Frythen likes this.
  3. Frythen

    Frythen Newbie

    Newcomer
    2
    1
    Jan 26, 2016
    Argentina
    Thank you very much, good desing and working as intentended with fbi.
     
    Olmectron likes this.
  4. Fabbbrrr

    Fabbbrrr Advanced Member

    Newcomer
    96
    31
    Jan 18, 2015
    Argentina
    Melbourne, Australia
    Nice work! thanks

    Can you add an option to change the buffer size from the UI?
     
    Olmectron likes this.
  5. Olmectron
    OP

    Olmectron GBAtemp Addict

    Member
    2,134
    1,335
    Dec 31, 2012
    Mexico
    A game
    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. :)
     
  6. Fabbbrrr

    Fabbbrrr Advanced Member

    Newcomer
    96
    31
    Jan 18, 2015
    Argentina
    Melbourne, Australia
    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!
     
    Olmectron likes this.
  7. Olmectron
    OP

    Olmectron GBAtemp Addict

    Member
    2,134
    1,335
    Dec 31, 2012
    Mexico
    A game
    Okay, I'll post on ZIP format next update! :yay3ds:
     
  8. TecXero

    TecXero Technovert

    Member
    2,814
    909
    Apr 13, 2014
    United States
    Mainframe
    Works nicely on Mint 17.3 with Oracle's Java 8. Thank you.
     
    Olmectron likes this.
  9. Olmectron
    OP

    Olmectron GBAtemp Addict

    Member
    2,134
    1,335
    Dec 31, 2012
    Mexico
    A game
    Thanks for letting me know!
     
    TecXero likes this.
  10. Olmectron
    OP

    Olmectron GBAtemp Addict

    Member
    2,134
    1,335
    Dec 31, 2012
    Mexico
    A game
    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, Jan 27, 2016
    Fabbbrrr likes this.
  11. cvskid

    cvskid GBAtemp Addict

    Member
    2,247
    826
    Apr 13, 2014
    United States
    Newest Java i see is Java 8u72. Does it make a difference?
     
  12. weatMod

    weatMod GBAtemp Advanced Maniac

    Member
    1,965
    622
    Aug 24, 2013
    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?
     
  13. AtlasFontaine

    AtlasFontaine GBAtemp Maniac

    Member
    1,081
    633
    Jul 18, 2015
    Venezuela
    Venezuela-Zulia.
    If I use a bigger buffersize, will it send the data faster?
     
  14. Fabbbrrr

    Fabbbrrr Advanced Member

    Newcomer
    96
    31
    Jan 18, 2015
    Argentina
    Melbourne, Australia
    Most likely. Try with a buffer of 1024kb and see what happens :)
     
  15. TecXero

    TecXero Technovert

    Member
    2,814
    909
    Apr 13, 2014
    United States
    Mainframe
    Depends on your network. If it's well optimized, it won't make much difference. If it's not, then it could, but I'd be more concerned about straightening out your network.
     
  16. AtlasFontaine

    AtlasFontaine GBAtemp Maniac

    Member
    1,081
    633
    Jul 18, 2015
    Venezuela
    Venezuela-Zulia.
    Well, my network only allows me to download files with 256kbps per second, so i'll change the buffer to 256.
     
  17. Olmectron
    OP

    Olmectron GBAtemp Addict

    Member
    2,134
    1,335
    Dec 31, 2012
    Mexico
    A game
    I'm not sure, everyone. But, shouldn't FBI's buffer size be changed for matching SocketPunch's too?
     
  18. Fabbbrrr

    Fabbbrrr Advanced Member

    Newcomer
    96
    31
    Jan 18, 2015
    Argentina
    Melbourne, Australia
    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.
     
    Olmectron likes this.
  19. Olmectron
    OP

    Olmectron GBAtemp Addict

    Member
    2,134
    1,335
    Dec 31, 2012
    Mexico
    A game
    Okay, then. :)

    And what FBI build did you use?
     
  20. wjchen

    wjchen Member

    Newcomer
    14
    9
    Jan 6, 2016
    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.