Struggling to make button to send on/off sysex in specific bit

Hi all. Still learning the Electra One that arrived last week. I’m trying to achieve this:

I have a Pad that looks like this:

And the Sysex looks like this (for the Aftertouch on/off listed in the sysex spec - it’s on Bit 6):

The problem is, when I toggle the button on/off, I get the exact same sysex message:

So it seems like the On Value in the Button inspector is being used (value = 40) but the Off Value is not. I’m sure it’s pilot error. Any help appreciated!

Is the Pad that is sending the message called “Self”?

image

A possible explanation could be that the linked parameter that you are using belongs to different control. I think this could happen if you copy&pasted the Pad.

An easy way to check is to take a look at the JSON tab and see if the parameterNumber matches. If not, you can make an adjustment directly in the JSON editor or use the visual editor to link the required parameter and remove the other one.

Of course, it may be a wrong assumption. But I just tested to create a new pad like that from scratch and it worked fine for me.

Aha! You were right, the parameterNumber in the JSON did not match the Parameter number in the inspector. I did know they were supposed to match, but I overlooked it in this case.

One must always manually change the JSON, if the Parameter number in the inspector is changed. Is that correct?

Yes, that is correct. There is nothing that would automatically update the message definition. I agree It would make life easier.

One thing crossed my mind now, your message will turn the Aftertouch on and off. It will also reset other bits to zero. ie. pressing the pad will affect portamento, volume, etc. If you wanted to have this done correctly, the pad must link all other parameters that are used in given sysex byte and set their bits accordingly. Kind of like you did with the “Self” parameter.

I think it’s ok. Each one has its own pad. They share the same sysex string, other than the Bit used, but use a unique Parameter ID. They seem to be working independently and correctly that way.

Thanks for all the help!

1 Like