SimHub plugin[s] for output to MIDI and vJoy

I'd be really interested in what your latencies are. I tested 7 different simhub / sound cards combos and none was faster than avg. 140ms. No filters or effects applied.
 
An initial prototype SimHub plugin is working for converting MIDI controller sliders and knobs to SimHub properties e.g. for changing amplitude of tactile effects. MIDI output is next.
Since still prototyping, compiled .dll is not released, but a clone of the GitHub repository to a sub-folder of SimHub's PluginSdk should compile and install. Documentation is more extensive than code.
 
Last edited:
Release v0.1.0 seems to work pretty well.
For folks comfortable with Javascript, MIDI sliders provide properties
that can be used to adjust e.g. ShakeIt gains on the fly.
Similarly, it can be configured to simultaneously access generated properties
to control external VST modules by telemetry over MIDI,
for implementing tactile control effects beyond those supported by SimHub.

MIDIio SimHub plugin

 
Last edited:
Good news, better news
Second beta release integrates SimHub property value routings among:
  • ShakeIt properties,
  • MIDI input and output,
  • Joystick input
  • SimHub Controllers input plugin properties, and
  • vJoy out.
Better news: SimHub 8.2.2 introduced its own Control mapper plugin,
which amazingly coexists with this MIDIio plugin,
unlike @Wotever's Midi Controllers Input plugin,
which crashes SimHub if enabled while MIDIio is also enabled.

Unlike SimHub's Controllers input and Control mapper plugins,
MIDIio supports axes as well as buttons,
but only for single selected MIDI and Joystick devices.
 
Last edited:
SimHub plugin MIDIio Beta release v0.2.2
now routes configured MIDI CC messages on receipt,
instead of waiting for SimHub (60Hz) property refresh scans.
This should reduce latency, but also simplified code.
It is hard to guess whether or how many folks
have or will be motivated to acquire a MIDI control surface
for e.g. tweaking SimHub ShakeIt properties while in game,
much less what device they would employ (I use a KORG nanoKONTROL2),
but I'll integrate MIDIio properties into a ShakeIt profile as an illustrative example.

Another interesting application, given vJoy output, is dual paddle clutch release.
Since SimHub telemetry can report vehicle movement as clutch engagement occurs,
this can be semi-automated...
 
SimHub plugin MIDIio Beta release v0.2.5
  • waits for configured Joystick input properties to become non-NULL
  • vJoy button output numbering now matches SimHub convention (first is B00)
  • input axis can be converted to output buttons
  • MIDI control surface CC change properties can control ShakeIt effects
    and/or be converted to vJoy buttons and axes.
  • Joystick buttons and axes can become MIDI CC changes.
 
Last edited:
It seems you progressed pretty well. Since 99% of what you describe goes over my head, can you (MIDlio) "translate" e.g. suspension SH property data into a midi signal? Assuming yes, what's the hardware to output MIDI? An Arduino?

What I want to achieve:

a.) to control e.g. a specialised Synthesizer like https://www.dagwinderlich.com/v-motor.html in the "DAW realm" with faster pro audio ASIO DACS than the game sound cards, mainly for RPM effects. But also to trigger (synthesised or real recorded) audio samples that represent more realistic vibrations (that can hardly "composed withSimhub ShakeIt) when you go over curbs and bumps, etc..

b.) to use suspension data (with as little latency as possible) to control linear voice coil actuators (as e.g. 4 Powersoft Mover DD with up to 900 Nm each, which is sufficient in a spring balanced build to move an entire rig) for a short throw (+/-10mm) displacement. Thus, acting like the many spindle-driven actuators , but much faster (while not being interested in such actuators longer stroke) giving me fast suspension movements AND the vibrations (with one device). The stroke by DC and the vibration AC frequency modulated on top of it.

So, for a.) using MIDI, and for b.) serial out to the voice coil drivers?

I'm aware of the complexity of what I have in mind... Though I feel confident to get the DAW and the voice coil part done, but I'm struggling with the missing link " how to convert game telemetry data into data format(s) that allow me to do a.) and b.).

Feel free to skip, hint on a high level, or PM. Thanks!!
 
can you (MIDlio) "translate" e.g. suspension SH property data into a midi signal?
MIDIio can convert any SimHub property,
including any user-generated e.g. from a ShakeIt plugin,
to a MIDI CC.
Assuming yes, what's the hardware to output MIDI? An Arduino?
I use. e.g. loopMIDI to connect Windows software MIDI devices
or the MIDI output of e.g. a suitable audio interface.
For debugging, I use MidiView
For hardware MIDI I/O, I have a PreSonus AUDIOBOX USB.
What I want to achieve:

a.) to control e.g. a specialised Synthesizer like https://www.dagwinderlich.com/v-motor.html in the "DAW realm" with faster pro audio ASIO DACS than the game sound cards, mainly for RPM effects. But also to trigger (synthesised or real recorded) audio samples that represent more realistic vibrations (that can hardly "composed withSimhub ShakeIt) when you go over curbs and bumps, etc..
That seems doable using MIDI CCs..
b.) to use suspension data (with as little latency as possible) to control linear voice coil actuators (as e.g. 4 Powersoft Mover DD with up to 900 Nm each, which is sufficient in a spring balanced build to move an entire rig) for a short throw (+/-10mm) displacement. Thus, acting like the many spindle-driven actuators , but much faster (while not being interested in such actuators longer stroke) giving me fast suspension movements AND the vibrations (with one device). The stroke by DC and the vibration AC frequency modulated on top of it.
I have no experience with those Powersoft Movers and pathetically little with synths.
I let SimHub ShakeIt generate tactile signals, mostly varying frequencies by telemetry,
then use related telemetry converted to MIDI CCs to vary those ShakeIt tactile signals' amplitudes using a VST MIDI mixer plugin.
So, for a.) using MIDI, and for b.) serial out to the voice coil drivers?
No idea about driving voice coils from serial out,
unless you contemplate e.g. an Arduino driving a DAC.
Of course, literal DC conveys no information,
and +/-10mm seems unlikely to be a useful amount of roll.

Powersoft strongly recommends their own CANALI DSP series amplifiers for their Movers.
I'm aware of the complexity of what I have in mind... Though I feel confident to get the DAW and the voice coil part done, but I'm struggling with the missing link " how to convert game telemetry data into data format(s) that allow me to do a.) and b.).
I also fiddle with e.g. harness tensioners,
which use STM32 modules programmed using Arduino IDE
to control servos and/or apply torque by DC motors.

More information is available on the GitHub MIDIio main page,
which has links to more documentation
including more general Windows MIDI software descriptions.
 
Last edited:
Thank so you much for your comprehensive answers! Saved me hours of research! Yes, the little stroke is an experiment. If I ever finish this long time project, i‘m happy to report here first.
 
Cant offer much about all the midi stuff, intersting in the possibilities but seems quite complex in configuring to be widely popular or adopted?

Not my cuppa but pro solutions/hardware that can perform well just suited me better, though they are not cheap these days and have their own learning curve needed.

Had shared a link/info on those Powersoft units several years ago....
Never seen much happen regards that brand of units being used, even with regards "home cinema enthusiasts" for making moving seat platforms. Of course, which they could of managed to do. Besides that they were expensive, so for a sim rig, motion system would probably work out cheaper and you know what results you get with it.

However I will leave a teaser....

Multi-Dimensional & Multi-Positional / Tactile Based Motion ?

Bit of a mouthful, but okay, so what if someone had an idea for a while, to incorporate 4x powerful dedicated bass shakers applying low bass, to enable a small amount of motion via springs.

Well yes that has been kind of done before, but don't think you can properly control the vertical movement as in like how much an actuator will travel? Also, here is a limitation if we think about this properly. The transducer units used to generate this high powered low bass, then cant be used with other positional or non positional effects also applying low bass, as they too will cause the springs to move up/down. This would defeat the purpose or at least contaminate the desired movement to respond only with vertical based movements of the chassis/suspension.


What might work well is dedicated units on pre-tested springs with sufficient travel used only for this purpose/role.

But wait, why has everyone it seems, only ever considered just the vertical axis for suspension/vertical surge based movements? Would I be correct in saying, we certainly have not yet seen a rig build that attempts to apply with tactile something like the following...

3 Tier Base:

Tier A
4x dedicated shaker units as suspension for "vertical motion/shake"
of the primary base structure

Tier B
2x units equipped as "longitudinal motion/shake"
within the primary base structure.

Tier C (1 & 2)
2x or potentially 4x units to apply independently controlled "lateral motion/shake"
of these individual structures for seat/pedals.

Having independent lateral control for seat/pedals would be another way to help introduce differences in sensations for understeer/oversteer slip scenarios.

With these roles, I have a w.i.p design to test and implement
4x Q10B for suspension and 4x Large LFE installed horizontally

Additional tactile will be used for other effects, I just want to explore more possibilities with ideas like this I've had for a while for my own rig.

For this I needed an entirely new build and one of the other things I will hopefully be able to show with it, is a different solution with isolation that's on another level and one, I've never seen done before. Something my own build also needed being in an upstairs room.

I wont be certain how good or beneficial it will be but its a long-term project to just have something special regards tactile immersion. Anyways I enjoy discovering new ideas that add an increased level of felt sensations or help expand the produced actions, we can apply for specific operation of the different axis. Its also different to what motion rigs currently offer.
 
Last edited:
intersting in the possibilities
At least tire slip wants tactile volume controlled by loading
while frequency gets controlled by the amount of slippage,
and SimHub cannot do both.

21 Jan 2024: SimHub 9.1.20 now can

Having independent lateral control for seat/
I have that for rear traction loss on a swivel office chair.
A pair of DAEX32EP-4 exciters are quite effective.
 
Last edited:

Latest News

To join the OverTake Racing Club races I want them to be: (multiple choice)

  • Free to access

    Votes: 127 85.8%
  • Better structured events

    Votes: 25 16.9%
  • Better structured racing club forum

    Votes: 24 16.2%
  • More use of default game content

    Votes: 19 12.8%
  • More use of fixed setups

    Votes: 45 30.4%
  • No 3rd party registration pages

    Votes: 51 34.5%
  • Less casual events

    Votes: 14 9.5%
  • More casual events

    Votes: 46 31.1%
  • Other, specify in thread

    Votes: 9 6.1%
Back
Top