Mod Wheel Meter MIDI Pass-thru?

Hi,

I wanted a meter to show the amount of Mod Wheel, so I added a vertical meter and learned the midi control from my controller mod wheel.

The meter goes up and down with the mod wheel.

Unfortunately it seems to then not pass thru the mod wheel midi messages to the plugins.

How can I do this?

Thanks,
John

Assign. the Widget to your Midi in Plugin and map it to pitch cc

OK thanks for the tip…
I assigned the widget to block “Midi In (OMNI)” - but I don’t see pitch cc…
I tried BlockModWheel, PC and CC1 but they all do nothing the meter does not show anything.

Am I missing something?

My fault
Mod Wheel is CC 1

Yes, I tried CC1 - with no MIDI assignment the meter shows nothing.
If I learn it from the mod wheel then the mod. wheel no longer gets to the plugins.
It seems that assigning the widget to CC1 is not doing anything.

This should work:
Learn your Hardware mod Wheel to the Widget.
Then map your Widget to your Midi in and select CC 1

Which Midi Channel Are you Sending mod Wheel from your Midi Controller?

I am sending on channel 1 - when it learns it says this - “SL STUDIO Port 1, Controller 1, Channel 1”
But as soon as I learn then no modulation is getting to Omnisphere.
Doesn’t matter if I map the plugin before or after learning.

I was wondering if I need a bit of script to resend the midi message?

Let me check
Please Send your Test gig
As soon as a cc is learned to a Widget it is Not Sent further, thats the reason why you have to map cc1 to the Midi in.

OK. I created a new gig with simple setup to test and it works as you describe.

I realised that I wasn’t picking the right midi in block

However, I have several midi in blocks in my full gig and now I assign the meter to the one midi in block it gets the mod wheel messages, but not the other plugins that use different midi in blocks.

I guess I could add multiple widgets - one for each midi in block and assign them a widget group then hide them all in the same place…or is there a better way?

Thanks,
John

Yes, you can do it with scripting.
In scripting you can react on cc1 and send cc1 to the Midi in and set the value of a Widget to Show the value of the incoming cc1

OK. I’ll give it a go…I guess I should use OnControlChangeEvent matching 1 from the midi in block and then use SendNow to send to all MidiIn blocks including the one that it was received from like in the On NoteEvent example in the GPScript manual.

I’ll let you know how I get on…thanks for your help.

Normally you only have to send to the Midi in Block you Are reacting.

Great thanks @pianopaul

It works…here is my script in case others want to see:

On ControlChangeEvent(c: ControlChangeMessage) matching 1 from MidiInOMNI
var
  ccValue: Double
  
  SendNow(MidiInOMNI, c)
  ccValue = GetCCValue(c)
  SetWidgetValue(ModWheel, ccValue / 127)
End
1 Like

Fine.
There are functions ParamToMidi and MidiToParam
These are better than divide by 127 or multiply by 127
…once we have more than 7 bits with CC messages and Midi 2.0 …

Good to know.

So now the code is:

On ControlChangeEvent(c: ControlChangeMessage) matching 1 from MidiInOMNI
  SendNow(MidiInOMNI, c)
  SetWidgetValue(ModWheel, MidiToParam(GetCCValue(c)))
End
2 Likes