Sending note off and note on with a pushbutton, notevalue determined by encoder

3 posts / 0 new
Last post
GVE's picture
Sending note off and note on with a pushbutton, notevalue determined by encoder


I would like to be able to send a noteoff/ noteon message with a pushbutton

What i mean is 

I defined an encoder and a pushbutten as CC 3   to get their values synchronized  first

The encoder is defined as follows
$encoder 7
  .easypar CC 9 3 0 127 inc/dec
  .showvalue on
  .mode 1dot
  .resolution 30 30 30 30
  .default 64
  .tx $98 val $64

It sends noteon for the chosen notevalue 
I want to define a pushbutton that sends a noteon of that same value

When i define the pushbutton as increment +1 or -1 it sends noteon of the value +1 or -1 :-)
So almost what i have to have, except for the wrong notevalue 
So in fact i would need a increment 0 (wich is not allowed) 

Is there a way around this? 

Thnx for answering 

Warm regards


Mark van den Berg
Mark van den Berg's picture

My understanding of the situation is as follows (correct me if I'm wrong):

Typically a button's Value toggles between the button's Value1 and Value2 parameters, which are fixed values, set in the button's BCL definition.
However, in a ".easypar" CC, NRPN or AT definition that includes the "increment" parameter, Value can become any value between Value1 and Value2.

What you've been trying to do here is very clever:
You're using what BC MIDI Implementation.pdf (section 14.9) calls "value synchronization" to change an increment button's Value from an encoder.
Furthermore, you've defined a ".tx" statement including "val", so that whenever the user presses the button, Value is sent as the Note parameter of a Note On message.

However, the problem is that pressing the button still triggers its "increment" behavior, so that Value "drifts" from the value set from the encoder.

I've tried various tricks, but so far I haven't found a way to circumvent this behavior.
That doesn't mean it's impossible, but at least it'll be tricky...
Maybe the BCF/BCR's firmware could be hacked so that an increment of 0 becomes allowed...

By the way, I hadn't realized that an encoder set up with ".easypar CC ... inc/dec" (which anomalously doesn't output any MIDI) still functions in terms of value synchronization. In section 16.3 of BC MIDI Implementation.pdf I simply called such an encoder "dysfunctional", but I'll amend that statement. So thanks for indirectly bringing this to my attention!


P.S.: Thanks very much for your donation!

GVE's picture

Thnx for the answer...

It's too bad one cannot make simple formula's with val (for ex val+1 )
But anyways, i also keep searching for solutions.. it's not a 1st world prob ofcourse :-)

Warm regards