Controller+BETADownload

What works where

Controller+ is in beta. This page lists what each part does today and what it needs from your system.

Your phone

Phone Works
Any modern phone browser (Safari on iPhone, Chrome on Android) The full controller, QR joining, private screens, sounds, tilt steering where the browser allows motion access. Android browsers also vibrate; iPhone browsers do not allow web pages to vibrate.
Controller+ app for iPhone and Android Everything above, plus vibration on iPhone, encrypted connections, full mouse and keyboard control of your computer, and Pro styles. The apps are coming to the App Store and Google Play.

Your computer (desktop app)

System Gamepad mode Game keys Mouse, keyboard, media
Windows 10/11 (x64) Each phone is an Xbox 360 controller. The app installs the free ViGEmBus driver in one click the first time. Without it, the vJoy driver also works. Yes With the phone app
macOS 15 or later Coming with Apple's approval of our virtual-controller permission Yes, after you allow Accessibility access With the phone app
Linux (x64, ARM64) Yes, through /dev/uinput (one-time permission) Yes With the phone app

Game keys: pick Arrow keys or WASD for a phone on the computer, and its D-pad, stick and buttons press keys. Any game with keyboard controls works this way, and it needs no driver.

Games made for Controller+

The five Controller+ games and any game built with the SDK receive phone input directly. They need no driver and no desktop app: open the game on the computer, scan its QR, play.

Developer packages

Package Notes
JavaScript (browser and Node 22+) Relay helper for web games, ControllerHost for your own server, input mapping and protocol helpers
Godot 4 Add-on with action mapping, private views and feedback
Unity UPM package with a WebGL bridge
Unreal Runtime plugin with Blueprint nodes
C / C++ Small library with a CMake build

Private phone screens (roles, votes, drawing) need an integration. They do not appear in a game that only sees a gamepad.