iKontroller

Wireless Game Controller for Mac

Getting Started

iKontroller transforms your iPhone/iPad into a controller for your Mac. Follow these steps to get started:

  1. Install both apps: Install "iKontroller" on your iPhone/iPad and "iKontroller Desktop" on your Mac
  2. Grant permissions: 1. a) Grant Accessibility permission on Mac: System Settings → Privacy & Security → Accessibility → Enable iKontroller Desktop b) Grant Local Network permission on Mac: Settings → Privacy and Security → Local Network → Enable iKontroller Desktop 2. Grant Local Network permission on iOS when prompted: Settings → Privacy and Security → Local Network → Enable iKontroller
  3. Pair the devices First; ensure your iPhone/iPad and Mac are on the same Wi-Fi network, Cellular network or connected via USB-C/Lightning cable. Then on your iPhone/iPad; open up the pairing screen and click on your Mac's username. Accept this pairing request on your Mac and follow the on-screen pairing instructions and enter the 6-digit code as prompted. You are now successfully paired!
  4. Start controlling: You're ready to go!

System Requirements

📱 iOS

  • iOS 17.0 or later
  • Supports iPhone and iPad
  • Wi-Fi network, Cellular network, USB-C cable or Lightning cable
  • Local network permission

💻 macOS

  • macOS 14.0 or later
  • Supports MacBook Pro, MacBook Air, iMac, Mac mini, Mac Studio and Mac Pro
  • Wi-Fi network, Cellular network, USB-C cable or Lightning cable
  • Accessibility permissions
  • Local network permission

Frequently Asked Questions

Q: How do I grant Accessibility permissions on Mac?

A: Go to System SettingsPrivacy & SecurityAccessibility, then enable "iKontroller Desktop" in the list.

Q: My devices won't connect. What should I do?

A: Try these steps:

  1. Ensure your iPhone/iPad and Mac are on the same Wi-Fi, Cellular network OR connected via USB-C/Lightning cable
  2. Restart both apps
  3. Check that your firewall isn't blocking the connection

Q: The keyboard keys are "stuck" or not releasing

A: iKontroller has automatic key unsticking detection. If a key gets stuck:

  • Disconnect and reconnect your iOS device
  • Press the stuck key on your physical keyboard
  • Press or use the button/joystick/gyrostick that caused the stuck key(s) and it should get released
  • The app automatically detects and fixes double-presses

Q: Can I use multiple iOS devices with one Mac?

A: Yes! You can pair multiple iPhones/iPads to a single Mac. Each device maintains its own custom layouts and mappings.

Q: How do I adjust touchpad sensitivity?

A: On your Mac, go to SettingsGeneral and adjust the "Relative Sensitivity" slider.

Q: How do I adjust scrolling sensitivity?

A: On your Mac, go to SettingsGeneral and adjust the "Scroll Sensitivity" slider.

Q: Does this work with games in full-screen mode?

A: Yes! iKontroller is designed to work seamlessly with full-screen/minimized/windowed games and apps on your Mac.

Q: What's the difference between relative and absolute touchpad modes?

A:

  • Relative mode: Used when gaming to move the in-game camera around (First person shooter, etc.). Moves cursor relative to current position, automatically recenters. The relative mode is depicted using a red eye on the top left corner of your touchpad.
  • Absolute mode: Used for direct cursor positioning aka moving your visual cursor around. Touch maps to exact screen location. The absolute mode is depicted using a blue cursor on the top left corner of your touchpad.

Q: How do I create custom layouts?

A: On your iPhone/iPad, navigate to "My Layouts", then click "+" to create a new layout. Add controls and position/resize them as needed in editor mode. Assign the buttons/joysticks/gyrosticks to keyboard keys in mapping mode

Q: Is my data being sent to any servers?

A: No. All communication is direct between your iPhone/iPad and Mac. We don't collect, store, or transmit any data to external servers. See our Privacy Policy for details.

Troubleshooting

Connection Issues

Permission Issues

Mapping Issues

Contact Support

Need more help? Reach out to us:

🐛 Bug Reports

GitHub Issues