Davinci Resolve with Arturia Beatstep

Hi,

thanks for the project and following informations. Today I have no chance to test it, I wil do this at the weekend.

The problem you discribe is similar to my behavior. I think that one important point is, that you have to place the mouse pointer not on the field, but close to it. Because I use a 4k display, I choose a position of around 50px left from the field. I expirence is, that the change of knobs sometimes results in a double click so that the current parameter will be reseted. So I have to gamble with the delays of mourse release, positioning and press (again). An other import thing is the feeling when you turn a knob an the change to another … it have to feel … good - if you know what I mean.

Tnaks for your support
Stef

1 Like

I haven’t experienced this, but then again I don’t have a 4K monitor.
It is also important that you do not bump another control while the mouse is in drag mode. You can do this by using a global variable to disable all other controls so that the mouse movement is not affected by them. With that said, I’m not sure if this is the problem, however.

Steve Caldwell
Bome Customer Care


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

Hi and thanx 4 the replies,
@Stefbert Yes, the problems U’re talking about are the same as mine. I’m going to write down a sort of resumè to let @SteveC fully understand these issues we’re facing and help us (I hope):

  1. often the rotating of a knob results in a double click (and not, as ususal, toturn the wheel to the right or to the right) so that the current parameter will be reseted. So I have to gamble with the delays of mouse release, positioning and press (again). This happens when I’m on a knob independently from bumping another control, but I’m wondering if I can decrease the timing after I’ve dragged… maybe in this way this issue can be solved in a certain way? If U could help with the file I’m attaching, maybe also using global variables, it would be great… programming is a little bit out of my understanding… :slight_smile:
    note: this problem I’m talking about is really annoying 'cause it happens when I watch the reference monitor and not the cursor, and I find out of this issue watching the cursor (corresponding on a double click instead of dragging) so I’ve to rotate another knob to coming back to the dragging… this means I can trust too much not seeing the cursor and its behaviour, so it’s too much time consuming, the opposite of my (our) needs using this wonderful software;

  2. is there a chance to use the vertical sliders dragging up and down instead of dragging the wheel right or left (I guess the main problem here is that the cursor has to be not relative while dragging coming back in a neutral central position but it has to be exactly where I’m dragging the slider: can U help us master Steve?

  3. Stef writes: “An other import thing is the feeling when you turn a knob an the change to another … it have to feel … good - if you know what I mean” - Actually rotating a knob itself it never has a precise behaviour, so sometimes is too fast, other times too slow or jumps to extreme values I’ve to reset… and same thing turning on the other knobs - I tries different values combination but it doesn’t work good.

  4. I can’t find out how to use the main knob controlling the timeline, it only has control or nrpn modes, and never let me control anything.

I’m attaching a file in which there is also the dragging wheels tabs, so it’s the more clean it could be to let U (I really hope) to help me (Us).
RESOLVE_2021_BMT_june.bmtp (13.2 KB)

On Item 1, after reviewing further, if you are getting a double click, it is likely that you stop moving the knob for more than 1/4 of a second which will result in a mouse up. Either that or since you have multiple click up timers, you should be able to disable all but one. Leave translator 1.4 enabled and disable 1.9, 1.14 and 1.19. There is no need to have 3 of them as they all do the same thing.

Then set up an unused global variable for the click up delay and then change the delay timer of 1.3, 1.8, 1.13 and 1.18 to that global variable. Then you can alter the value of the new global variable and change the click up delay of all of the translators.

On item 2, it is best to not try and drag a slider as you never know the exact position to move the mouse to drag it. Your initial mouse position is very important.

On Item 3, there might be a setting on the Beatstep to not use acceleration on your knobs which will make the knob behavior more predictable. If there is not a setting for this then it might require playing with the rules of the drag translators to even out the movement behavior. This would take some experimentation.

On item 4, I’m not sure if the main knob is programmable, I would need to check. If it sends NRPN, we might be able to convert it to relative movements for mouse. I have to break out my Beatstep and the manual to find out.

I’ll break out my Beatstep a bit later today and let you know.

Steve Caldwell
Bome Customer Care


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

Thanx a lot dear Steve,
About disabling 1.9,1.14 and 1.19, I thought everyone control their click on the difference wheels…
U wrote: “Then set up an unused global variable for the click up delay and then change the delay timer of 1.3, 1.8, 1.13 and 1.18 to that global variable. Then you can alter the value of the new global variable and change the click up delay of all of the translators.”
Could U translate it a little more for a primitive man like I am? :slight_smile: if U could give me an example, Master.
Thank U a lot and thanx for the other tips.
best

Set your big knob to Relative# 1 like you have the others and it should work for you.

Set your Knob Acceleration to Slow and that should make the knob movements more predicable.

Steve Caldwell
Bome Customer Care


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

I’m not sure which global variables you are using in your project and which you are not. You will need to figure that out. See this video on best practices that should help you keep track of your used global variables.

Assuming you are not using ha, using the videos above as a guide, set it up with a value of 250.
Then instead of 250 ms delay in the click up translators 1,2,1.8 and 1,18, enter ha instead of 250.

Once that is done, any time you want to change the click-up delay, all you have to do is change the value of ha and restart the project and then the timer will use the new value in all of those translators.

Steve Caldwell
Bome Customer Care


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

So here is my current version. One difference is that I change between the different page within davinci via keystrokes and, because I’m visual oriented, I keep eye on the visual feedback thru the pad colors.

I try to organize the functions close to the implemation from Tachyon. So I analysed the video (https://posttools.tachyon-consulting.com/davinci-resolve-controllers/beatstep-resolve-edition/?v=3a52f3c22ed6) and learn about how he solves the handling of the beatstep with DaVinci resolve … most ideas are good, a few can be optimized.

Within my implementation, which is stil under construction and far away from beeing ready, you first have to rund the init sequence were I send some commands to the beatstep to have access to the function keys and be able to use all three colors. The init sequence will be started currently via a key command Ctrl+alt+shift+i … on a windows keyboard.

You can change between the pages with shift and pad 1 to 7 … the options are shown in magenta the current page is red. Well if you just start, there will be no current page. Actually I only begin to realize the color page and there only the primary wheels.

Import is that you have an extern midi loopback, because the color functions are handelt by note On command, send to a virtual channel, loop back (I use loopMIDI, an external programm) and then the note On command will be handelt by preset 8 LED Group Handler. The note command is just a trigger, the color information are transmitted via global variables.

The color page will be handeld by to presets … 3 and 4 …

Below are my settings for the BeatStep device …


Needed requisties:
loopMIDI … create with this tool an additional MIDI-Device, named ‘loopMIDI Port’, to use within BMTP
Arturia BeatStep Setup
Pad 1 : Note G#1 (20, 0x14), Gate, Global → Set LED 2C
Pad 2 : Note A1 (21, 0x15), Gate, Global → Set LED 2D
Pad 3 : Note A#1 (22, 0x16), Gate, Global → Set LED 2E
Pad 4 : Note B1 (23, 0x17), Gate, Global → Set LED 2F
Pad 5 : Note C2 (24, 0x18), Gate, Global → Set LED 30
Pad 6 : Note C#2 (25, 0x19), Gate, Global → Set LED 31
Pad 7 : Note D2 (26, 0x1a), Gate, Global → Set LED 32
Pad 8 : Note D#2 (27, 0x1b), Gate, Global → Set LED 33
Pad 9 : Note C1 (12, 0x0c), Gate, Global → Set LED 24
Pad 10 : Note C#1 (13, 0x0d), Gate, Global → Set LED 25
Pad 11 : Note D1 (14, 0x0e), Gate, Global → Set LED 26
Pad 12 : Note D#1 (15, 0x0f), Gate, Global → Set LED 27
Pad 13 : Note E#1 (16, 0x10), Gate, Global → Set LED 28
Pad 14 : Note F1 (17, 0x11), Gate, Global → Set LED 29
Pad 15 : Note F#1 (18, 0x12), Gate, Global → Set LED 2A
Pad 16 : Note G1 (19, 0x13), Gate, Global → Set LED 2B


Knob 1 : CC 1 , Rel 1 , Global
Knob 2 : CC 2 , Rel 1 , Global
Knob 3 : CC 3 , Rel 1 , Global
Knob 4 : CC 4 , Rel 1 , Global
Knob 5 : CC 5 , Rel 1 , Global
Knob 6 : CC 6 , Rel 1 , Global
Knob 7 : CC 7 , Rel 1 , Global
Knob 8 : CC 8 , Rel 1 , Global
Knob 9 : CC 9 , Rel 1 , Global
Knob 10 : CC 10 , Rel 1 , Global
Knob 11 : CC 11 , Rel 1 , Global
Knob 12 : CC 12 , Rel 1 , Global
Knob 13 : CC 13 , Rel 1 , Global
Knob 14 : CC 14 , Rel 1 , Global
Knob 15 : CC 15 , Rel 1 , Global
Knob 16 : CC 16 , Rel 1 , Global
Knob 17 : CC 0 , Rel 1 , Global

Stop : MMC Stop
Play : MMC Eject

Sequencer Editor … all disabled
USer Scale … all disabled

Controller:
Knob Accelerator = Fast (Slow(off), Medium, Fast)
Pad Velocity Curve = Full (Linear, Logarithmic, Exponential, Full)

Performance Data:
no special settings

Sequencer Data:
Step Size = 1/16
Pattern Length = 1

StefDavinciResolve4kv2.bmtp (47.4 KB)

thanx a lot ! :heart:

Hi Stef, I’m going to take a look on your file.
(I arranged the buttons for the different tabs too, faaar away to be complete… infact I found out the configuration did work for me on the color page and that’s was enough 4 me… Time to make a better job :slight_smile: )
all the best

@Stefbert
You should not be using LoopMIDI Port for both input and output. Unlike MT Pro Virtual Ports, LoopMIDI ports are really pipes so using the same port name for both input and output could cause MIDI loops and hang your project.

Steve Caldwell
Bome Customer Care


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

@Steve … of course this could be come a problem, but I still use it for the special function. So if I don’t mess with this, this should be a legal an elegant option in my opinion.

OK, just be careful and never Loop the same LoopMIDI out port back to LoopMIDI in, or if you do, be sure to block the loop after it comes back in.

Steve Caldwell
Bome Customer Care


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

Hello @Stefbert,

thank you for sharing your davinci preset. Could you explain more in detail how i could set the active LEDs on the beatstep. When I run the init sequence, nothing happens. I’m on a mac…

I figured it out by myself with the raw midi messages, but i’m struggling to use red and magenta colors. they only flash up and don’t stay on…

Help would be appreciated…

Hallo Andrej,

it’s a couple of month ago that I have worked on that project.If I remember there where two bits used to select the color. The Pads include one blue (bit 4 [0x10]) and one red led[bit 0 [0x01].

Here is a MIDI-raw-Sequenuce for pad 1
qq = 112
pp = 0x00 … off
pp = 0x01 … red
pp = 0x10 … blue
pp = 0x11 … magenta

F0 00 20 6B 7F 42 02 00 10 pp qq F7

Maybe the assignment of the bit-pattern and the color are in the wrong order, but I think that you can imagine the way hiw it works.

I hope that this will help you
Stef

Thank you Stef!

my problem is when I press the same key, that I want to use the LED for (example incoming MIDI for note 20, 1pad), then I can only use the blue color. when i set pp to red or magenta, the button just flashes. if i set the incoming note to another pad, it works and pad1 stays red…

Hello Andrej,

I think I undersand your problem … but … I have no solution for this. The only idear I’ve gor ist to use the Note-Off event to set the color you want to have to. For this you have to store the LED state that you want to show … I use a varaible for this, where 2 bits represent one of each LED-States …

Maybe you know this link, it was very helpfull for me:

Sorry that I hav’nt any solution for you
Stef

I just saw the above post. Interesting. Right now I have not been able to get any LED behavior but I’m sure I need to reassign some controls on my beatstep. The publisher did mention that he could only get one color to work, however.

Steve Caldwell
Bome Customer Care


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

A post was split to a new topic: Controlling Davinci Resolve with AkaiPro MPD218