馃敟 Lifetime deal! Get Control Surface Studio for Just 拢67 馃憠 Click Here To Get It
Time left... mailtimers.com
鈿狅笍 Lifetime licenses are ending soon, get yours before they're gone 鈿狅笍
Your shopping cart is empty.

How do we get Relative control working?

Submitted by Ant贸nio Malheiro on Tue, 05/09/2023 - 19:29
Ant贸nio Malheiro
Control Surface Studio User

I already posted a post and for some reason it didn't post.

Topic Category: 

7 Responses

Comments

Ant贸nio Malheiro
Control Surface Studio User
#1

I can get my relative #2 knobs working in CSS but I can't get one to control the mode selection via scroll, can anyone help please?

JohnC
Forum Admin
#2

Hi Antonio, do you have the 'left' and 'right' midi velocity settings and steps (ie 127) set correctly for the input?

Ant贸nio Malheiro
Control Surface Studio User
#3

I have the knobs working with Relative 2 correctly when switching modes, with Left:127 Right:1 and Steps:127. For some reason changing modes with Relative doesn't work with Left:127 Right:1 and Steps:127. I think the log.txt. gave me an error. ChatGPT said something about it.

I'm trying to make a Reaction work now since I gave up on the previous task. I might ask for some help regarding it. Thanks for responding!

Ant贸nio Malheiro
Control Surface Studio User
#4

And then Absolute stopped working to change the modes for some reason which was really odd. Regardless knob acceleration would be very good to work on CSS. I was trying to re-edit a script that does that with GPT but to no avail.
I am just trying now and gonna keep simple and trying to scroll the view through certain devices equal "every 3 CC" with a Reaction. I'm watching the video.

HDV
Control Surface Studio User
#5

Hi,

you mentioned "Relatve #2" so i guess you use an Arturia Controller, right?

Try the Python code below (keep attention to correct indentation) in a reaction (listener "encoder 1" MIDI Channel 7, CC 20)
A step size ist stored In global modifier "m20", with fixed step sizes 1,2,3,4 or 8 and dynamic behaviour (knob acceleration) is set by m20 = 0
The index of the device which parameters you want to change is stored in "m18".

# step size
step = self.get_modifier_value("m20")
# instrument device index
idi = self.get_modifier_value("m18")
# update device parameter 1
# get value of encoder 1
c = self.midi_cc_ch_7_val_20.cur_val
# get values of device parameter 1
a = self.song().view.selected_track.devices[idi].parameters[1].value
# encoder right (with overflow handling)
if c < 8:
if step == 0:
s = c
else:
s = step
a = min(127,a+s)
# encoder left (with underflow handling)
elif c > 121:
if step == 0:
s = c
else:
s = 128 - step
a = max(0,a-128+s)
# update device parameter 1
self.song().view.selected_track.devices[idi].parameters[1].value = a

My experience with Arturia Controllers is, that the encoders wear out relatively fast. So the behaviour is not very reliable, there are lots of jumps in the CC values

Dieter

HDV
Control Surface Studio User
#6

Sorry, the upload destroyed identation.
See attached text file.

upload files: 
Ant贸nio Malheiro
Control Surface Studio User
#7

Thanks so much, Dieter!! I will give a check. Yes, I am using an Arturia beatstep.