Toggle menu
Toggle preferences menu
Toggle personal menu
Not logged in
Your IP address will be publicly visible if you make any edits.

3DS Controller: Difference between revisions

From GameBrew
Created page with "{{Infobox 3DS Homebrews |title=3DS Controller |image=3ds_controller.png |description=An Up-To-Date 3ds homebrew application that lets you use your 3ds as a wireless controller. |author=icicle1133 |lastupdated=2025/09/26 |type=Utilities |version=0.0.5 |license=Polyform Noncommercial 1.0.0 |download=https://dlhb.gamebrew.org/3dshomebrews/3ds_controller.7z |website=https://github.com/icicle1133/3ds-Controller |source=https://github.com/icicle1133/3ds-Controller }} A "Up-To-..."
 
 
Line 45: Line 45:
Install [https://github.com/ViGEm/ViGEmBus/releases ViGEmBus driver]
Install [https://github.com/ViGEm/ViGEmBus/releases ViGEmBus driver]


Install Python 3.6+
Install Python 3.6+.


Install required packages:  
Install required packages:  

Latest revision as of 05:13, 21 March 2026

3DS Controller
General
Authoricicle1133
TypeUtilities
Version0.0.5
LicensePolyform Noncommercial 1.0.0
Last Updated2025/09/26
Links
Download
Website
Source

A "Up-To-Date" 3ds homebrew application that lets you use your 3ds as a wireless controller.

Features

  • Use your 3DS as a wireless gamepad for PC games and emulators.
  • Cross-platform support for Windows and Linux.
  • Support for all buttons, Circle Pad, and C-Stick.
  • Configurable server IP and port.
  • Low latency wireless connection.
  • Battery level indicator.
  • LCD toggle option to save battery.

Installation

Requirements

3DS:

  • Nintendo 3DS with custom firmware (CFW)
  • Homebrew Launcher access
  • Wi-Fi connection (same network as PC)

PC:

  • Windows or Linux
  • Python 3.6+
  • Windows: ViGEmBus driver
  • Linux: uinput kernel module

3DS Setup

  • Copy 3ds_controller.3dsx to your 3DS SD card in /3ds/ folder.
  • Launch Homebrew Launcher on your 3DS.
  • Run the 3DS Controller application.

PC Setup

Windows

Install ViGEmBus driver

Install Python 3.6+.

Install required packages:

pip install vgamepad

Run the PC receiver:

python pc.py

Linux

Load uinput module:

sudo modprobe uinput

nstall dependencies:

sudo apt-get install libudev-dev
pip install python-uinput

Run PC receiver with root privileges:

su -
modprobe python-uinput
python3 path/to/pc.py

User guide

How to use

  • Start PC receiver script.
  • Launch 3DS Controller on your 3DS.
  • Set the IP address in the 3DS app to match your PC's IP.
  • Connect and start using your 3DS as a controller.

Configuration

3DS:

  • Config file at /config.ini on SD card
  • Edit to change server IP and port
  • Default port: 8888

PC:

  • Listens on all interfaces on port 8888
  • Debug mode: python pc.py --debug

Controls

3DS Input - PC Controller Output:

A/B/X/Y - A/B/X/Y Buttons

Circle Pad - Left Analog Stick

C-Stick -Right Analog Stick

D-Pad -D-Pad

L/R - LB/RB (Left/Right Bumpers)

ZL/ZR - LT/RT (Left/Right Triggers)

Start/Select - Start/Back

Changelog

v0.0.5

  • The .CIA is used for installing onto your 3ds home screen, quicker then loading homebrew launcher
  • The .3dsx is for people who are too lazy ig idk

v0.0.1

  • There are multiple things wrong, please look at the README.md for information.
  • This version was tested via Luma3DS v13.3.3

External links

Advertising: