Bc2000 (for the BCF2000 & BCR2000) group photo

Yahoo Groups archive

Bc2000 (for the BCF2000 & BCR2000)

Index last updated: 2026-04-28 23:16 UTC

Message

Packed parameters

2015-05-14 by rpcfender@...

Forgive me if we have already been over this, but I keep getting asked about multiple parameters in one data byte of a sysex message.

This occurs in both early synths and in some Novation synths and perhaps in other places.


This is a rehash of an answer I gave on Mark's forum.


I need to use BCL (Behringer Control Language - Mark's BC manual explains all) so those who don't want to partake in this sort of nonsense feel free to move on to the next subject. My feelings won't be hurt.



The BC responds to value feedback, but only if you program the control with the easy method, that is easypar
$encoder 1
.easypar CC 01 117 0 127 absolute


If a 117 CC on channel 1 comes into the BC, encoder 1's value will change to that value comming in

If you also have
$button 1
.easypar CC 01 117 127 0
increment 1 ;Note max and min bytes are swapped for increment

encoder 1 and button 1 will be in lock step ie turn encoder 1 and button 1's value will change as well. And vice versa.

You are able to add a .tx statement to an easypar and the BC will transmit both the easypar value and the tx
$encoder 1
.easypar CC 01 117 0 127 absolute
.tx $F0 $42 $10 00 00 val $F7
; made up sysex message

$button 1
.easypar CC 01 117 127 0 increment 1
.tx $F0 $42 $10 00 00 val $F7
; made up sysex message

Turning encoder 1 or pressing button 1 will output a CC117 on channel 1 and a sysex message.

Example... you have a packed parameter byte of bit5 and 6 for Osc 1 Octave and bits 0 to 4 are Osc 1 coarse tuning

value = 0oot tttt

$encoder 1 ; Coarse tuning
.easypar CC 01 117 0 127 absolute
.tx $F0 $42 $10 00 00 val $F7
; made up sysex message

$button 1 ; Octave
.easypar CC 01 117 127 0 increment $20 ; steping by $20 counts through the top bits
.tx $F0 $42 $10 00 00 val $F7 ; made up sysex message

The big problem is range.
Although the Coarse tuning wil always be OK, as you go past it's max you will increment the Octave.
Similarly when you go below 0 the Octave will be decremented.

Also there are problems if the range of the value is less than the bits allowed.
For example if the Coarse tuning control had a range of 0 to 24, you still need 5 bits, but 5 bits has the range 0 to 31

The result is not predictable. I just give it a shot and see what happens.


All the best
Royce


Attachments

Move to quarantaine

This moves the raw source file on disk only. The archive index is not changed automatically, so you still need to run a manual refresh afterward.