JoyToKey

Map steering wheel buttons to keyboard keys

JoyToKey is an excellent tool for mapping any steering wheel button to any key on your keyboard

This makes it easier to switch between different wheels without having to remap them in iRacing. For example, you can map a button on your wheel to the Escape key, which is used to exit the car in iRacing. By creating two JoyToKey profiles for each wheel, you can map your exit button in JoyToKey to Escape, allowing for seamless transitions between wheels.

Additionally, JoyToKey is great for triggering a sequence of key presses. For instance, you can map your Shift Down pedal in JoyToKey to fire off a sequence of Clutch and Accelerate commands. This setup blips the throttle on every downshift, making your downshifting faster and smoother.

https://joytokey.net/en/
JoyToKey Website

After you've downloaded and installed JoyToKey, launch it and click on Settings in the main menu, then click on Dark Mode. This is just a personal preference, but makes it look a lot nicer! You can create different profiles for each wheel or even each wheel paired with a particular car, should there be some special behavior you'd like for a particular car, like blipping the throttle on changing gears.

JoyToKey Preferences
JoyToKey Preferences

Next, click on Settings in the main menu again, then Preferences. This will open the Preferences dialog, like the example in the image below. Make sure to set the "Internal Processing Speed" to "Normal speed".

JoyToKey Profiles
JoyToKey Profiles

In the image above, make sure your Wheel's name is displayed in the first tab, highlighted in green, this is very important. Next, click on the Options tab. Under the options tab, set the Stick/POV to "Stick x 2 + POV x 1" and the number of buttons to 32.

JoyToKey Options
JoyToKey Options
Lotus 79

Go back to the 1st tab that has your wheel's name on it. Locate your shift down pedal button in JoyToKey by holding in the down shift pedal in, this will highlight the button item in JoyToKey. Double click on this item to open the button's mode dialog as seen below.

JoyToKey Shift Down Button mode dialog
JoyToKey Shift Down Button mode dialog

We'll now configure what happens when you change gear down. What we want is to engage the clutch and blip the throttle. Later on we'll go into iRacing and map your Second Clutch to โ† aka Left Arrow and your Second Throttle to โ†’ aka Right Arrow. Right at the bottom, enter a descriptive name for this button eg. "Gear Shift Down", this will make it easier to find this button again in JoyToKey. Go to the "Keyboard (Multi)" tab by clicking on it. Select the "Execute from [Input1] to [Input[4] in sequence..." radio button and se the "Input Hold Duration" to 50msec. Back to the top, set the Inputs to:

  • Input1, row 1: โ† aka Left Arrow, which is the Second Clutch
  • Input1, row 2: โ†’ aka Right Arrow, which is the Second Throttle
  • Input2, row 1: โ† aka Left Arrow, which is the Second Clutch
You can always tweak this to your liking by removing some of the Input sequences or rows. It basically executes it from left to right with a 50msec delay in between. The rows just allow you to do additional key inputs at the same time. When you're done, click OK to set and save the options.

Now locate your shift up pedal button in JoyToKey by holding in the up shift pedal in, this will highlight the button item in JoyToKey. Double click on this item to open the button's mode dialog as seen below.

JoyToKey Shift Up Button mode dialog
JoyToKey Button mode dialog

Right at the bottom, enter a descriptive name for this button eg. "Gear Shift Up", this will make it easier to find this button again in JoyToKey. Go to the "Keyboard (Multi)" tab by clicking on it. Select the "Execute from [Input1] to [Input[4] in sequence..." radio button and se the "Input Hold Duration" to 50msec. Back to the top, set the Inputs to:

  • Input1, row 1: โ† aka Left Arrow, which is the Second Clutch

iRacing / Options / Control
iRacing Options dialog

Launch iRacing into any test session, open Settings and click on the Control tab. Tick the "Use custom controls for this car", then set the following:

  • "Second Throttle" to โ†’ aka Right Arrow
  • "Second Clutch" to โ† aka Left Arrow

Audi 90 GTO

If you've created a profile for the "Lotus 79", right click on the profile, copy it and then right click and paste again. Rename the new profile to "Audi 90 GTO". Go back to the 1st tab that has your wheel's name on it. Locate your shift down pedal button in JoyToKey by holding in the down shift pedal in, this will highlight the button item in JoyToKey. Double click on this item to open the button's mode dialog as seen below.

JoyToKey / Profiles / Audi 90 GTO
JoyToKey Profile for Audi 90 GTO

We'll now configure what happens when you change gear down. What we want is to engage the clutch and blip the throttle. Later on we'll go into iRacing and map your Second Clutch to โ† aka Left Arrow and your Second Throttle to โ†’ aka Right Arrow. Right at the bottom, enter a descriptive name for this button eg. "Gear Shift Down", this will make it easier to find this button again in JoyToKey. Go to the "Keyboard (Multi)" tab by clicking on it. Select the "Execute from [Input1] to [Input[4] in sequence..." radio button and se the "Input Hold Duration" to 50msec. Back to the top, set the Inputs to:

  • Input1, row 1: โ† aka Left Arrow, which is the Second Clutch
  • Input2, row 1: โ† aka Left Arrow, which is the Second Clutch
  • Input2, row 2: โ†’ aka Right Arrow, which is the Second Throttle
  • Input3, row 1: โ† aka Left Arrow, which is the Second Clutch
  • Input3, row 2: โ†’ aka Right Arrow, which is the Second Throttle
  • Input4, row 1: โ† aka Left Arrow, which is the Second Clutch
You can always tweak this to your liking by removing some of the Input sequences or rows. It basically executes it from left to right with a 50msec delay in between. The rows just allow you to do additional key inputs at the same time. When you're done, click OK to set and save the options.

JoyToKey / Profiles / Audi 90 GTO / Shift down
JoyToKey Profile for Audi 90 GTO to Shift down

We'll now configure what happens when you change gear up. What we want is to engage the clutch for a while. Rember to go into iRacing and map your Second Clutch to โ† aka Left Arrow, if you have not already done so for the Audi 90 GTO. Right at the bottom, enter a descriptive name for this button eg. "Gear Shift Down", this will make it easier to find this button again in JoyToKey. Go to the "Keyboard (Multi)" tab by clicking on it. Select the "Execute from [Input1] to [Input[4] in sequence..." radio button and se the "Input Hold Duration" to 50msec. Back to the top, set the Inputs to:

  • Input1, row 1: โ† aka Left Arrow, which is the Second Clutch
  • Input2, row 1: โ† aka Left Arrow, which is the Second Clutch
  • Input3, row 1: โ† aka Left Arrow, which is the Second Clutch
  • Input4, row 1: โ† aka Left Arrow, which is the Second Clutch

JoyToKey / Profiles / Audi 90 GTO / Shift up
JoyToKey Profile for Audi 90 GTO to Shift up

You can always tweak this to your liking by removing some of the Input sequences or rows. It basically executes it from left to right with a 50msec delay in between. The rows just allow you to do additional key inputs at the same time. When you're done, click OK to set and save the options.