View Single Post
Old 11-09-2016, 02:37 PM
jim jim is offline
Join Date: Nov 2008
Location: Albuquerque, NM
Posts: 4,512

Originally Posted by edology View Post
In the Moonwind the fine resolution controllers for cutoff can be transmitted by 2 MSB/LSB controllers. Most sequencer programs are able to do this; you only have to define these CCs as 14 bit controllers with MSB and LSB and edit the respective values. The other CCs only use the regular CC resolution of 127 steps. For some parameters this is less than the internal range or equal but it is absolutely sufficient regarding the control range.
In that case, direct NRPN will not work -- the value encoding is different.

Originally Posted by edology View Post
The controller numbers are:

Parameter Controller No. Range
Cutoff Left MSB* 16 0..3 MSB
Cutoff Left LSB 17 0..127
Cutoff Right MSB* 18 0..3 MSB
Cutoff Right LSB 19 0..127
You should be able to do this relatively easily with a CCGen module and some BinaryOp modules. I'll sketch out what to do here, just let me know if you need more detail:

- Setup a CCGen to send CCs 16 and 17. Set scaling for both 'voices' to "No Scaling".
- Set ModSequencer to generate values in the range 0 to 1.
- To generate the MSB value for CC 16, use a BinaryOp module to scale the ModSeq CV by 3 --- so 0 to 1 in the mod seq will generate 0 to 3 on CC 16.
- To generate the LSB you will need two BinaryOp: One to multiply the ModSeq CV value by 381 (i.e. 3 times 127), then feed that into a second UnaryOp set to "Int Modulo" with Input B set to 127.

That should get you close -- I recommend using the MIDI Monitor from to verify the outputs.

Reply With Quote