The Arturia Microfreak can transmit and receive MIDI Control Change messages (CC#9) for the Oscillator Type.
The Microfreak sends a single value for each Oscillator Type, but can receive/recognize a range of numbers for each Type.
Issues with this:
Vocoder is last in the order of the Type, but it has a value 81
SuperWave, Bass, SawX, Harm, WaveUser, Sample, Scan Grain, Cloud Grains, Hit Grains, Vocoder all recognize values whose ranges do not include the value transmitted.
For example Superwave sends a value of 11, but receives and recognizes values from 12 to 16.
Oscillator Transmitted Received Status
Type Min Max
BasicWaves 5 0 11 In Range
SuperWave 11 12 16 Out of Range
Wavetable 17 16 22 In Range
Harmo 23 23 27 In Range
KarplusStr 29 28 33 In Range
V.Analog 34 34 38 In Range
Waveshaper 40 39 44 In Range
Two Op. FM 46 45 49 In Range
Formant 52 50 55 In Range
Chords 58 56 60 In Range
Speech 64 61 66 In Range
Modal 69 67 71 In Range
Noise 75 72 77 In Range
Bass 87 78 82 Out of Range
SawX 93 83 88 Out of Range
Harm 98 89 93 Out of Range
WaveUser 104 94 99 Out of Range
Sample 110 100 104 Out of Range
Scan Grains 116 105 110 Out of Range
Cloud Grains 122 111 115 Out of Range
Hit Grains 127 116 121 Out of Range
Vocoder 81 122 127 Out of Range
Fixing this would involve:
- reindexing the Vocoder value to be last on the list.
- checking that the received/recognized values are at least in range of the transmitted values.
Maybe while you are at it, take a look at if we could have MIDI control of the Modulation Matrix and all those buttons that don’t have MIDI controls assigned to them.