The Action blocks in Reactions already use try and except statements. If a block causes an error, there is a message which is displayed in the css log. It includes the Action block number and Reaction name which has errored. Also the error message. This usually prevents scripts from disappearing and allows debugging.
If you’re using custom code then you could use a “try…except…” statement to catch errors, so that they won’t fail the entire script. @css_devs: would it be possible to implement these “try…except…” statements natively in all Reactions? For example with a general print to CSS’s log of the error’s details and a mention of what […]
I have gotten to the core of the issue. when something in any reaction fails, the whole script silently fails and no longer appears in the ableton drop down. is there a way to debug reactions? (the map level out of range error probably came from manually editing json) Cheers, Theo
Another small update: str_for_value() needs to be called with a number between 0 and 1. E.g. 0.5 would give the label for the value of that specific parameter. By scaling the incoming cc velocity data, I get there. My little Launchkey screen now shows me all the info I want.
Small update: I found the solution to the screen flickering. I was calling the wrong target with the sysex code. Should be 21 for knob 1, 22 for 2, etc… self._send_midi((240, 0, 32, 41, 2, 19, 4, 21, 2, 247)) self._send_midi((240, 0, 32, 41, 2, 19, 6, 21, 0) + tuple(Device.encode(“ascii”)) + (247,)) self._send_midi((240, 0, […]
Although Live’s API does provide a way to a load an item from the browser via a midi remote script: Unfortunately it doesn’t provide a way to access the selected browser item. In the above code example item should be a browser tree item in a format like this: Ableton Push and other controllers which […]
Thank you for putting in the time and the energy Glenn. Much appreciated. You took it much further than I intended it to. I’ll experiment with it this weekend and see how far I get. I hope you got something out of it too ;;-)
I don’t know how much this will help you with the conversion to Hz, but here’s my attempt (did some searching). In Python ** means ‘exponent’, so everything inside parentheses after the 2 stars is the exponent of that 10 before the stars. Any number to the exponent of 0 (the lowest value for the exponent […]
Here’s my own Mode Changing Mappings that I made in the past and had saved. These still import correctly on my computer. You can try it out and see if it works. The increment Mapping seems to be set just like you described in your first post. If it does work on your computer, then […]
I’m guessing you’ll need a condition (“if” statement) that checks if the current midi message is from the same source as the last message. for the Hz, I’m not sure how it’s calculated. If it’s linear, then you could simply multiply the value with the max. Hz amount; but my guess is it will be […]