Marvin’s Awesome iRacing App

Overview

This is an app that I developed to improve my iRacing experience.

This app is designed to be standalone (not needing any additional software like vJoy or HID Guardian), and easy to use.

Installing

After you download the app installer, run it.

You might get this screen –

I ain’t paying $300 a year to Microsoft for a certificate to remove this whine screen. Just click on “more info” and then “Run anyway”. Or, if you don’t trust me, then don’t.

Note: The code is public and can be found here – https://github.com/mherbold/MarvinsAIRA

After you install my app, you can find it in your computer and run it. You’ll see a screen that looks like this –

Currently there are two main features of this app –

  • Force Feedback
  • Wind Simulator

There are also three additional supporting tabs

  • General Settings
  • Console
  • Help

Force Feedback

Overview

This force feedback feature hooks into the telemetry data, which is broadcast by the iRacing simulator, reads the 360 Hz steering column torque signal, does some processing to it, and then sends the processed signal to your wheel.

When processing the signal, the app splits it into AC and DC components, and this is where the magic happens. The AC component (fine details) can be adjusted independently of the DC component (steady state force). The app does not add any latency to the force feedback signal that is sent to your wheel, beyond the latency that is already present within the iRacing simulator.

Setup

Before playing around with the force feedback settings, some people may need to edit their iRacing app settings. The iRacing app settings are found in a file called “app.ini” and it is located in the iRacing folder in your documents folder.

Logitech users (Logitech G PRO, G923, etc…)

Find the following line:
loadTrueForceAPI=1

Update that line so it says this instead:
loadTrueForceAPI=0

This turns off support for Logitech TrueForce in iRacing, and we need to do this because that feature prevents any third party application (like this one) from being able to control the force feedback.

Simagic users (Simagic Alpha, etc…)

I do not have a Simagic wheel so I am uncertain about this. If you do have issues running this app, you can try the following:

Find the following line:
loadSimagicAPI=1

Update that line so it says this instead:
loadSimagicAPI=0

Unfortunately, this might also turn off support for the Simagic Haptic Pedal Reactors (HPR). I am not sure about this point.

Simucube users (Simucube 2 Pro, etc…)

I do not have a Simucube wheel so I am uncertain about this. If you do have issues running this app, you can try the following:

Find the following line:
loadSimucubeAPI=1

Update that line so it says this instead:
loadSimucubeAPI=0

Unfortunately, this might also turn off support for the Simucube ActivePedal. I am not sure about this point.

After you finish making your edits to the app.ini file (if any), save the file, and then launch the iRacing simulator.

All users

After the iRacing simulator loads, go into the “Options” screen, and into the “Drive” tab, and turn off native force feedback support by unchecking the “Enable Force Feedback” checkbox.

Once you have done those, you are ready to go.

Device

You would indicate which force feedback device you want the app to use, by selecting it from this dropdown box. If there are no devices listed in this box, make sure that your force feedback wheel is plugged in, turned on, and is not sleeping, and then restart the app.

Wheel Max

The “Wheel Max” slider is how you tell the app how strong the motor is – what is it’s maximum torque output in Newton-meters. For example, my Logitech G PRO racing wheel is rated at 10.9 Newton-meters, so that is what I have it set to in the app. If you have a Simagic Alpha wheel which is rated at 15 Newton-meters, you would set this slider to 15.

Test Button

Pressing the test button will make the app send a short burst of force feedback signal to your wheel. If the app is able to control your wheel, you should feel it vibrate for about one second. If you do not feel anything, then something is wrong. Try closing and and then restarting the app.

Button Mapping

Mapping these sliders to controller buttons will allow you to easily make adjustments while you are racing. This step is optional – you can use your mouse to move the sliders around instead if you want.

To map knobs or buttons, on any of your attached joysticks or gamepads or wheels or button boxes, press on one of the four (-) and (+) buttons. This brings up a “map button” window, and you can just follow the instructions on the screen.

I have the overall and detail sliders mapped to knobs on my button box.

Overall Scale

The overall scale adjusts the strength of the force feedback that is sent to your wheel.

When you have this set to 100% this means that if iRacing says to apply 10 Newton-meters of force to the wheel, then that is exactly what happens.

If you set this to 50% then when iRacing says to apply 10 Newton-meters of force to the wheel, the app applies 5 Newton-meters to the wheel instead.

Detail Scale

The detail scale adjusts the strength of things like road bumps, tire chatter, and things like that.

If you set this to 100% then basically the force feedback signal is passed from iRacing, through this app, and to your steering wheel virtually unchanged.

If you set it to 50% then the details are cut down in half, and if you set it to 200% the details are twice as strong.

Pretty Graph

When you enable the pretty graph, you will see two lines – one red and one blue. The red line is the original wheel torque signal sent via the iRacing telemetry data. The blue line is the processed wheel torque signal that gets sent to your wheel.

The top edge of the graph is the maximum signal turning the wheel one way, and the bottom edge of the graph is the maximum signal turning the wheel the other way. The middle of the graph is the zero torque signal.

If the blue line ever touches the top or the bottom of the graph, then that means the force feedback signal is getting clipped – you may want to avoid that by adjusting the overall scale slider.

You do need to be in your car and on the track for this graph to show anything.

Additional Information

  • When you are not in your car on the track, the FFB signal to your wheel is set to 0.
  • When you are driving very slowly in your car (below 12 mph), the signal to your wheel is reduced.
  • Your overall and detail scale settings are saved on a per-car and per-track and per-track configuration basis. When you change cars or tracks, the app will put the slider settings back to what they were the last time you were in that car on that track with that track configuration.

Wind Simulator

Overview

To make use of the wind simulator feature, you will need to start by acquiring the fans in this SRS “Hurricane” Power Wind kit package –

https://www.simracingstudio.com/product-page/srs-hurricane-power-wind-kit-package

Note – if any of you know where we can get these fans direct from a supplier without buying them from SRS, please let me know!

The issues with the SRS setup are –

  1. The USB connector on their “Intellibox” controller is junk and breaks at the slightest touch.
  2. The SRS software to control the fans is garbage and does not control the fans very well. As you speed up in your car you get nothing… nothing… nothing… then full blast of air. No fine control.

You will need to build your own replacement for their controller. I’ve written up a parts list and some instructions, and there is no soldiering required. Here it is –

Details

This is what the wind simulator tab looks like –

It’s basically divided into three parts, the car speed, wind force, and some test checkboxes. This works functionally similar to an 8 band parametric audio equalizer.

Car Speed

The car speed is pretty self-explanatory. It is the speed of the car. The default values are 0, 5, 25, 50, 75, 100, 150, and 200, but you can change them. The meaning of the values depend on what you have the “Units” in the iRacing options set to. If it is set to “English (USA)” then the values are in miles per hour (MPH). If it is set to “Metric” then the values are in kilometers per hour (KPH).

Wind Force

This controls the pulse width modulation signal that is sent to the fans. This controls how fast the fans spin for each band. The signal is linearly interpolated between bands.

Test

This is how you would configure the system to work exactly how you’d like. You would sit in your sim rig with the fans pointing at you, and then you would tick on the checkbox for the band you want to calibrate, and adjust the slider up or down until you the wind you are feeling is exactly right, Repeat this process for each band until you have configured all 8 bands.

For example, if you are calibrating the 50 mph band, you would tick the test checkbox for the 50 mph band, and move the slider up or down until you feel the wind experience is just where you want it to be for when the car is moving 50 mph. Don’t forget to untick the checkbox when you are done calibrating.

Additional Information

  • Wind curving is in effect – so when your car is turning left or turning right, the fan on the opposite side is turned down.
  • VR users might want to set the wind force for the first band to something greater than 0, to always have a minimum amount of air blowing, to cool your headset. I have my first band set to 1% (the default is 0% for the first band).

General Settings

There’s not much under this tab yet. I’ve added a checkbox to enable or disable the voice synthesizer, and also a slider to control its volume.

Console

The console tab basically shows you a log of events. This can be used to troubleshoot things if something does not work right. This same information is written out to the console log file which can be found in the “MarvinsAIRA” folder in your documents folder.

Help

There are three buttons on this tab.

  1. See the Documentation
    It sends you to this web page!
  2. Go to the iRacing Forum Thread
    It sends you to the iRacing forum thread where I announced this app.
  3. Send Marvin Your Console Log
    You must have an iRacing forums account to use this button. When you click on the button, the console log will be copied to the Windows clipboard. The app will then launch a browser window taking you to the iRacing forum’s “New Message” page. What you need to do here is type in a short description of the problem, and then on a blank line hit Ctrl+V to paste the console log.

Enjoy!!!