some of you may remember how I started writing tutorials to ease the pain in the beginning when even changing the name of a generic controller script needed scripting.
My working with Bitwig was all about bringing about some changes to areas that I saw as showstoppers for many people in 1.0, like external hardware support, PDC improvements, midi improvements and, last not least, many changes to the controller API.
One of the first things I envisioned was a controller configurator, be it integrated or as an external software, where you have visual controls that you can place similar to your controllers layout, set parameters and options for them, learn their CCs, create pages and also define buttons to switch through those pages...
This was a bit too ambitious for 1.0.x, although I still hope we will see something like this at one point in the future, either from the devs at Bitwig or from a 3rd party developer.
What I was able to help bringing about is the preferences that now are part of the API and allow controller scripts to have their own settings in both the preferences dialogue (global) and/or in the I/O panel (per document).
One of my test-cases for this was a script that allows to midi-learn knobs and buttons so that at least a certain amount of "slightly advanced" usage is possible in a generic way without scripting.
It turned out that the preferences as they are now are not the optimal way to go about something like this, but I still wanted to create this script as a kind of "proof of concept":
For the community to think about/test, for other scripters to maybe get some inspiration and for the devs at Bitwig to hopefully get an idea how to do it (much) better in the future.
So after all this introduction, here's the script:
https://github.com/ThomasHelzle/Toms-Mi ... Controller
Check the readme on Github to get an idea what it does and what it doesn't do.
Maybe it is useful to some of you, even with all the limitations.
Happy holidays and Cheers!
Tom
