Skip to main content


JoyToKey - Use any USB joypad or joystick to act as a mouse keyboard.

JoyToKey enables PC game controllers to mimic a mouse and the keyboard. It is a freeware utility which can be of great use to disabled users.

Download JoyToKey (JTK) via or...

1. Basic JoyToKey

2. Mouse Emulator JTK - Compatible with most Xbox compatible controllers (including Xbox Adaptive Controller and Game Control Mixer in PC mode). Instructions. Video below.

3. Switch Mouse and Gaming JTK - Xbox Adaptive Controller and Game Control Mixer aimed. French version via Quentin Laurent.

4. Music JoyToKey - a mix of music making profiles. Work in Progress (23-01-2024)

About this software

JoyToKey is a keyboard and mouse emulator for joysticks. It converts joystick input into keyboard input (and mouse input). Use it when you want to control an application with joysticks that doesn't support joystick input. If you wish, you can control all kinds of applications with joysticks and buttons.

It is also a way for accessibility switch users to access PCs when using a switch adapted game controller. These can be bought or built following D.I.Y. guides.

The Gamepad Mapper JoyToKey Config Repository is a place to share some useful profiles. 

Getting Started

  • Download then unzip the JoyToKey software.
  • Right-click the JoyToKey programme and select "Run as administrator"
  • Connect your joypad or joystick to the USB socket of your PC. Wait a few moments for it to be recognised by your computer. You can connect up to 64 controllers! N.B.If you wish to connect games console controllers to your PC you may need a special USB adapter, please contact me or look in my Accessible Gaming Shop.
  • Check that your controller is working by going to the "Game Controllers" control panel reached from the desktop by clicking on: START> CONTROL PANEL> PRINTERS AND OTHER HARDWARE> GAME CONTROLLERS. If all is well, the name of your controller or adapter should appear. Double click this to enter the controller test mode. A controller properties display panel should appear with numbered buttons and pointers that are highlighted when you use your controller. Make a note of exactly what each button does as this will help you set-up your controller in JoyToKey.
  • Start "JoyToKey" by double-clicking the joystick icon.
    JoyToKey Front Screen.
  • You should see a number of example configurations. These will work on Playstation compatible controllers connected via a USB adapter such as the C-SID. You can test to see if all is working by opening a word processor document then pressing buttons on your controller. From there you may wish to try out on a One-Switch game or an Emulated game.
  • To make a new configuration push the "Create" button.
  • Choose a button that you wish to use by double clicking it on the list. You will enter a new menu from which you can choose to assign a Keyboard, Mouse or Special function.

N.B.You may need to click on the "Preferences" tab to enable access to things like POV (point of view) hat switches and analogue thumb sticks.

Assigning Functions to your Button


JoyToKey: Keyboard Emulation

Here you can assign any key or combination of keys to your button. Many "one switch" games make use of the SPACE BAR. You could assign all your controls to all act as SPACE if it helps.

You can also assign each button to trigger "Automatic Shooting" which can make some shooting and fighting games much easier.

Consider assigning ESCAPE or ALT+F4 to a button so you can quit programs with your controller.


JoyToKey: Mouse Emulation

Assign cursor movements to any of your controllers buttons. You can adjust the speed to suit the user.

The left, right and central mouse buttons can be assigned to any joystick button.

"Automatic Shooting" can also be applied to mouse button clicks.

Special Features

JoyToKey: Special Feature

You can set any button to activate one of two "Special" features. These are only active whilst you hold this button down.

1. "Adjust mouse movements temporarily". This enables you to speed up or slow down mouse movement on the press of a button.

2. "Use the settings of [another] joystick temporarily". Enables extra controls to be accessed, such as those assigned to your virtual joystick (normally named "Joystick 2" from the main menu). Helpful for controllers with a limited number of buttons available.

N.B. You must leave JoyToKey running in the background for it to remain active. Simply minimise it's window, and away you go.

Congratulations (I hope)! You should be all set up and ready to go. Hopefully JoyToKey will become easier to understand with use, but if you've struggled you might want to consider: Having a cup of tea whilst muttering insults at your computer. Please get in touch for more help.

If you would like JoyToKey to begin everytime you start your computer just go to "All Programs" on your "Start" menu and choose "Startup". Make a shortcut to JoyToKey and drop it into the Startup folder window that appears. In the future, it will run when you log in (make sure you have a controller attached in advance). If you don't want it to run at startup, remove it from the folder.

On Screen Keyboard: Click N Type works very well. To use with the Windows On Screen Keyboard (OSK) you must be in an admin account and also run JoyToKey as an administrator (right-click on it). Click on Options to adjust how you interact with the keyboard.

JoyToKey is the work of Ryo Ohkubo 1999,2024.