Skip to content

v0.4.0: A DirectInput effects engine, RaceRoom and Le Mans Ultimate support, and LED pattern matching in Assetto Corsa

Choose a tag to compare

@Mhytee Mhytee released this 23 Sep 15:33
· 222 commits to beta since this release

The biggest gap in our force feedback accuracy is now fixed. This release
brings a DirectInput effects engine to TF4ALL, so the springs, dampers,
friction and waveforms a game sends reach the wheel instead of being dropped
on the floor. RaceRoom and Le Mans Ultimate hand their force feedback over
the way iRacing and Assetto Corsa already do, which frees your rev lights and
the wheel's screen to work while you drive. Our lighting features now work in Assetto Corsa,
including automatic LED pattern matching, taken from the car's own data.

The beta channel's work reaches stable here as well. If you are coming from
v0.1.28, start with the section below.

If you are updating from 0.1.x

This is the largest jump stable has ever taken. Months of beta work arrive in
one update: more games supported, your wheel's OLED screen and LEDs, the
TF4ALL Dash, and so much more.

  • iRacing's own Trueforce can be replaced by ours. The sim ships Trueforce of its own, so the plugin used to step aside for it. Switch iRacing's off and the plugin takes over: the sim's steering forces reach the wheel with TF4ALL's effects on top, and your rev lights and the wheel's screen work while you drive.
  • Telemetry Based FFB can replace a game's force feedback outright. Optionally: in the Forza titles the plugin will build the steering force itself out of telemetry instead of passing the game's through, and many drivers prefer it to what the game sends. There is a real sense of grip in it: the wheel goes light as the front washes out, and pulls into a countersteer as the rear steps away. In FH6, this enables your wheel's LEDs as well!
  • Farming Simulator FFB overhaul. Force feedback in Farming Simulator is notoriously basic. The game gives the wheel a centering spring and little else, so the plugin replaces it with a force of its own, and it engages by itself. Our Enhanced Telemetry mod adds ground texture through the wheel, the thud as an implement drops into work, and the cut while your wheels are off the ground.
  • Assetto Corsa hands its force feedback over as well. It already worked through the USB capture. With the TF4ALL CSP Bridge the game passes its finished force to the plugin directly, which frees your lights and the wheel's screen to run while you drive.
  • Games with Trueforce of their own are detected. Two Trueforce streams on one wheel fight each other, and the wheel buzzes. The plugin now hears the game's, stands down for the session and keeps the wheel's lights, so the buzz is gone. Switch the game's own off and the plugin takes over instead.
  • Customize your wheel's OLED screen. Speed, gear and lap delta in the middle of the wheel, from eleven ready-made screens or one you build yourself, with meters for throttle, brake, revs, grip and force. On the G PRO and RS50.
  • A LIGHTSYNC tab for the lights. A pattern maker, a library far bigger than the five slots the wheel holds, and colors that match the car you are driving. Your top five are written to the wheel, so they stay when SimHub is closed.
  • TF4ALL Dash, on your phone or tablet. Tune the plugin from your phone without alt-tabbing out of the car. It opens in a browser with no app to install, with a large gear, a rev strip mirroring your wheel's lights, and four boxes you pick from tires, fuel, lap times, inputs, a radar and the relative.
  • Bind TF4ALL controls to any button. Master gain up and down, the next light pattern, the next dash tab and more can sit on a wheel button, a button box or anything else SimHub can see, so what you would open the panel for happens without leaving the car.
  • Community presets, car facts and accounts. Someone else's tune for the car you are in is one click away, and a car's real cylinder count and redline get fixed once for everyone instead of by each driver.
  • Cloud Backup & Sync. Settings, presets, game defaults, car facts and light patterns back up to the cloud and restore onto another machine, or keep every machine you are signed in on in step.
  • Guides built into the plugin. The question mark at the top of the panel opens them: setup instructions for each game, how to tune your effects, and what every feature actually does. The first place to look when something is not behaving, and where to go when you want to push your knowledge further.
  • Three new effects, and improvements to the existing ones. Axle slip, curb thump and lockup judder join the list, and traction loss now weighs each tire by load rather than following the loudest one.
  • A UI overhaul. A tab for each area, a number you can type beside every slider, and the Trueforce gain on SimHub's home screen.

A DirectInput effects engine

The largest single gap in how accurately we reproduce a game's force feedback,
and it affected every game we capture over USB rather than any one title.
Until now we sent the wheel a fraction of what the game actually asked for.

  • What was missing. Games send their force feedback as a set of different effects: a constant force, plus springs, dampers, friction, inertia and waveforms. The wheel renders them in its own firmware. Until now, our FFB capture only took the constant force value, leaving force feedback incomplete. That is why the same game could feel lighter and less detailed with the plugin on than with it off.
  • What changed. The plugin now reads them off the USB connection as the game sends them and renders them into the Trueforce stream alongside the game's force.
  • Assetto Corsa's damper is back. On both routes: through the capture, and through the CSP Bridge, where the game's damper is now carried across and rendered into the stream. A released wheel no longer oscillates and full lock no longer arrives hard.
  • A pause menu centers the wheel the way the game intends. While the game is paused or in the background, its spring and damper keep playing and only its steering force is silenced, so the wheel settles instead of going limp or holding a pull.

PlayStation G923 owners, we need a tester

The PlayStation edition of the G923 speaks an older force feedback protocol
than the other wheels, so the effects engine above never reaches it.

Every effect the wheel can be sent is covered, but it has never run on a
wheel, so it stays switched off rather than going out untested.

If you own one and can spare a short session, join the Discord or open an
issue on GitHub and we will take it from there.

Full support for RaceRoom and Le Mans Ultimate

Both join iRacing and Assetto Corsa: the plugin carries their force feedback
itself, so everything it does works in them. Turn it on with "Take over force
feedback for RaceRoom" or "Take over force feedback for Le Mans Ultimate" on
the FFB tab.

  • Both sims publish the steering torque their physics computes. RaceRoom in its telemetry, Le Mans Ultimate in its official shared memory. We read that now and carry it to the wheel with the effects on top, instead of using the USB tap.
  • Your rev lights and the wheel's screen work in both. Using them normally interrupts the game's force. With the plugin carrying the force, there is nothing to interrupt.
  • An auto strength button, like iRacing's. Drive a couple of laps, press it, and that car keeps the number. In Le Mans Ultimate it is the car's peak force in Nm. Bindable to a wheel button.
  • Soft lock, stationary friction and the stationary spring work in both. Le Mans Ultimate does not report the wheel's rotation, so the plugin measures where the car's lock falls on the wheel's travel over the first seconds of cornering in each car.
  • Engine data for every car in RaceRoom. A shipped table covers all 356 cars currently in the game with their real cylinder count and crank layout, so a V8 pulses like a V8. Without you needing to specify.

Automatic LED pattern matching comes to Assetto Corsa

Our lighting enhancements had not reached Assetto Corsa until now. Usually the
game drives the wheel's lights itself. Now, the lights are fully controlled by
TF4ALL.

  • The lights fill where the car's own dash fills. Cars in Assetto Corsa carry their own shift light data: the revs each light comes on at, the colors it uses, and how fast it flashes at the redline. The plugin reads that from the car itself, so your lights fill and flash in step with the dash in front of you rather than at a generic share of the rev range.
  • Automatically match your wheel's colors to the car you're driving. Turn on "Match my wheel to the car I'm driving".
  • The wheel's screen no longer costs you the lights. v0.3.0 ran the screen in Assetto Corsa for the first time, but the screen and the game were sharing one pipe to the wheel and the game's lights lost. With the lights ours, both run. Switching the screen on in Assetto Corsa switches our rev lights on with it.
  • If installed, the CSP Bridge now updates itself when SimHub starts.

Needs the TF4ALL CSP Bridge.

iRacing

  • Curb strikes, rumble strips and sharp hits are softened. iRacing reports each wheel's suspension speed six times a frame, beside the torque, and says when the car is on a strip. The torque samples from those instants are eased toward the cornering load before they reach the wheel, so a curb lands as a firm bump instead of a crack and a strip buzzes without hammering. Off the curb the force is exactly what the sim sent. New on the FFB tab, with a slider for how much to take out.

Telemetry Based FFB

  • Stationary friction and the stationary spring come to Telemetry Based FFB (Forza), and the friction to Farming Simulator. The wheel is firm when parked and eases off as you drive away, which is how most games feel natively. When the stationary spring is enabled the wheel pulls toward the center.

Idle modes for the wheel's lights

Choose what your wheel's lights do while it sits idle.

  • Sweep. A slow pass up the strip and back, at a speed you set.
  • Audio reactive. The strip meters your computer's audio output, so the lights move with whatever you are listening to.

Both run when nobody is driving: no game, or the car sat still. Colors come
from whatever pattern you chose, and your revs take the lights back the moment
a game reports them. Off by default, under the rev lights.

Updated defaults

  • "Hand the wheel back to the game while paused" is now off by default. With pauses handled properly now, this option should no longer be needed. Everyone gets the new default once; tick it again if you prefer the game's own force feedback while paused.
  • A new install on a G923 starts at a master gain of 1.5. Its belt drive renders the Trueforce stream fainter than the direct-drive wheels, so it begins with more headroom instead of asking you to find it. New installs only: if you already have the plugin set up, your gain is left exactly where you put it. The G PRO and RS50 start at 1.0.
  • The iRacing preset ships with 3 ms of smoothing. It rounds off the edges of the takeover's 360 Hz detail without adding lag you can feel.
  • The Forza Horizon preset ships with 6 ms of smoothing. It removes the grain when turning the wheel at a standstill.

Interface

  • Spike reduction has been re-worded and is easier to understand. Its two methods are named on the screen, Rate limiter and Peak limiter, and their numbers read as a percentage of full force instead of a raw count. The peak limiter also has its own default tuning now, rather than borrowing the rate limiter's number, and each preset keeps its own threshold.
  • Every number beside a slider can be typed into. Most already could. The ones that could not have been brought into line, so an exact filter corner, redline or sweep time no longer has to be found by dragging.
  • Soft lock, curb strike softening and stationary friction each fold into their own section on the FFB tab. The on/off switch sits in the section header, as it now does for the stationary spring too, so the row shows whether the feature is on without opening it. Strength, Damping and Smoothing sit together above them.
  • Reset FFB tuning puts spike reduction back too. One button restores the force tuning for the game you are in, spike reduction included, and leaves your other games alone.
  • Simplified and shortened the LED pattern preview.
  • Eleven new guides in Help: RaceRoom setup, Le Mans Ultimate setup, how the force handover works, the CSP Bridge, force and lights, backup and sync, car facts, the TF4ALL dash, the home tile widget, tuning TF effects, and the wheel's screen.
  • Step buttons beside the car's peak force. A minus and a plus around the box on the FFB tab, five percent a press: down for heavier, up for lighter. RaceRoom's Car's max has them too.
  • The stationary spring section shows only in games which support it.
  • The log is easier to follow when something goes wrong. It no longer repeats one line every five seconds, failures read as failures rather than as ordinary chatter, and a stream that dies now says why.
  • The What's new window is wider, resizable, and easier to read. Wrapped notes render as paragraphs instead of running together.
  • RaceRoom is called RaceRoom, and Le Mans Ultimate is called Le Mans Ultimate. They showed as RRRE and LMU in places.

Bug fixes

  • No more unplugging your wheel to get force feedback working. For some users the plugin's FFB capture would not work at all until they unplugged the wheel and plugged it back in. The plugin now detects a wheel that is not responding and tries to recover it on its own, with no replug needed.
  • A PlayStation G923 no longer needs G HUB run after every computer start. That wheel comes back in PlayStation mode whenever it loses power, and in that mode the plugin cannot see it at all, so the only cure was to launch G HUB, wait for it to find the wheel, and close it again, every single time. The plugin now does the switch itself. It only ever does this to a wheel in that state, never to one that is already working.
  • The self-test no longer says USBPcap is fine when its capture driver is not loaded. It only looked for USBPcap's program file, which stays on disk even when Windows refuses to load the driver, so it passed while the plugin could not capture any force feedback, and the Reinstall button stayed hidden. It now checks whether the driver is attached to your USB ports. Reinstalling it also says to restart the computer, which is when the driver attaches (issue #44).
  • The wheel no longer pulls to one side when you pause, and effects no longer get stuck on. SimHub keeps repeating the last telemetry it had, so the plugin held the force from that instant and pulled the wheel over, while sustained effects like the engine hum carried on playing. It now recognizes a pause, either because the game says so or because the readings stop changing, in every game fed through SimHub. First reported in RaceRoom.
  • Soft lock now works in Assetto Corsa, iRacing, RaceRoom and Le Mans Ultimate. In Assetto Corsa with the CSP Bridge, CSP applies its custom soft lock after the bridge has already handed the force over to the plugin, so the lock never reached the wheel. The bridge now renders it itself, using your settings from CSP's FFB Tweaks page (issue #43). In iRacing and RaceRoom the plugin now builds the stop from the sim's own steering position and lock, in the same shape. On by default for the takeovers, with a strength control beside the takeover settings on the FFB tab.
  • iRacing could lose all force feedback until SimHub was restarted. After a stand-down, a mode change or a switch to another game and back, the plugin's direct telemetry reader came back with an empty channel table, so the takeover had nothing to work from and the wheel went dead.
  • The peak limiter no longer lets a long slide along a wall hammer the wheel. It capped how hard a hit landed but not how fast, so each reversal against a scraping wall arrived in a single millisecond. Its running average also learned from the hit, letting each reversal land higher the longer the slide went on. A hit above the limiter's minimum reference is now slowed as well, and the average no longer rises during a hit. Found in iRacing.
  • The force fades back in after a pause instead of stepping, in iRacing and under Telemetry Based FFB. Coming back from a pause could land the full cornering force in one go.
  • The pause hand-back no longer flaps in Forza's menus. Forza's pause menu alternates live and paused frames every few seconds, and the hand-back followed them, taking the wheel from the game's menu spring mid-swing each time. It now waits for the driver to move, throttle or rev before handing the wheel back.
  • Fixed a regression introduced in v0.3.0 which caused the Telemetry Based FFB settings to remain hidden when the toggle was enabled. They would not show until the plugin page was reloaded.
  • Changing your light pattern mid-session no longer makes the lights flicker. The wheel takes one writer at a time, and a pattern change arriving while something else was driving the lights produced a visible stutter. Only one thing writes to them at a time now.
  • The iRacing setup notice now appears when SimHub is started with iRacing already running. It fired before SimHub had a window to sit on and died quietly.
  • Removing the CSP Bridge puts your previous post-processing script back. It used to leave CSP's slot pointing at the deleted script.

Anonymous usage statistics

To decide what to build next, the plugin now shares how it is used, anonymously and on by default. It sends a random id that is not tied to you or your hardware, the plugin version and your wheel model, the games you play, and your settings, so we can see which wheels people run, which features get used, and where people settle on the tuning. It never sends your name, your account, anything you type, or your IP address. One switch in Settings, "Share anonymous usage statistics", turns it off completely. The privacy policy has the full detail.