Skip to main content

Joy2DroidX

Joy2DroidX

Joy2DroidX allows you to use your Android device as a virtual Xbox 360 controller or DualShock 4 gamepad.

It consists of a server that runs on Windows and Linux and an Android app. While there's nothing preventing the app from running on any Android device, it's been only tested on Android phones.

Server

The server (this app) listens for input from connected Android devices and manages creation/deletion of virtual devices. It uses UInput on Linux and ViGEm on Windows.

While running the server does not require any special privileges, the initial setup (setting UInput permissions on Linux and installing driver on Windows) requires root/administrator access.

Client

You can find more information about the Android app as well the sources here.

Installation

Joy2DroidX is distributed as a portable app on Windows and as an AppImage on Linux. You can find latest versions on releases page.

Alternatively, if you have python 3 and pip setup, you can install from pypi:

pip install j2dx

Usage

First run

You need to setup the system before the first run. Joy2DroidX provides a convenience command that does this for you, it however requires root/administrator access.

Just run j2dx --setup as root or from administrator command prompt.

On Linux this will create a udev rule for UInput and add current user to j2dx group. If you're not using sudo or user detection fails for another reason, you can provide username as an argument to --setup. For udev rules and group changes to take effect you'll have to restart your system.

On Windows this will download ViGEmBus driver and prompt you to install it. Once the driver is setup you can use Joy2DroidX, no restart necessary.

Regular usage

Run j2dx (on windows you can just double click j2dx.exe), scan QRCode from the Android app and that's it. Everything should just work. Switching device mode is done from the Android app.

The server should not need any extra configuration. If you have an unsual network setup or default port is used by another process, there are a couple option you can modify:

  • -p, --port allows you to use a different port. Default is 8013.
  • -H, --host if hostname detection fails you can specify a hostname or your computers IP address.
  • -d, --debug you shouldn't need this one. If you do encounter bugs, run j2dx -d and open an issue with a link to debug output (use a gist or pastebin for this).

Release files for j2dx 0.1.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for j2dx 0.1.0
File Size Uploaded
j2dx-0.1.0.tar.gz 52.0 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for j2dx 0.1.0
File Interpreter ABI Platform
j2dx-0.1.0-py3-none-any.whl Python 3 none any Details

Total release size: 107.1 kB

Release files / j2dx-0.1.0.tar.gz

Download URL j2dx-0.1.0.tar.gz
Size 52.0 kB
Tags Source
SHA-256 checksum
How to use checksums
c6ebd1228c70aeaf064edcec51c1220eb7dd6b854415db0832078c3f4a2f7df3
BLAKE2b-256 checksum
How to use checksums
aa11327519126627901eb450196b024216fa03d797931a9100119998e489a8a8
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via poetry/0.12.17 CPython/3.7.3 Linux/5.0.0-23-generic

Release files / j2dx-0.1.0-py3-none-any.whl

Download URL j2dx-0.1.0-py3-none-any.whl
Size 55.1 kB
Tags Python 3
SHA-256 checksum
How to use checksums
cf64c5ea2d11ffd1fef81d95fa7a87b42ca5b827592c12f4573393c0069c2c50
BLAKE2b-256 checksum
How to use checksums
8833a11dcc93ad76910d7e2ee9951956e44e90aad6f97028fcfee42e9788f340
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via poetry/0.12.17 CPython/3.7.3 Linux/5.0.0-23-generic

Release history Release notifications | RSS feed

This release

0.1.0 This release

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page