define cc value output from specific value ranges

Hello, I am trying to define a set number of zones (lets say 4, for example) within a cc message that each trigger a discrete value to be output.
For example, cc12 values 0-31=cc12 value 16, cc12 values 32-63=cc12 value 48, cc12 values 63-95= value 72, cc12 value 96-127=cc12 value 104.
My goal is to be able to sweep through 4 definable values using an expression pedal to change arpeggiator clock division values (driven by an external clock) in real time as I play, with the ability to turn it off and on via midi. Ideally, a bome box would serve as the arpeggiator as well but I would be happy simply controlling the clock division of an external arp via cc in this way.
I currently have cobbled together 4 different max for live devices to achieve this but it is a cumbersome solution. I have tried to program this in bome midi translator pro before without much success. Perhaps someone can help me translate my idea to a bmt preset or point me in the direction of a more elegant solution to achieve the same goal? If this turns out well I will run this on a bome box but at the moment I am using the app.

Hi and welcome to the Bome community!

Probably the simples way to do this is with 4 translators, each looking at different range.
See the attached project file. I use rules to control the ranges and the global variable ga as the output value. I assume that as you hit each range you don’t want to send the cc value more than once so I added a rule so that it will only send once within a given range.

For testing I have my aliases set up as follows. You will need to point to your own devices/applications with these aliases.


You can learn more about aliases from this tutorial.
cc-ranges-example.bmtp (2.4 KB)

Steve Caldwell
Bome Customer Care

Also available for paid consulting services: