# Steering Wheel setup¶

BeamNG.drive supports most steering wheel brands and models in the market. Check the Controller Support page Controller Support for a more detailed list.

We bundle automatic configurations for the most common wheels out there, this way It Just Works (tm).

If your steering wheel is not working out of the box, or the setup needs improvement, then please follow this guide.

If you are running into a specific problem with your wheel, check the “Common problems and solutions” section at the bottom of this guide.

## Installing drivers for Windows¶

First of all, install the latest available drivers. It doesn’t matter if you wheel seems to work. Many devices will seem to work, but some functionality will be broken, until you update to the latest drivers.

If you are not sure how to install or update drivers, please check the manual that came with it.

Out of date drivers might cause:

• Throttle and brake pedal working randomly in Logitech G25/G27 wheels
• Throttle and brake pedal belonging to the same, rather than separate axes
• Force feedback going berserk in Logitech G29/G920
• Being unable to use H-shifter
• Being unable to use Clutch pedal
• Being unable to steer all the way to 900º or 1080º

## Hardware check #1: Windows drivers¶

Now that the driver settings are correct, let’s make sure the hardware is working correctly.

The wheel Driver configuration window usually has a display to show which buttons are being pressed, and which axes are being moved. Use each of the buttons and axes, one by one, and make sure they respond correctly on your screen.

Be sure to check:

• Does the button or axis display respond every time you press?
• Does the button or axis display move all the way from zero to the maximum possible value?
• Does the button or axis display fluctuate or flicker a lot when you are not touching anything?

If anything is wrong here, check your steering wheel manual, contact the manufacturer of the wheel, or search the web to find out about other people having the same problem as you, and how to troubleshoot it.

## Hardware check #2: BeamNG.drive¶

If all is fine so far, make sure that BeamNG.drive is able to see the same things that the Windows drivers see.

Open BeamNG.Drive, go to Controls menu, Hardware tab. Use all the buttons and axes, make sure they respond correctly on screen too, just like with hardware check #1.

If anything is wrong here, but was fine in the previous step, please report it on the forums.

## BeamNG.drive: Bindings configuration¶

Now that we have configured things in the hardware and windows drivers side, let’s move onto the actual game.

If you have a common wheel, you might find that BeamNG.drive has already set up bindings for you, and everything works correctly. Clicking ‘Reset All’ will always revert to these default bindings.

If that’s not the case, open the Controls > Bindings menu, and configure the bindings you want. The most important bindings are Throttle, Brake and Steering. You can also fully customize your H-shifter or sequential paddles, your parking brake, etc.

## BeamNG.drive: Steering binding¶

One of the most important bindings, when it comes to steering wheel configuration, is of course the “Steering” binding.

The recommended configuration for the steering bindings is the following:

• Filter: may smooth and delay inputs in the case of keyboard and gamepad controllers. If you notice weird problems of steering lag, this means your steering device might be incorrectly identifying itself as a gamepad, triggering BeamNG.drive to smooth your inputs. If that is the case, manually set it to ‘Direct’.

Recommended value: “Automatic”

• Angle: This allows the vehicle’s steering angle to match your controller steering angle. Just specify how many degrees of steering range your controller is capable of (or is configured to allow). Alternatively, set to zero if you want to use the whole steering range of the controller no matter what.

Recommended value: same degrees as your steering wheel allows

• Inverted Axis: Move your wheel left and right. If the orange point in the graph is moving the wrong way, this means your controller provides inverted values. Just enable this checkbox so it steers in the right direction.

Recommended value: depends on your steering wheel model

• Linearity should ideally be set to 1. If your wheel is low-end with a very limited lock angle, and you are not planning to use force feedback with it, then you may find it easier to control if you use greater values, but always try “1” first.

Recommended value: 1

• Deadzone (rest): removes sensor noise near the resting position of the stick/joystick/pedal.

Recommended value: 0

• Deadzone (end): removes sensor noise near the full-travel position of the stick/joystick/pedal.

Recommended value: 0

### BeamNG.drive: Matching steering angles¶

BeamNG.drive simulates some vehicles with more 900deg of steering (the Wentward Bus for example). These vehicles will start to steer faster than the steering wheel controller after halfway, in order for both the vehicle and controller to reach full lock at the same time. This way the behavior in normal driving has a matching steering ratio and visual angle, but it is still possible to turn as tight as possible when needed.

So for example, if you are driving the Wentward Bus with 1800deg steering (900 per side), and your steering binding is set to 900deg (450 per side) in the binding, you get the following:

From 0 to 275 degrees steering to one side of the controller, the steering ratio and visual angles match between the bus and the controller.

From 275 to 450 degrees to one side, the bus steering speeds up to reach 900deg at the same time that the controller reaches 450deg (full lock).

If you prefer, this behavior can be turned off by setting the steering binding’s Angle to 0. When set to 0, the in-game steering rate will always scale to reach full lock at the same time as the controller, but this means the steering ratios and visual angles will not match.

For cars with less steering lock than the Angle setting, the vehicle and controller will have matching steering ratio and visual angle, and the controller will only use a portion of its available steering lock. Otherwise setting the steering binding’s Angle to 0 will scale the steering to reach full lock at the same time, but the steering ratios and visual angles will not match.

## BeamnNG.drive: Force feedback configuration¶

### Basic set up¶

If your steering wheel is able to produce Force Feedback, it should be listed in the Controls > Force Feedback > Available Hardware menu.

In this menu, you will also see the steering wheel binding you created for ‘steering’ in the previous step. Click it to edit the parameters, and scroll down to the Force Feedback Configuration section.

• Enabled: this controls whehter force feedback is activated or not.

Recommended value: Enabled

• Inverted: your controller’s ffb motors may push either left or right by default. To find out what setting you need, hop onto your trusty old D-Series pickup, put the parking brake while stopped, and try to steer all the way to the right.
• If the wheel tries to counteract you, then the ‘Inverted’ setting is correctly set.
• If the wheel helps you steer even more to the right, then you must click on the Inverted checkbox to change it.

Recommended value: varies for each steering wheel

• Strength: scales the forces sent to your steering wheel. The optimum value will on depend your steering wheel model, its Windows driver configuration, your personal preferences, and your driving style.

Recommended value: varies

• Smoothing: will smooth the forces, at the expense of an increased delay. If you are noticing quick vibrations in your wheel, you can test progressively greater values. Greater values may smooth the road details too much.

Recommended value: as low as force vibrations will allow

These parameters allow advanced control over the force feedback:

• Reduce strength at low speeds: will automatically lower the force feedback strength when driving very slowly (up to 10km/h). This is a tool to reduce unwanted vibrations while vehicle is stationary. It may be unnecessary for vehicles that feature powersteering simulation, or if you plan on rock-crawling, where you still need low speed feedback.

Recommended value: Enabled

• Side Accel Feedback: translates the lateral G-forces that the driver would experiment, by overlaying them on top of the regular steering wheel forces. Provides some extra information, and can improve self-centering effects in many situations, but adds torques that are not realistically present in a real steering wheel, so not everyone may like it.

Recommended value: depends on your preference

• Max strength: limits all forces so they never surpass this value, even in the event of vehicle crashes. It’s a safety measure for the most powerful steering wheels.

Recommended value: 100%

### Update parameters¶

These parameters should be left alone 99.99% of the times. However, in some very rare cases, the update parameters might need to be adjusted:

• Update rate limit: Limits how often the simulation will attempt to send new force feedback commands to the drivers. Most drivers/firmware/steering wheels cannot handle high update rates, and will behave incorrectly when asked to - often leading to much lower game framerates, and sometimes also to incorrect forces on the wheel. If set to “Automatic”, BeamNG.drive will do its best to determine the highest safe frequency. This setting can be overriden if the “Automatic” detection is still providing too high update rates and needs lowering even more.

Recommended value: “Automatic”

• Update type: Allows to choose between two internal methods of sending the force feedback requests. One of them is optimized for speed (“Fast”) and should be safe to use with almost any steering wheel. The other one, “Full”, may be required for certain steering wheels before FFB can work correctly (or at all). This is the case of some direct drive wheels, for example.

Recommended value: “Fast (default)”

Neither of these two options should be touched if Force Feedback is working correctly already.

### Basic configuration guide¶

Configuring the wheel can be difficult to get exactly right. Every driving style may need different force feedback settings, so here’s a simplified method to get the basics right:

• Make sure the steering binding is fully linear (set its value to ‘1’), since non-linearity can get in the way of good forcefeedback.
• Disable all mods, as they can potentially influence or break how FFB works, at least while trying to get a working base line
• Choose an official vehicle, without mods, with default setup settings, and RWD drivetrain layout (such as the ETK K-series Kc6t (M)).
• Try to increase your framerate, preferably 60 FPS or more. To achieve that, you can lower the graphics settings. You will have to consider your priorities, as this is a compromise between visual quality and force feedback.
• Set the Smoothing to the largest value. Set the ‘Max Strength’ slider value to ‘100%’. If you have a very powerful steering wheel (high-end, direct-drive or generally professional device): you may want to start with a value of ‘20%’ or so, for now.’’
• Go for a drive with your usual driving style (racing, stunts, offroad, etc) and agressiveness.
• Tweak the “Strength” until the magnitude of forces you receive feel comfortable (even if not detailed at this point). Please ignore the forces while the vehicle is stationary or rolling very slowly (we’ll take care of that later). If you have a very powerful steering wheel (high-end, direct-drive or generally professional device): you may now increase the “Max strength” cap limit gradually, as long as feel comfortable when crashing the vehicle violently. Always be careful with your hands and fingers while testing FFB settings!’’
• Now start with tweaking the “Smoothing”: go for a drive, and gradually decrease the value until the wheel starts any quick rattling or vibration at driving speeds.
• When rattling starts to appear, dial back the “Smoothing” setting a bit.
• Now stop the car, and check if the wheel steers on its own from left to right and back again. If that’s the case, enable the “Reduce strength at low speeds” checkbox.

This should give you a reasonable starting point for your settings. After that, feel free to play with different parameters to suit your personal preferences.

### Response correction curves¶

Important: This is an advanced option. Do not touch if you’re not sure of what you are doing.

## Introduction¶

Force feedback works by asking the steering wheel drivers to apply certain torque (certain rotational force) through the motors housed inside your steering wheel.

In an ideal world, the resulting torques would be proportional to the torques you initially requested.

However, in practice, this is rarely the case. Sometimes, when you ask 1 unit of torque, you may get 1.2 resulting units of torque. And then you ask for 2 units, but get only 1.9 units back. The result can vary wildly along the range of torques, and is impossible to know without testing each of all the possible torque values.

To compensate for this lack of linearity, we provide the option to use a Response Correction Curve. This curve basically tells BeamNG.drive how the steering wheel will respond to all possible requests. Based on that, BeamNG.drive will smartly “lie” to the drivers, requesting different torques, to get the actual desired resulting torque.

## Reusability¶

Before continuing, one word about reusability of response curves:

The response curve will vary depending on the Windows drivers configuration.

For example, if you change the effects strength (or any other setting) in the Windows driver configuration panel, the response curve will most probably be different afterwards.

Keep that in mind if you are trying to use a response curve for your wheel while tweaking the Windows driver configuration.

Note: BeamNG.drive bundles response curves tailored to the recommended driver configuration (see the 2nd section of this guide). If you are not using the recommended configuration, the response curves may be off, and it is recommended to re-generate it for your specific drivers configuration. But even if you don’t, the result will typically be better than disabling the curve altogether.

Also note that the response curve is usually the same for a given brand and model of steering wheel (unless it has undergone some serious hardware revision but still keeping the same model identifier). If you create a response curve for certain steering wheel model and drivers configuration, it will most probably be reusable by other owners of your steering wheel.

## Generating your own response curve¶

Generating a response curve involves precise testing of your hardware, noting down what happens each time you apply certain torques.

There are several tools out there that allow to do it in an automated way, and register the resulting curve in a file, on disk.

BeamNG.drive is able to directly read the response curve files generated by the most popular 3rd party tools (such as WheelCheck and Force Curve Modifier), without needing any further format modifications. So just run those tools, export the result to a file, and place it at Documents/BeamNG.drive/settings/inputmaps/wheel.*.

Note: the numbers contained in LUT files have a different meaning than those contained in the rest of file types (even if they are all ‘just’ pairs of numbers). Please do not rename the “.lut” extension to something else, this way BeamNG.drive will know it needs to handle the LUT numbers differently than is usual.

Note: Hover your mouse over the response curve graph of your BeamNG.drive FFB menu to get more detailed information about the naming conventions. Typically wheel.csv will do.

## How the curve is used¶

BeamNG.drive internally sanitizes the curve you see on screen:

• The curve will be normalized, from 0 (no torque) to 1 (maximum torque supported by your steering wheel). You don’t need to normalize any values yourself.
• It will remove any valleys, so that the response is always incremental
• It will assume you start at 0 response for 0 requested torque, and that you end at 100% response for 100% requested torque.

After this sanitization has taken place, the curve is used in this way:

• When the resulting torque is too small, BeamNG.drive will bump up the requested torque, so that it gets its desired resulting torque.
• When the resulting torque is too big, BeamNG.drive will request a bit smaller torques, so the result is not that huge.

## Tweaking the curve¶

You will typically want to tweak the curve just a little bit before it is used by the game.

If you have already placed the wheel.csv file in your inputmaps directory, the game will read it each time you restart the game or press Ctrl+L to reload the input system.

When that happens, the curve is embedded into your inputmap file. If you modify the source wheel.csv file, and press Ctrl+L, the inputmap file will be updated again. Remove the source file when you are happy with it.

Measurement errors:

If you have only generated the response curve once, it is possible that you have some error in the readings. For example, if you accidentally touched the wheel while it rotated, or bumped into your desk, then that curve point may be incorrect.

Repeating the measurement several times, and comparing the resulting curves, allows you to notice any possible outlier values that may have happened.

Noise:

If you correctly measure the curve several times, you will notice slight variations. This can happen because of many circumstances, e.g. temperature changes, slight gear or belt positioning differences, etc.

Measuring the curve several times not only allows to detect errors (as described before) but are useful to remove this kind of noise. You can average all of the curves together, and use the resulting curve in BeamNG.drive. Note that there shouldn’t be a huge difference from one run to the next (unless your wheel is damaged), so it’s okay if you decide to skip this step :-)

Low torque vibration:

Most wheels cannot handle low torques correctly. The response curve will usually be very plain in the first section, and this will force BeamNG.drive to request huge torques to compensate. This usually creates unwanted vibrations.

To prevent this, make sure you add a slight initial slope to the curve, even if the response curve clearly showed a huge deadzone in that region. This will smooth out the jerky response for low torque situations.

## Visualizing the improvements¶

To assist you with tweaking or verifying the response curve, you can visualize the results in real time, while driving.

• Go to the menu Apps > Add app
• Place the FFB Graph somewhere on the screen and click Done.

The data you are looking for here is: * Current: shows what torque is being actually requested to the Windows drivers. This is usually not the torque we want, but remember we have to lie to the drivers in order to get the torque we want. * Uncorrected: shows what is the expected resulting torque after having travelled through the drivers, firmware and hardware. In other words, the actually desired torque. * Limit: is just the force limit the user has selected in the FFB menu. No forces greater than this will be generated. * Unlimited: shows what would have been requested, if the force limit wasn’t in place.

For example, in most steering wheels, you will typically notice that uncorrected forces are smaller than current forces in low-torque situations, because of the initial FFB deadzone.

A very good steering wheel should have a very linear FFB response, and so the uncorrected and current forces should be almost the same through the entire range of torques.

### Common problems and solutions¶

Here’s some common problems after everything has been configured:

## BeamNG.drive doesn’t even show my device in Options > Controls > Hardware, but works fine in other games¶

Steam is probably hiding the device from the operating system while certain games are running. To fix this:

• Open Steam, go to View, click Big Picture Mode.
• Click the top-right settings icon, go to Controller, Controller Settings.
• Uncheck all of PS4, Xbox and Generic Gamepad Configuration Support options.

You can now exit Big Picture mode. Try running BeamNG.drive again, the device shouldn’t be hidden any more.

NOTE: It’s also possible to disable this on a per-game basis. Go to the game’s properties (within Steam) and under ‘’Steam Input’’ choose ‘’Forced Off’’

If that hasn’t fixed it, and you’re using a Logitech G29 wheel:

• Search for “Logitech Gaming Software” on your PC
• Start the program
• You should not have to restart BeamNG.drive, and your wheel should be detected

## The device is detected by BeamNG.drive, but nothing works¶

We provide bindings for a handful of common devices. If your device is not one of those, you will have to configure the controls before you can use it (go to Options > Controls).

## Wheel acts weird¶

Make sure you have closed the Windows drivers window before opening BeamNG.drive.

Make sure to NOT open the Windows drivers window while BeamNG.drive is open.

## Pedals act like buttons¶

Some steering wheels have console compatibility modes. Make sure you fully read its manual to understand how your hardware works and how to change that behaviour.

It is also possible that you have installed software that intercepts and changes how joysticks, steering wheels and gamepads behave. If you did that, please disable or uninstall that software and try again.

## Cannot set up the throttle or the brake. Car does strange things¶

If your steering wheel only provides combined throttle/brake axes, use the “throttle and brake” binding, and remove any wheel bindings under the “throttle” and under the “brake” sections.

If your steering wheel provides separate throttle/brake axis, use the “throttle” bindind and the “brake” binding, and remove any wheel binding under the “throttle and brake” section.

## Cannot get steering to work. Car only veers to one side¶

Make sure you have not added any wheel bindings to “steer left” or to “steer right”. If you have manually added any, remove them. Add one binding for “steering” instead.

## Car steers to the opposite side it should¶

Open the steering binding, click the “Inverted Axis” and then “Apply”.

## Car does not accelerate until I press the brake¶

Open the brake binding, click the “Inverted Axis” and then “Apply”.

## Car does not brake until I press the throttle¶

Open the throttle binding, click the “Inverted Axis” and then “Apply”.

## Car brakes correctly, but then goes full speed into reverse after it stops¶

You are using the ‘Arcade’ shifting mode. Switch to ‘Realistic’ shifting mode using the key ‘Q’.

## Steering is too fast, car is impossible to control¶

Make sure the wheel is in 900º or 1080º (or whatever steering angle your steering wheel supports).

In Logitech G25/G27 wheels, you can change that at any time during gameplay, by pressing the two middle red buttons on your H-shifter, while at the same time you press the bottom black button in the H-shifter. In other wheels, check their manual (you may have to close BeamNG.drive and open their drivers options in Windows Control Panel to adjust it).

## Car steers slightly to the left (or right) when pointing straight¶

Make sure you are not using a vehicle mod that may have altered the suspension design of the vehicle, or that the car you are driving doesn’t have a natural tendency to veer left/right under acceleration (it can happen with powerful vehicles, or with certain suspension types).

Make sure to calibrate the steering wheel from the Windows Control Panel drivers window. Some wheels need to be unplugged and plugged again for calibration to happen.

## Logitech wheel isn’t detected / has no clutch / has less than 900 degrees of range / has no force feedback / random failure¶

Install the latest Logitech drivers.

Then make sure the steering wheel is detected when you open the Logitech driver software.

And then make sure the steering wheel model shown by Logitech drivers is actually your exact steering wheel model.

If it’s not detected correctly, try unplugging and plugging the wheel again. Try using a different USB port. Try restarting the computer. Try uninstalling and then installing again the official drivers.

## G29/920 turns all the way left/right¶

Logitech G29 and G920 used to turn full left or full right in buggy versions of their drivers released before 2017, and also starting sometime around summer 2019. Update to the absolute latest official version of relevant Logitech software/drivers.

Fully uninstall all previous versions if necessary. After installing, make sure to check that the installed version is the one you installed, and not some other version that Windows installed.

If that doesn’t work, try uninstalling/reinstalling Logitech Gaming Software and/or Logitech G-Hub software.

## G920 crashes the game unless force feedback is disabled¶

Logitech G920 used to crash certain games in buggy versions of their drivers released before 2017.

Fully uninstall all previous versions if necessary. After installing, make sure to check that the installed version is the one you installed, and not some other version that Windows installed.

## G27/G29 shifting leds don’t work¶

LEDs are not supported for any steering wheel model. They were supported in the past, but they could also lead to random/buggy forces and to steering angle resets, so the feature was removed.

## My steering wheel turns all the way left/right¶

Try checking/unchecking the “Inverted” checkbox under the Force Feedback tab. Some steering wheels or driver updates need a different setting.

## My Thrustmaster steering wheel turns all the way left/right since September/2017¶

Update to BeamNG.drive v0.11 or newer. If it’s still not working correctly, go to Options > Controls > Reset All.

## My direct drive steering wheel has no force feedback, or has force feedback for only a brief period of time¶

Make sure you have configured and enabled force feedback (most of them have no bundled control presets). Once that’s done, try switching the Update Type from “Fast (default)” to “Full” and click Apply.

## Delay between turning the wheel and the response in-game¶

Please first verify if the game is actually receiving the input correctly. Go to Options > Controls > Hardware menu and see if the slider is also affected there.

If not, please find the ‘Steering’ binding, click on it and make sure that the “filter” is set to “direct”

If it’s still delayed, try to increase your framerate as much as possible (100 FPS or greater is recommended). Sacrificing Graphics Lighting settings can help.

Try switching to full screen mode, this will remove a couple of frames of lag. Note that “borderless” mode does NOT necessarily provide any response gain, but actual “fullscreen” mode will improve responsiveness for sure.

Try turning VSync off if you can stand the screen tearing. This will remove a couple of frames of lag.