Support Thread: SimMidi

Hi,
This shall be the support thread for my program SimMidi.

What is this?

SimMidi
SimMidi is a bridge program allowing you the usage of any midi controller as input device in any simulation.

Two ways are provided to do so:

  • Monitor midi messages and map it to a vJoy device (vJoy)
  • Monitor midi messages and map it to autohotkey script (AHK)
Following midi messages are monitored and send to, when mapped:

Pitch bend > - | vJoy Fader
NoteOn > AHK Button Switch Encoder | vJoy Button Switch Encoder Fader
Control change > AHK Button Switch Encoder | vJoy Button Switch Encoder Fader

If there is a AHK and vJoy mapping for the same midi element set, it is first send via AHK and then to vJoy.

Especially Behringers XTouch Mini controller (XTOUCH) is fully supported with all of its leds and real telemetry status leds for its encoders.

8849979015198.png

https://www.behringer.com//Categori...rollers/X-TOUCH-MINI/p/P0B3M#googtrans(en|en)


Features
  • 18 + 8 assignable buttons or switches to vJoy virtual gamecontroller and/or AHK. Led status if pressed or switched on.
  • 1 assignable analog fader to vJoy.
  • 8 assignable encoders to vJoy and/or AHK.
  • Real status led updates for the encoders based on the telemetry data recieved for game and car.
  • Support for any connected midi controller.
  • Support for editable config files.
  • No installation of main program needed.
  • Detection of game, track and car, seperate configuration per car.
  • Encoder led templates for brake balance, turbo, engine brake, ABS, traction control, ERS delivery and ERS recovery provided.
  • DRS zone led mode for XTouch.
  • H-Shifter mode for XTouch from 2 to 8 gears and reverse gear.
  • The fader of the XTouch could be used as handbrake.
Planned
  • More games telemetry via SimHub.
Preconditions
  • One or more midi controllers, at best Behringer XTouch Mini midi controller.
  • UDP telemetry provider SimHub from Wotever @racedepartment.com for encoder led control installed.
  • Own written plugin for SimHub (sourcecode provided) to provide telemetry data for encoder leds with UDP.
  • vJoy device driver @Github installed. (Minimum with 64 buttons or more configured.)
  • Assetto Corsa installed.
  • A text editor of your choice.



 
Last edited:
Great , I've been thinking of buying an AKAI APC mini to control my sim with midikey2key or Macro Buttons that comes with Voicemeeter .

Your solution seems great because it connects to vJoy , giving options. It would be nice to be able to programm other midi controllers concerning lights etc someway . Don't know how difficult it is to be honest if you don't own the hardware to support it.

Anyway , thanks for the idea , guess will have to wait to get the AKAI APC mini to try it :)
 
Great , I've been thinking of buying an AKAI APC mini to control my sim with midikey2key or Macro Buttons that comes with Voicemeeter .

Hi,
had a look at midikey2key. This seems perfect if you have this train simulator for which he build in a special mode. If you don't play this game, i think the APC mini has a lot of buttons (8x8), Is this not hard to remember what is assigned to which function?

SimMidi's led part is completely seperated from the basic control. That means, if you e.g set in Akais editor a grid button to toggle or so and map it in SimMidi as a button you will propably have a switch whoes lit when on and dark when off.

If you don't control any XTouch leds with SimMidi or you have only other controllers you also don't need Udp data and therefore also not SimHub.
 
Hi,
I am using this app with Novation Remote Zero SL, using external control pedal input for handbrake (vjoy) and buttons for TC, ABS etc. Works perfect :)
Only thing is I can't figure out how to make encoders work.
In increase/decrease value my controller is sending values 63/65. I can't make it to send 0/127. If I use translator app (midiOX, wich I used in this manner for controlling lightshows on stage LOL) Simmidi doesn't see any input device.

Any idea what I am doing wrong or how to map values 63 / 65 to vjoy buttons or keymap? Any help would be greatly appreciated.

Still great app tho ;-)
 
Hi,

In \Ini\SimMidiGeneralSettings.config are those settings:

"UnknownEncMinusValueStart": 127,
"UnknownEncMinusValueEnd": 120,
"UnknownEncPlusValueStart": 1,
"UnknownEncPlusValueEnd": 8,


Try changing those ranges.
 
This sounds great as I have an X-Touch Mini that I'd been using with Lightroom on my iMac. However, I'm struggling to get this to work. I've downloaded and installed SimMidi, VJoy and AutoHoyKey but when I load up SimMidi I don't seem to be able to map anything. It sees my midi inputs, but I can't see how I can map things to each button/encoder?

Capture.PNG
 
Okay. Its all written in the documentation.

1.) in .\ini\SimMidiGeneralSettings.config set

"VJoyId": 1,

0 = disabled.

< 0 = disable vJoy completely , 1 = use vJoyDevice 1, 2 = use vJoyDevice 2...

2.) for testing disable vjoy mode only and ahk mode only.

3.) follow the documentation to assign a midi element.
In Ahk move/press a midi element. select a ahk script than what it is and add midi control.
 
Hi there,

Thank you very much for developing SimMidi and giving support here. I'm struggeling with the LED for the encoders...

What is working:
- SimMidi is installed, Plugin for SimHub is installed
- vJoy software is installed
- all softwares are running
- I am using the demo ini-setting for SimMidi which is perfect to assign keys in iRacing
- I can use all the encoders and buttons in iRacing
- I can see iRacing and the UDP Plugin running in SimHub

What is not working yet:
- I can not get the encoder LED running - I assigned different functionalities via SimMidi and tried different Range/Range1 settings
- for me it seems as if no UDP information is coming from SimHub
- the plugin is not configurable in SimHub, just showing a blank screen - is that correct?

Do you have any idea?
Thank's so much in advance!

By the way - put some carbon fiber look-a-like foil around the X-Touch - looks like real race car equipment ;-)

20200731_110035.jpg
 
Cool look ;-)

1596272745247.png


This settings you made ?

1596272799781.png

And is this counter increasing?, activated plugin in Simhub?

iRacing i don't have so you have to add its support to the plugin source or find somebody who can do it for you, sorry for that.
 
X-Touch is working so far in general - I can set all the buttons and encoders and can also use it for in game operations.
One example: If I use encoder 2 for ABS setting it is changing the value in iRacing correctly by turning the encoder knob. I have also set the Range manually to 0-12, Preset 6 in the game's ini file for SimMidi. This is also displayed in SimMidi correctly.
Only thing that is not running is the UDP connection I guess - LEDs are not illuminated at all - only when I trigger the LED test. UDP#0 is not increasing, it is always UDP#0.
Where can I change anything realted to the "plugin source"? Don't find any possibility to change anything there in SimHub...

Thank you very much for your support!
 
Ok - Thanks for your answer. Seems to be more complicated ... don't have the knowledge for that, I'm sorry. But not too bad, as long as controls are working - so I can put the current value on the dashboard.

One more idea: There are plugins for iRacing to stream telemetry via UDP. What if I use such an iRacing plugin to get the UDP stream running on a specific port and use that feedback for showing current status in SimMidi. Is there a chance to change LED source from SimHub Plugin to other "providers"?

By the way: When I start SimMidi first and then SimHub I now get one LED in the ABS encoder illuminated. But no change in display when I change the values...
 
Hi - Thanks again - that's working but - for sure - only indicating "any change" but not the real value.
I try to summarize why it is not working for iRacing right now - just to make sure that I understood correctly:

- communication of SimMidi with X-Touch is working properly (as I can use the encoders for changing values in iRacing)
- communication of iRacing with SimHub is working properly (as I can see the changed values for e.g. ABS setting in SimHub variables (ranging 0...12)
- communication with UDP plugin of SimHub is working in general (as I now see #1 or #2 for UDP in SimMidi)
- missing: the UDP plugin for SimHub is not transferring values coming from iRacing through UDP on the "variable" which is used in SimMidi

If I understood correctly it makes a difference whether values are coming from ACC, PC2 or iRacing even if they are all transferred through UDP plugin and for the same "variable" (e.g. ABS setting or TC). To "fix" this an update of the UDP plugin would be necessary but needs some further programming skills.

Is that kind of a correct summary? :)
 
If I understood correctly it makes a difference whether values are coming from ACC, PC2 or iRacing even if they are all transferred through UDP plugin and for the same "variable" (e.g. ABS setting or TC). To "fix" this an update of the UDP plugin would be necessary but needs some further programming skills.

Is that kind of a correct summary?

completely right. Record a lap in iRacing with SimHub and send it to me.

lets see what can be done.
 
IRacing.zip
- Ignition on via SimMidi
- Brake Bias change via Encoder
- ABS setting change via Encoder
- Traction Control change via Encoder

Unfortanetly I can not find a car which has all the options incl. Fuel Mix, Engine Power, Power Steering as available in SimMidi. The three mentioned here (Brake Bias, ABS, TC) are the most important.

Thanks in advance - looking forward to hearing from you!
 
Back
Top