Hello,
I’m working on a preset for the Roland Juno 106. Obviously, it involves a bit of Sysex. I have no problem with the faders, the syntax is easy, but regarding the switches I don’t get how to deal with them. I would appreciate some help about the bottom part of the Juno 106 midi chart: “3.4 Parameter Number Table / * for switches”
I tried a list with values for the “range” for instance (see the TEST ZONE group) , but without success. I’m fairly a noob with the Electra one… How do you understand this part of the chart, and how would deal with it?
I gave a quick look to your preset. Your solution won’t work.
It is causing the other values to change as well, but not based on their own values. Each time you change one of the bits of byte 16, you must reconstruct the whole byte 16 based on the individually settings and send them as one byte.
A way to make it work : create 4 virtual controls:
option list “chorus” has three values (1= off, 2 = chorus 1, 0 = chorus 2)
In the function you read the value of each of the 4 controls, using the parametermap, and you sum them together after having multiplied them decenty and according to their bit value in byte 16: range * 1 + pulse * 8 + saw * 16 + chorus * 32
Be also aware in your sysex you gave to the faders, you have hardcoded the MIDI channel. You may regret this. If you happen to change the MIDI channel of your Juno 106, your Juno will no longer listen to your E1.
It’s better to create a function ‘getmidiChannel’ that returns the desired MIDI channel. And then add that function inside your sysEx instead of the harcoded “1”
Also, you gave VCF ENV a range from -127 to 127, which implies 255 steps, whereas in reality there are only 128 steps.
The range to set will be one of these:
- 64 to + 63
or
- 63 to + 63
Usually it’s the first one, but a little experimenting can’t hurt
Last but not least, I would set some of the default values differently:
set your filter open or almost open (value 127 or 100)
the same with VCA level
set attack, decay and release to approx 32
set sustain to approx 64
It’ll give you a better starting position as long as you haven’t applied sysEx parsing.