🔥 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.

Disappointed about CSS

Submitted by Simsonatic on Sat, 03/09/2019 - 17:58
Pro User
Control Surface Studio User

After purchasing it a couple of weeks ago, i finally got some time to test it and now I´m disappointed.

The App is still using the ConfigurableButtonElement from the Launchpad Scriptfolder, that causes all the LED´s to litt on after exiting Live because the Launchpad Script is using value 4 instead of 0 for off_value and reset.

Also the new reactions Stuff is a pain! When using the step by step guide 1:1, the configured buttons wont work anymore.
After inspecting the code, i got some LED´s to run [Listener: ButtonX; Conditions: The LOM function, 1.entry field empty, ==, input, 2. entry field 1 for on, 0 for off; Reactions: ButtonX .send_value, (), input, values for on and off].
But not all LOM functions work this way, the Play button for example.
But the best for last. After I made some LED´s work as they should, i found out, that there is no bidirectional communication between Live and the CSS Script. When i push buttons on the controller, the LED´s light up and switch off, but when i use the mouse or keyboard shortcuts in Live, nothing happens to the leds on the controller and that´s pretty poor...

Topic Category: 

10 Responses


Pro User

By the way for those who want LED feedback for Track Mute, Solo & Arm:

Listener: [ButtonX]
Conditions: [view]; [.selected_track.arm]; [==]; [input]; [1]
Reactions: [ButtonX]; [.send_value]; [()]; [input]; [127 or on value]

Listener: [ButtonX]
Conditions: [view]; [.selected_track.solo]; [==]; [input]; [1]
Reactions: [ButtonX]; [.send_value]; [()]; [input]; [127 or on value]

Listener: [ButtonX]
Conditions: [view]; [.selected_track.mute]; [==]; [input]; [0]
Reactions: [ButtonX]; [.send_value]; [()]; [input]; [127 or on value]

for the off reactions just switch the [1] to [0] and [127] to off values.
The mute Led is vice versa [0] for on value [1] for off

Pro User

Hi Simsonatic!
I hear you I had similar problems to yours. What I figure it out is that you have to make your controller to listen to changes in Ableton.
So ... after you set up a specific button to a mute on/off function... check the attached picture - based on your tips above I manage to make it work.

Pro User

I think though that "0" is value for ON and "1" for OFF

Pro User

Ok, thanks danicroitor.
Now it works.

Pro User

But the system is still :(
When i create reactions like creating or deleting tracks, they only work when the Button/Pad i want to use, has another function like metronome aso and even than, it creates or deletes two tracks, because my buttons are momentary. But if i try adding a condition like .value == 127 nothing works anymore.

Forum Admin

I understand your frustrations and you are correct that you have to add another function (i.e. metronome).

Reactions were originally designed to simply 'react' to existing functions in scripts and send LED feedback.
This is why a button/pad needs to have a 'proper' mapping, as they technically don't exist on a mode without one.

When we created Reactions we had no idea how they would be used, they're very open ended compared to other aspects of the App.
But we are of course taking everyone's feedback on board to help us develop these further and will look into the issues you have raised regarding '.value' not working and needing to have another mapping (as I already mentioned).

Pro User

open ended seems to be the problem.
I like the idea of the css with the controller manager, but not the way your code work. including that open type of reactions.
After getting a Pro user, i studied a lot of your code and the way other companys wrote their scripts and managed it to create my own scripts, based on the web app script, but with additional functions, in an easy way, by creating some children scripts containing most of the LOM functions and my own version of the ConfigurableButtonElements.
Everytime i build a new script, i just need to create a new main (parent) script with modes and or shifts and link the buttons, faders, knobs, i want to use, to the functions, i need, in the children scripts and it never causes any error logs, because i have debugged every function of the children in advance.

Wouldn´t it be a better idea for the css to work in a similar way? creating children scripts just once, containing the LOM functions in the way they need to be written, and just link the controlls with the app to create the main (parent) script?

In my opinion, that would be much more user friendly and maybe also more programmer friendly?

Pro User

@Simsonatic, that sounds like an awesome idea! That will solve indeed lots of questions we have because we don't know coding.

Control Surface Studio User

Css, a code free universally compatable midi script builder for all midi devices, takes 15 minutes to set up device*

*Requires high coding skill level for use with pitch-bend, expression control, aftertouch, most endless encoders, 14-bit midi cc, sys-ex, most led feedback, any lcd or led displays, MPE, or unusual application. Projects may take many hours, weeks or months to complete, and many users find it an extremely steep learning curve and need to read the extremely long user manual to make start. A lot of solutions require the use of code like "reactions" or in may cases inline python snippets, for example to read relative encoders with acceleration requires inline python, and to read pitch bend requires direct editing of python script inside Ableton package.

Control Surface Studio User

Can someone give a hint on how to actually read pitch bend?

Since I struggle to get support for this I'd be down to direct editing of the python script!...