UAD LUNA Fader Movement "option + mouse wheel"

Hello, just purchased MT Pro and first post in this forum. Really impressed with the level of support offered here!

I have successfully programmed the first fader on my Axiom49 to adjust any desired fader in Universal Audio’s DAW LUNA. This is traditionally done in LUNA by hovering the cursor over the fader, holding option and scrolling the mouse wheel up or down. Now with the help of Bome MT Pro, as long as I hover my cursor over the fader I would like to change my Axiom49 fader sends a key down for ‘option’ while simultaneously triggers the scroll wheel. A timer included as well to key up ‘option’ after the Axiom49 fader stops moving.

My question is the speed at which I move the fader on my Axiom49 appears to affect the distance the fader travels in LUNA. Somewhat counter intuitively if I over the fader quickly on my Axiom49 the fader in LUNA only moves a short distance but if I move the fader on my axiom It will travel to the limits of the faders parameters in LUNA. I’ve also noticed that when moving my Axiom49 fader slowly I reach the limits of the fader in LUNA before I reach the limits of the fader on my Axiom49.

I suppose I have two questions. Firstly, is it possible to have a the fader movement on my Axiom49 more accurately match the movement in LUNA? And secondly, it is possible for the limits of my fader in LUNA (negative infinity and +12 db) to match the limits of my Axiom49 (0-127)?

Attached is a copy of the program I have for this function currently.

Thank you!

LUNA Fader Movement “option + mouse wheel”.bmtp (1.9 KB)

Hi,

My guess is your fader on your Axium is skipping values if you move it too fast and since you are not looking at the value number change and always moving + or - 25. That is the crux of the issue.

So it might be better to calculate the change in value and then set a repeating timer to move by x on each iteration.

I’ll send you and example later.

Steve Caldwell
Bome Customer Care


Also available for paid consulting services: bome@sniz.biz

Thanks for the reply Steve!

My apologies, the example I attached had value number changing at +/-25 however I just added those while experimenting. I originally had those values at +/-1 but with the same result. Appreciate you taking the time to look at this.

Here you go.

I actually have 2 presets since I’m on a Windows System and you are on Mac.

If you activate one preset, it will deactivate the other. I use Shift instead of Option and I use CC0 instead of 73 which I also change when using different presets.
I also added a preset to initialize all global variables used when either starting the project or hitting the ESC key.

In the LUNA presets

  • The first translator sets the target CC number
  • The second translator de-activates the other preset
  • The third translator sets the timeout for releasing the key.
  • The forth translator presses the Option (or in my case Shift) key
  • The fifth translator calculations the number of iterations for the timer and starts it.
  • The sixth translator is the timer and sends mouse movement
  • Then finally the seventh translator sends releases the Option (or in my case Shift) key if no knob movement in the timeout period.

Here are the global variables used all in the Init Preset under the translator titled “Initialize Global Variables”

// Fader Busy
ga=0
// Fader1 Last position
gb=0
// value to move mouse for each timer iteration
gd=1

// how fast to iterate timer in ms
ge=10

// direction
gf=0

// Fader 1 CC number
// client uses 73
g0=73




// Debug
// 0 is execute only
// 1 is log and execute
// 2 is log only
zz=1

There are a few things to consider here.

Since you are using the same CC to move multiple faders, they may not be in the right position as you move from one to another. I capture the last known position in global variable gb, but that doesn’t help if you move to another fader since it will likely be wrong (at least for the first iteration).

Since it is only scrolling 1 ever iteration, it is possible that you will hit an end stop on one of the faders before it has moved all the way. A few ways to solve this is

  1. Create a button to re-center the physical fader on you controller. The button could deactivate the preset thereby note sending any keystrokes or mouse movements until you get it in the right position
  2. Move the fader more per iteration. You may not get a much precision if you do this, however.

Let me know how it goes.
LUNA Fader Movement _option + mouse wheel-sjc.bmtp (6.3 KB)

Steve Caldwell
Bome Customer Care


Also available for paid consulting services: bome@sniz.biz

Greatly appreciate you taking the time to have a look at this Steve! Upon my first attempt I haven’t seen a response in LUNA but I feel I need to get my head around some of the concepts and terminology here before I can determine where the issues might be. I’m going to dive into the MT user manual and see if I can’t bring myself up to speed and will be back with an update.

I have dove into the tutorial videos an see some incedible applications of MT Pro by some of it’s users. Was especially impressed by this video:

Unfortunately I am still not able to see any results in the log window or in LUNA when I move my fader for CC73. After a couple days and several attempts to understand this I still can’t seem to wrap my head around it. Conceptually I feel I can grasp what each translation is doing but I am getting lost in the rules and confused by both local and global variables. Is there a resource I could review to help me understand this more clearly?

For example in the rules for the third translation for Midi CC to Scroll Wheel Set Timeout there is the local variable zz.


if zz>0 then Log "Log Busy Done Start"
//if zz>1 then exit rules, skip Outgoing Action

Am I correct to assuming that this translation is monitoring for my fader to have stopped movement for 250ms and if detects no movement that it will send the time Busy Done and key up "option".  I noticed that zz was defined in the Init Preset as zz=1 but I am having trouble understanding how those relate to each other.

Thank you!

Anything with “//” at the beginning of a line is a comment.

I use zz primarily for controlling whether to execute the translator display a log entry or do both. This is called out in the Init Preset in Initialize global variables. The key here is if zz is 2 then all you will see are Log entries and nothing will happen.

// Debug
// 0 is execute only
// 1 is log and execute
// 2 is log only
zz=1

If it is not working, the best you can do is enable the log window and check the Incoming, MIDI In, MIDI OUT and Outgoing boxes, try to move the fader, and the copy and paste the log results into a text file so I can have a closer look at what is happening.

I have a short demo here with what I tested it with on Voicemeeter Potato.

Steve Caldwell
Bome Customer Care


Also available for paid consulting services: bome@sniz.biz

Thank you again for having a look at this with me Steve!

Unfortunately in the log widow I don’t see anything in the Log Window when I move CC73 Fader 1, though I do see in the event window the Midi In light is flashing when I move the Fader.

You may have the wrong device selected. Go to the MIDI Menu then Edit Project Port aliases and make sure your input is assigned correctly.

Then when opening the Log Window check the MIDI IN box. If you don’t see anything, ether you have another application that is holding the MIDI port open or you have chosen the wrong MIDI port.

You can also look at the MIDI Input port on the right side to see if it show open.

Steve Caldwell
Bome Customer Care


Also available for paid consulting services: bome@sniz.biz

Thank you! Here’s what I get when I move Fader1 cc73 on my Axiom.

1: MIDI IN [Axiom 49 Axiom USB In]: B0 49 03
2: MIDI IN [Axiom 49 Axiom USB In]: B0 49 05
3: MIDI IN [Axiom 49 Axiom USB In]: B0 49 06
4: MIDI IN [Axiom 49 Axiom USB In]: B0 49 07
5: MIDI IN [Axiom 49 Axiom USB In]: B0 49 09
6: MIDI IN [Axiom 49 Axiom USB In]: B0 49 0A
7: MIDI IN [Axiom 49 Axiom USB In]: B0 49 0B
8: MIDI IN [Axiom 49 Axiom USB In]: B0 49 0C
9: MIDI IN [Axiom 49 Axiom USB In]: B0 49 0D
10: MIDI IN [Axiom 49 Axiom USB In]: B0 49 0E
11: MIDI IN [Axiom 49 Axiom USB In]: B0 49 0F
12: MIDI IN [Axiom 49 Axiom USB In]: B0 49 11
13: MIDI IN [Axiom 49 Axiom USB In]: B0 49 12
14: MIDI IN [Axiom 49 Axiom USB In]: B0 49 13
15: MIDI IN [Axiom 49 Axiom USB In]: B0 49 14
16: MIDI IN [Axiom 49 Axiom USB In]: B0 49 16
17: MIDI IN [Axiom 49 Axiom USB In]: B0 49 17
18: MIDI IN [Axiom 49 Axiom USB In]: B0 49 18
19: MIDI IN [Axiom 49 Axiom USB In]: B0 49 1A
20: MIDI IN [Axiom 49 Axiom USB In]: B0 49 1B
21: MIDI IN [Axiom 49 Axiom USB In]: B0 49 1C
22: MIDI IN [Axiom 49 Axiom USB In]: B0 49 1E
23: MIDI IN [Axiom 49 Axiom USB In]: B0 49 20
24: MIDI IN [Axiom 49 Axiom USB In]: B0 49 21
25: MIDI IN [Axiom 49 Axiom USB In]: B0 49 23
26: MIDI IN [Axiom 49 Axiom USB In]: B0 49 26
27: MIDI IN [Axiom 49 Axiom USB In]: B0 49 28
28: MIDI IN [Axiom 49 Axiom USB In]: B0 49 2B
29: MIDI IN [Axiom 49 Axiom USB In]: B0 49 2D
30: MIDI IN [Axiom 49 Axiom USB In]: B0 49 30
31: MIDI IN [Axiom 49 Axiom USB In]: B0 49 32
32: MIDI IN [Axiom 49 Axiom USB In]: B0 49 35
33: MIDI IN [Axiom 49 Axiom USB In]: B0 49 37
34: MIDI IN [Axiom 49 Axiom USB In]: B0 49 3A
35: MIDI IN [Axiom 49 Axiom USB In]: B0 49 3D
36: MIDI IN [Axiom 49 Axiom USB In]: B0 49 40
37: MIDI IN [Axiom 49 Axiom USB In]: B0 49 43
38: MIDI IN [Axiom 49 Axiom USB In]: B0 49 47
39: MIDI IN [Axiom 49 Axiom USB In]: B0 49 4B
40: MIDI IN [Axiom 49 Axiom USB In]: B0 49 4E
41: MIDI IN [Axiom 49 Axiom USB In]: B0 49 51
42: MIDI IN [Axiom 49 Axiom USB In]: B0 49 54
43: MIDI IN [Axiom 49 Axiom USB In]: B0 49 57
44: MIDI IN [Axiom 49 Axiom USB In]: B0 49 5B
45: MIDI IN [Axiom 49 Axiom USB In]: B0 49 60
46: MIDI IN [Axiom 49 Axiom USB In]: B0 49 64
47: MIDI IN [Axiom 49 Axiom USB In]: B0 49 68
48: MIDI IN [Axiom 49 Axiom USB In]: B0 49 6C
49: MIDI IN [Axiom 49 Axiom USB In]: B0 49 70
50: MIDI IN [Axiom 49 Axiom USB In]: B0 49 74
51: MIDI IN [Axiom 49 Axiom USB In]: B0 49 78
52: MIDI IN [Axiom 49 Axiom USB In]: B0 49 7D
53: MIDI IN [Axiom 49 Axiom USB In]: B0 49 7F

Can you show me how your aliases are set up?

Sure can. Does this look correct?

Uncheck Axiom 49 Axiom USB in but leave My Controller Checked which points the same physical port. Having them both checked will have double incoming messages

For output, you don’t need anything checked since you are sending mouse actions and no MIDI.

image

image

image

The problem is, that the translator is looking at both ports and all you should have selected is the alias.

Steve Caldwell
Bome Customer Care


Also available for paid consulting services: bome@sniz.biz