So I finally started programming my midi controllers to control Mophoīs parameters.
CC works as expected but I would like to use NRPN to get access to more parameters.
I have a M-audio Trigger Finger Pro. When I map an NRPN to a knob/fader, it works like this. When the value is 0 on the controller, itīs 0 in the Mopho. As soon as the value is more than 0 on the controller, the value in Mopho jumps straight to 127 and stays there until the controller outputs "0".
First I thought this might be specific to trigger finger, as it has itīs problems and was generally a flop product, I bought it when the price had fallen from 400 to 130.
I then tried my Novation Xiosynth. Exactly the same thing happens there - controller values 1...127 give value 127 in Mopho.
I monitored the MIDI and I think I have a clue as to what is going on:
Both Both controllers ONLY send an MSB data entry CC, but no LSB data entry CC.. so the value MUST be in the MSB.
But I think Mopho is expecting the value as LSB. So as soon as the controller sends MSB value "1", Mopho interprets this as 1x128=128, so it tries to apply this value, which only goes to 127 so I end up with 127..
IMO in this case Mopho is not doing anything wrong, it is using MSB/LSB, like they are meant to be used. It is correct to multiply the MSB with 128. It is completely arbitrary to use MSB to send 7-bit values. The problem is with the controllers, they should be sending the value as LSB! (and sending MSB value 0, or on the case of filter cutoff, sometimes 1, because it goes to 164)
Am I correct?
And what could I do now...
Why the fuck are 2 controllers using only MSB to send 7-bit values (this is blatantly WRONG as far as I can understand)
And if this is such a widespread wrongness in controllers, I canīt use many controllers to control the Mopho with NRPNs and still have to resort to using a PC...
Like I said this seems to not be Mophoīs fault, but WTF am I supposed to do now. The controllers donīt seem to offer a way to configure if they send MSB or LSB, which is strange IMO..
Hereīs the MIDI output from the Xiosynth. The Trigger Finger did exactly the same thing so I wonīt post that separately.
As you can see they are not sending the LSB data entry AT ALL... (itīs a fader going up from 0, after the note event)