Dynamic Knobs with changed Channel

MikeDoor

2019-10-12 16:50:49

Hey,

first of all wanted to thank you, for create this amazing Forum. I could learn so much Things from you guys. But in one thing I have a big Problem yet,

I have programmed a "MIDImix" with Channel Changes. My "Rec arm" Notes are Channels. If I touch "Rec arm 1" get Channel "1" "Rec arm 2" get Channel "2" and so on (till now without lights going on, but this is another Problem ^^)

Now my question, is there a way to make channel 2 remember the Position of the value (where I turned the knob to) as I switch to another channel? And then only react to the knob when I reach the value it had before I switched the channel.

Example: Channel "1" knob is on "Value 20" Channel "2" same knob is on "Value 100" If I Change the Channel "1" to Channel "2" the knob goes automaticly to "Value 20" when I touch it. But wanted the reaction first on reaching "Value 100" and than go up or down to another Value. The same on Channel "1" if I had the last Value "20" but coming from Channel "2" from the "Value 100" my Knob goes after touch it directly to "Value 100"

Hope you can understand what I mean ^^

Steve-Bome Forum Moderator

2019-10-12 21:39:05

Hi,

What I believe you are talking about is a technique called “takeover” or “crossover”.  The behavior you would want is when changing channels you want to suppress the outgoing knob messages until it crosses its last known value for that channel.  In order to achieve this, you will need to capture the value of each knob on each channel into global variables. Then when switching channels, and processing the new input value for that channel,  suppress outgoing MIDI messages from that knob until it crosses the last known value captured.

The attached project does this. I’m using a Novation Launch Control XL which is similar to a MIDI Mix.

I use the global variable ga to match the crossover point for my 1st knob on MIDI Channel 1.
I use the global variable gb to match the crossover point for my first knob (the same physical knob) on MIDI channel 9
I use the global variable g0 to match the currently used MIDI channel.
I use the global variable g1 as a flag to suppress the output. Any time I change channels I set this value to a 1 as indicated in the translator called “Channel Switch”. There I compare the incoming channel to the last known channel and if they are different I set the flag.

The knob translators function as follows.
When you turn a knob and the suppress flag (g1) is 0, then the processing is handled normally as you have not switched channels.
If the value of g1=1 then we are suppressing output until you have reached the crossover point for the knob on that channel as determined by comparing the incoming value to the crossover point.
When the incoming value matches that of the crossover point, then the value of g1 is set back to 0 and processing again is handled normally.
Any time we process the value (not suppressed) we change the crossover point (ga for CH1 and gb for CH9) for that channel.

If you don’t switch channels, everything happens normally, however any time you switch channels we now look at the crossover (takeup) point as described above.

You will need to do this for every knob you want to control this way, each with it’s own global variable.

Steve Caldwell
Bome Q and A Moderator and
Independent Bome Consultant/Specialist
bome@sniz.biz


Attachments:

Channel-Switch-Takeup-2019-10-12.bmtp

MikeDoor

2019-10-13 00:48:09

Hey,

Yes, you`re right! This is so genius! Thank you so much for make it real.

It will take much time, but when I am finish, I think that would be make very much fun.

I appreciate this program and this forum so much.

 

with Kind regards

Mike

MikeDoor

2019-10-13 00:48:49

comment

Hey,

Yes, you`re right! This is so genius! Thank you so much for make it real.
It will take much time, but when I am finish, I think that would be make very much fun.
I appreciate this program and this forum so much.

with Kind regards
Mike

MikeDoor

2019-10-13 19:59:12

Hey,

 

have a Problem with making the channel to your script.

If I paste your takeup to my project, I can`t run this template. If I Change a channel, my both linked knobs scrolls parallely together with my “physicaly Knob”

 

I didn`t can find the false script.

Could you help me with one example on my Project please?

Better would be for two channels, where I can find the difference to make the program.

You can find your “Takeup-Project”

on the “Project side”

and than one of them on Template – “Channel2”

and one of them on Template – “Channel3”

Some commands:

If you touch CC:3 – you deactivate every Channel

If you touch CC:6 – you activate Channel 2

If you touch CC:9 – you activate Channel 3

If you touch CC:12 – you activate Channel 4

If you touch CC:15  – you activate Channel 5

If you touch CC:18 – you activate Channel 6

 

Thanks a lot.

 

Kind regards

Mike


Attachments:

ChannelChange-Value.bmtp

Steve-Bome Forum Moderator

2019-10-13 21:59:33

Hi, it looks like you are 90% there.  Instead of looking for value on 127 on each CC incoming action, set them to “any value” and then it should work.

 

Steve

 

 

Steve-Bome Forum Moderator

2019-10-13 22:02:09

FYI, I did this on the first translator. Easier to use the MIDI menu and change them all from raw values to Simple MIDI first then do the edits.

 

 


Attachments:

ChannelChange-Value.bmtp

MikeDoor

2019-10-14 12:39:09

Hey.

 

first of all thank you for making me easier way with the simple midi control.

 

Now I have the same problem, if I come from channel 2 to 3 and from channel 3 to 2, both linked knobs going parallel together. Equal if they stand on channel 2 or channel 3. I can`t understand why they go parallel.

After that I checked two seperate variables on the value from them and don`t run too. They go parallel again.

In your example template, I could run 2 linked knobs with 1 physical knob without problems. They ran seperate from their channel correctly, how it should.

But if I control two seperate channels in the translator or Project they don`t run so.

 

Steve-Bome Forum Moderator

2019-10-14 13:59:43

comment

Any knob that is the same physical knob for more than one channel will need to have a DIFFERENT global variable assigned for EACH channel you want to control that physical knob. I haven’t looked at your project file but I suspect that is the issue. If you post your latest with the fixes you already applied I can do one more knob for you. After that, it is up to you or you can reach out to me via email for paid services. Free services is her to help Bome users learn and coach with occasional examples. Thanks, Mike! Steve Caldwell Bome Q and A Moderator and Independent Bome Consultant/Specialist bome@sniz.biz

MikeDoor

2019-10-14 14:43:07

Hey,

thank you so much for give me the info. I try to understand this way, but I really can`t find the mistake in the commands I did.

I have applied it on “Channel2” and on “Channel3”.

Set the different variables for the values on the knobs. But it didn`t accept at all.

Let`s try the last info maybe I can understand you now.

Kind regards

Mike


Attachments:

Channel-Switch-Takeup-Test.bmtp

Steve-Bome Forum Moderator

2019-10-14 15:40:14

comment

Hi, I’m not quite understanding what you are doing. Does you MIDIMIX send on different channels when switching channels or does it always send the same thing and you want MT Pro to switch channels to the DAW with the same knob?

The example I sent you, the same physical knob sends different MIDI information depending on the channel I switch on my Launch Control XL although the position stays the same. I’m not sure why you are trying to do a channel switch within MT Pro. I think I need a better explanation on what your MIDIMIX is sending and how you want to control it.

I Did notice that you used the same variables ga and gb on you channel 3 translators as with channel 2 translators. Is your definition of channel really the DAW “tracks” and not MIDI Channel?

Steve-Bome Forum Moderator

2019-10-14 15:50:02

comment

global variables are ga-gz, g0-g9 through na-nz, n0-n9 and ya-yz, y0-y9 and za-zz, z0-z9 and are visible everywhere local variables are oo,pp,qq,rr,ss,tt,uu,vv,ww,xx and are visible only within a given incoming trigger you can keep the same local variables for each translator but need to change the global variable for each unique knob and channel. Please press F1 or help and look through the user manual.

MikeDoor

2019-10-14 21:01:47

Hey,

I think I have confused you a little bit. Sorry for that.

I wanna do 3 Things with the MT pro.

1. Change Channels with the switcher like you see in my project and I wrote an example in the first answer. (I have solved this thing and runs to 100% perfect)

2. After changing channels coming back to the last saved knob value. (You explained it with “crossover” or “Takeover”)
Example:
If I touch my note  from my MIDImix “Nb2” I come to channel 2 (you can see in the Picture below)
The knob 1 I put to “value 20”
Now I touch “Nb3” come to channel 3, put the same physicaly knob to “value 100”
If I go back to channel2 with touch the “Nb2” I wanna the react of knob 1 first on reaching value 20. (Like the “crossover” or “takeover” technique I think?

My Problem is, I can`t bring this to run perfect and don`t understand where I have to bring the global variable. It would be amazing to make an example on my project, to resolve this poblem.
I have learned some good things about the program, but don`t find for this a resolution.

(3. Thing is to bring the notes Nb1 till Nb8 to light on/off, if they in use/not in use, but this is another problem yet)

Kind regards
Mike


Attachments:

MIDImix.jpg

Steve-Bome Forum Moderator

2019-10-15 01:22:29

comment

So you are trying to do the same with knob 2 and 3 as we did with knob one? You want to use the Nb1-Nb8 buttons to change channels instead? Does the MIDIMIX support multiple channels for the same knob or is Knob1 for instance always the same and you want Bome MIDI translator to do the channel switch as well?

Lets focus on number 2 for now.

Say Knob1 natively sends CC60 on MIDI channel 1. Without MT pro, is there a way to get the same knob to send CC60 on MIDI channel 2 or does it always send CC60 on MIDI channel 1 and you want MT Pro to make it CC60 on MIDI channel 2 instead.

Do the NB1 buttons actual change MIDI channels on the MIDIMIX or just send the same MIDI messages.

I guess I’m trying to figure out the capability of your MIDIMIX in contrast to my Novation Launch Control XL which can natively switch MIDI channels and can have knobs programmed to send different values on 16 different MIDI channels.

My guess is the the MIDIMIX controls always send the same information and have no local capabilities to actually change output channels and that you are wanting MT Pro to do this for you so that instead of having 24 knobs on one channel, you can have 24 knobs on 8 channels and you want MT Pro to uniquely modify their output.

Steve Caldwell
Bome Q and A Moderator and
Independent Bome Consultant/Specialist
bome@sniz.biz

Steve-Bome Forum Moderator

2019-10-15 01:50:22

comment

Also, I suggest different threads for each issue you are trying to solve. It should make it easier later for other users to find what they are looking for instead of weeding through a really long thread.

MikeDoor

2019-10-15 12:48:17

comment

Hey,

Yeah! I have checked up my MIDImix and with your example template “Channel-Switch-Takeup”
My MIDImix could use variable Values with the same knob on other channels. (like takeover, dynamic range value)

But in my project with Channel switch, it can`t run this and don`t understand why.
Maybe the problem is that I used the same global variable for the “knob1” on channel2 and channel3.

Another fact is, if I don`t use MT pro, I only can be on this channel, where I edited on the Editor from MIDImix.
I can`t switch between the channels with a note/knob or whatever without MT pro or without the Editor from AKAI.

If I use MT pro, I made it clearly and fast to change the channels in between. (using my switcher template from my project)

Yeah! I want with MT pro and my MIDImix use – 8Channels with 24 different knobs and 9 different Fader
to use, instantly with uniquely modify their output. (I have mastered this one, but without the dynamic range of value per knob and channel)

So we come to 33 different values per channel. We would have 264 commands and variables for the value. With dynamic range values from each channel and each knob/fader.

The Nb1 button do for now, deactivate every switcher/channel in my MT pro project. Like beeing the standard saved preset from MIDImix channel (I could change it only in the MIDImix Editor from AKAI).
Normally it should be the command for the “Solo” button on the MIDImix on the right side. But the “SOLO” button has a insert programmed “SHIFT-Key-Mode” for the “MUTE” line and I don`t know, how to block this till now, for doing this process what the “Nb1” command does.

MIDImix has on the right side some buttons called, “Bank left”, “Bank right”, “Send all”.
These buttons didn`t run correctly. So they can be used for MT pro, too. To program for a better thing.

I`ll be with you, to seperate the threads. If you think we have to other threads for this problem. Maybe specific it with MIDImix?

kind regards
Mike

Steve-Bome Forum Moderator

2019-10-15 17:29:24

Hi, so if I understand correctly.

MIDI Mix natively sends 24 CC (knobs) and 9 CC (faders) only or 33 MIDI values.

You want to expand this to allow for 33 x 16 or 528 values. You want take up on all of these as you switch channels.

You want to change channels with first 16 buttons (under knobs). The other buttons for other purposes (including bank left and right).

I suggest you use factory defaults for all knobs and faders (see screen shot below).

You want to update LED’s on the buttons to signify which MIDI channel is currently selected. I would need to know how the LED’s are controlled natively by MIDI Mix. Also whether the buttons are toggle or momentary.

Just to let you know Bome has a total of 360 global variables available so if you need more than that, we would have to use a special technique called “bit stuffing” so that we could load a single global variable (MT variables are 32 bits) with the value of up to 4 CCs (4 7 bit values).

I can provide example (without bit stuffing) of a few notes and channels using the change preset technique you are looking for. The technique I provided originally did not implement this through preset change.  Without bit stuffing you could only control 10 MIDI channels.

For a complete solution (paid services), reach out to me in email for a quotation.

For free example as described, open a new thread with appropriate tags.  For complete solution, send me email.

 

Steve Caldwell
Bome Q and A Moderator and
Independent Bome Consultant/Specialist
bome@sniz.biz

 


Attachments:

midi-mix-default.png

MikeDoor

2019-10-15 20:03:15

comment

Hey.

Yes! You have understand everything correct. I thought, it would be easier with a few channel switches. Don`t know about the limitation about 360 variables.
But if would be the possibility to show a few knobs and channel example with your special technique for the whole value mapping (called bit stuffing) with the 528 variables, would be amazing.

With the lights on/off, I would make a complete new thread.
(The thing on the lights is, if I use them on MT pro, DAW etc, nothing happens on them, if I check up them on the midi monitor software called “MIDIox” and press then the buttons, the light goes on and stay all the time on. Only can make them off to disconnect from the USB and connect again)
You will get a screenshot in the other thread which I will be open.

Normally I need maybe 8 channels. But it would be great for mapping all 16 channels, that`s why I ask and please you for this example on the next thread.
You can see the updated picture from my editor how it runs at my manual actually for best working I think.

The focus which I think, is in 2 categories:

1. on the channel switch with the knobs/fader with different values, which go independent from each other after changing the channel, (using the takeover technique)

2. bringing the lights on/off if they in use/ not in use

thank you so much for taking your time for this confusing question, we hopefully solved now 🙂
kind regards
Mike