• This repository has been archived on 13/Oct/2019
  • Stars
    star
    214
  • Rank 184,678 (Top 4 %)
  • Language
    C
  • Created almost 10 years ago
  • Updated over 5 years ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

3DSController

A 3DS homebrew application which allows you to use your 3DS as a wireless controller for Windows.

Download

The latest release will always be downloadable from here.

If you are updating to 0.6 from an older version, you will need to make sure you update vJoy to the recommended version.

Setup and Usage

Firstly, if you want to be able to register the circle pad or touch screen as a joystick you will need to install vJoy (version 2.0.5-120515 is preferable). However, if you just want to use keyboard buttons, this is not necessary.

Extract the archive and copy the executable in the 3DS directory with the extension that applies to your loader: 3DSController.3dsx and 3DSController.smdh for Ninjhax, 3DSController.3ds for flashcards, or 3DSController.cia for CFWs, into your 3DS's SD card or flashcard's micro SD card.

Copy the file 3DS/3DSController.ini to the root of your 3DS's SD card, and change the line that says IP: 192.168.0.4 to match your computer's local IP.

If you are unsure of your local IP address, run 3DSController.exe and it will tell you.

Run 3DSController.exe on your computer. If you are prompted, make sure to allow it through your firewall.

Start the application on your 3DS, there is no GUI, it will automatically try to connect to the IP address you put in 3DSController.ini.

If it wasn't able to read the IP from 3DSController.ini, it will notify you and quit.

Otherwise, you should just see a black screen, this is a good sign. To see if it works, open Notepad and press some buttons on the 3DS, they should show up. You can also test if the joystick works by going to Configure USB Game Controllers in Control Panel, it shows up as vJoy.

If using version 0.4 or above you can press L, R and X to bring up the keyboard. Press L, R and X again to close it.

If using version 0.6 or above, up to 16 joystick buttons are available. If you wish to use more than 8, you need to configure vJoy. Search in your start menu for vJoyConfig and set buttons to 16.

If using Ninjhax press Start and Select to return to the Homebrew Loader, otherwise you can just exit with the Home button.

Setup and Usage (Linux)

-For keyboard emulation Follow the Windows instructions, but use 3DSController.py instead of the EXE.

-For Joystick emulation, first, install python-uinput. BEWARE: The latest release of this library as of the writing of this tutorial is 0.10.2 which is broken for most updated systems. Download the master branch directly.

Make sure that uinput module is running. You can do it from cosole like so: #!sudo modprobe uinput

Then, follow the Windows instructions, but use 3DSController_gamepad.py instead of the EXE.

May work on OS X too, but this is not tested.

Configuration

Find the line Port: 8889 and change it to your desired port, do this for both the 3DS's 3DSController.ini and the PC's 3DSController.ini.

To use custom key bindings, just change the PC's 3DSController.ini file, it should be straight forward.

Configuration (Linux)

The configuration for the keyboard emulation is in 3DSController.py, not the INI.

The configuration for the joystick emulation is in 3DSController_gamepad.py, not the INI.

Troubleshooting

  • Make sure that you are using the 3DS and PC application from the same release,
  • Make sure your 3DS has internet access (turn on the switch on the side of the 3DS so that an orange light shows) and is on the same network as your PC,
  • Make sure that the 3DSController.ini is in the root of your 3DS's SD card (not flashcard micro SD),
  • Make sure that the 3DSController.ini has the local IP of your computer, not your public IP,
  • Make sure your firewall isn't blocking the application,
  • Try using a different port (change the port for both the 3DS and PC's .ini file),

More Repositories

1

FreeDVDBoot

PlayStation 2 DVD Player Exploit
C
2,196
star
2

PS4-SDK

Open source PS4 SDK
C
1,021
star
3

Cinoop

Multiplatform Game Boy emulator
C
493
star
4

PS4-playground

A set of PS4 experiments using the WebKit exploit
JavaScript
251
star
5

JuSt-ROP

JavaScript ROP framework
JavaScript
133
star
6

PS2-Yabasic-Exploit

PS2 exploit for demo discs containing Yabasic that allows arbitrary code execution.
Assembly
72
star
7

GameBoy_GhidraSleigh

Ghidra Processor support for Nintendo Game Boy
60
star
8

cturt.github.io

HTML
50
star
9

shogihax

Remote code execution exploit against Morita Shogi 64 for Nintendo 64
C
47
star
10

CFW-Suite

Tools which can be used to create a custom firmware for the Nintendo DS
C
41
star
11

dsgmLib

C
36
star
12

LDFS

OpenGL Windowing System
C
26
star
13

TCP-Dump

Dumps TCP packets
C
19
star
14

NiFiCapture

Capture local wireless 802.11 traffic, 'NiFi', on Nintendo DS
C
14
star
15

WiFi-Loader

Send a file over TCP
C
12
star
16

dsgmDSWiFi

A fork of http://sourceforge.net/projects/devkitpro/files/dswifi/
C
12
star
17

PS4-Pong

Makefile
10
star
18

CTC

Lossless compression algorithm
C
9
star
19

DARA

Collection of save game exploits for FIFA games to run unsigned code on the DS
C
9
star
20

PS4-Loader

C
8
star
21

Exception

Small library for exception handling in C
C
7
star
22

HTTP

Simple HTTP server in C
C
6
star
23

CTC2

Lossless compression algorithm
C
6
star
24

IconExtractor

Extract the icon from a DS ROM
C
6
star
25

bin2u32

Makefile
5
star
26

Preoop

Experimental object orientation for C via the preprocessor
C
4
star
27

ARM-Pong

Makefile
3
star
28

HTTP-client

C
3
star
29

MD2Combiner

Combines all frames from two MD2s into one MD2
C
2
star
30

dsgmGfx

C#
1
star
31

GameOfLifeDS

Makefile
1
star