Get connected
Support & setup
Use your iPhone as a controller for a Windows PC on the same local network.
1. Set up your PC
- Download the Windows companion ZIP, extract it, and keep the included files together.
- Install the ViGEmBus driver from its official releases. The companion does not install a driver automatically.
- Open Phone Controller.exe and keep its window open. Python is not required for the packaged download.
- If Windows blocks the connection, run Enable Wi-Fi access.cmd from the extracted folder and approve its administrator prompt. The helper permits local private-network connections.
2. Pair your iPhone
- Download Phone Controller from the App Store.
- Connect the phone and PC to the same trusted Wi-Fi network.
- In Phone Controller, tap Scan QR, scan the code in the PC window, then tap Join game.
- Allow Local Network access. Camera access is optional: you can paste the complete pairing URL instead. Scanning with Apple's Camera opens the browser controller.
3. Choose your controls
Choose Full controller or a standalone Left or Right Joy-Con mode. Use Edit layout to move and resize controls. Motion and haptic feedback are optional in Controller settings. Each mode and holding/orientation combination has its own saved layout.
In games or emulators, select the PC's virtual Xbox input device and bind controls as needed. Motion uses the companion's DSU server at 127.0.0.1:26760. The phone's player slots P1–P4 correspond to DSU pads 0–3. See the standalone Joy-Con binding guide for exact mappings.
Troubleshooting
- Cannot connect: allow Local Network in iOS Settings, run the Wi-Fi helper on Windows, and avoid guest networks with client isolation.
- Old QR stopped working: restart pairing with the new QR after restarting the companion.
- No game input: confirm ViGEmBus is installed and your game's controller bindings are configured. Preview mode does not create virtual controllers.
- No motion: enable Motion on the phone, calibrate while still, and configure the game's DSU source. Not every game supports motion or a standalone half.
Contact support
Open a support issue on GitHub or browse existing issues. This is the project's support channel and requires a GitHub account to post.
Include the app version, iOS version, Windows version and steps to reproduce the problem. GitHub issues are public: do not post pairing keys, QR codes, personal information or private logs.
Privacy policy. Phone Controller is an independent app, not affiliated with Nintendo or Microsoft. It does not provide IR, NFC, Nintendo HD rumble or absolute positional tracking.