SimHub is very capable on its own, and many plugins
(I find more all the time) expand its capabilities.
One capability lacking is more elaborate tactile and audio effects.
21 Jan 2024: @Wotever addressed this in SimHub 9.1.20
by ShakeIt Bass shakers CUSTOM
Consequently, MIDIio plugin is now mostly useful for repurposing
MIDI CC changes as vJoy inputs or custom SimHub properties.
Computer control of audio typically uses
MIDI (Musical Instrument Digital Interface),
originally a quite simple protocol, but obfuscated in version 2.0.
However, original MIDI is still very alive.
There is already a SimMidi (download here) with a SimHub plugin,
but it is about using MIDI controllers with vJoy and/or autohotkey,
with game telemetry via SimHub to e.g. control LEDs.
SimHub includes a MIDI plugin by @Wotever that enables use of MIDI controller button events equivalent to HID keystrokes,
as described here.
However, this plugin supports neither sending any MIDI messages
nor handling e.g. slider control changes.
Meanwhile, SimHub includes 2 MIDI libraries:
.. which seems overkill; NAudio is perhaps used only for audio (ShakeIt)?
This search/project thread is instead about using SimHub to
e.g. control volume of some (virtual) device by MIDI OUT.
One such virtual MIDI device could be an Equalizer APO plugin
to control volume of digital audio channels to sound cards.
With a MIDI Out plugin, SimHub custom Shakeit effects could
control sounds and tactile signals made elsewhere or indeed by other ShakeIt effects. This would enable independently controlling
frequencies and amplitudes of a tactile effect using telemetry values.
Fanatec's McLaren GT3 V2 rim has dual clutch paddles with a bite-point mode which is lost when using Sim Racing Machines' adapter.
SimHub is already capable of reading those paddles;
a plugin that could send appropriate messages to vJoy
would allow a custom SimHub effect to implement bite-point mode.
Perhaps either or both of these capabilities already exist,
somewhere in the plethora of SimHub plugins...?
Meanwhile, this thread can serve as a log of beginner misconceptions
and errors associated with hacking a SimHub plugin, e.g.
(I find more all the time) expand its capabilities.
One capability lacking is more elaborate tactile and audio effects.
21 Jan 2024: @Wotever addressed this in SimHub 9.1.20
by ShakeIt Bass shakers CUSTOM
Forced Frequencies
:Consequently, MIDIio plugin is now mostly useful for repurposing
MIDI CC changes as vJoy inputs or custom SimHub properties.
Computer control of audio typically uses
MIDI (Musical Instrument Digital Interface),
originally a quite simple protocol, but obfuscated in version 2.0.
However, original MIDI is still very alive.
There is already a SimMidi (download here) with a SimHub plugin,
but it is about using MIDI controllers with vJoy and/or autohotkey,
with game telemetry via SimHub to e.g. control LEDs.
SimHub includes a MIDI plugin by @Wotever that enables use of MIDI controller button events equivalent to HID keystrokes,
as described here.
However, this plugin supports neither sending any MIDI messages
nor handling e.g. slider control changes.
Meanwhile, SimHub includes 2 MIDI libraries:
.. which seems overkill; NAudio is perhaps used only for audio (ShakeIt)?
This search/project thread is instead about using SimHub to
e.g. control volume of some (virtual) device by MIDI OUT.
One such virtual MIDI device could be an Equalizer APO plugin
to control volume of digital audio channels to sound cards.
With a MIDI Out plugin, SimHub custom Shakeit effects could
control sounds and tactile signals made elsewhere or indeed by other ShakeIt effects. This would enable independently controlling
frequencies and amplitudes of a tactile effect using telemetry values.
Fanatec's McLaren GT3 V2 rim has dual clutch paddles with a bite-point mode which is lost when using Sim Racing Machines' adapter.
SimHub is already capable of reading those paddles;
a plugin that could send appropriate messages to vJoy
would allow a custom SimHub effect to implement bite-point mode.
Perhaps either or both of these capabilities already exist,
somewhere in the plethora of SimHub plugins...?
Meanwhile, this thread can serve as a log of beginner misconceptions
and errors associated with hacking a SimHub plugin, e.g.
- SimHub plugins are Visual Studio C# projects.
- 2 example projects are bundled with SimHub, in a
PluginSdk
folder. - Other projects typically are also in that
PluginSdk
folder, to build successfully. - Existing projects built with earlier target framework e.g. 4.6,
but they need target framework change to build for current SimHub.
- waits for configured Joystick properties to become non-null.
- vJoy button numbering now matches SimHub convention.
- SimHub plugin logging is less verbose.
Last edited: