I’d like to try A as a set of most often used controls which should be enough to cover 90% of my editing and B to work with your new system. I look forward to the merge.
I guess then next step would be a mini display next to the controller with the names of the dials!
have a look at lua-scripts/examples/x-touch.lua at master · darktable-org/lua-scripts · GitHub
I’m using a modified version in combination with shortcuts to change the scope for the knobs
x-touchMS.zip (3.4 KB)
You can use A/B already. The problem I found is that there is no feedback which tab in a tabbed module that is active, i.e. you end up with one tab active in the GUI but the board is controlling the hidden one. To solve this I used the “ordered names” (1st, 2nd…) and rely on the tabbing itself, but the name list is not big enough nowadays and ends at 9th. So I increased the list to make sure I can use the feature in modules like AgX and Color Balance RGB where there are more than nine inputs.
The mapping I did is Layer A controls top half of the sliders, Layer B runs the bottom half.
The knobs (and keys) have different names in Layer B so you can map out whatever you like in both layers, unfortunately switching layers is a “dead input” and we can’t use A/B to trigger code.
Hello everyone,
Sorry for my ignorance about these controllers…
Could the X-Touch Mini work, together with darktable, on Windows (e.g. W11 version)?
I am asking this question because I suppose most of you run darktable on Linux or Mac ![]()
For instance, I suppose the just mentioned lua script, on github, might work fine on Windows 11 (but I am not a developer to tell…).
As a plus side, compared to the loupedeck controller, the Behringer X-Touch Mini is less pricey.
Yes, Midi boards works just fine in Windows. The Lua scripts run within Darktable and you don’t need any other scripting environment for that.
I will add my script to the community Lua library and it will be available for everyone, maybe even during the coming weekend.
Hello @lomo
Thanks a lot indeed for your reply (and for your work on this feature).
Darktable will be even more powerful ![]()
For those who are not afraid of a little DIY, or spend some more on a prebuilt, you could always grab a few keyboard switches and one or more rotary encoders, a controller, and use QMK or ZMK (depending on controller and whether you’d want it wireless) to build a very custom macropad. Heck, if you have a keyboard that uses one of the two, you can already do that.
QMK and ZMK, for the uninitiated, is custom keyboard firmware that allows you to completely customise how they keyboard works, which keypresses (and layers, chords, combos, tap dances, whatnot) result in what actual keycodes are sent to the computer. With something like Vial (for QMK) or ZMK studio (for ZMK, obviously), you can do that on the fly.
It’s how people make small or supersmall keyboards work for them. I’ve been using 34-key split keyboards for the last couple of years and I’m never moving back.
OK here you go.
IF you are running Darktable from source, the small but important PR to get all sliders under control is merged, make sure to pull the latest source and rebuild.
If you are running latest/weekly built installed DT, the change is merged for 5.4 so a pre-build within a few days or a week should have the changes.
If you are using an older version or are waiting for a proper release of 5.4, you can still run the script but you will not have access to all sliders as intended.
@dterrahe, you might be interested in this too.
Hello,
Here is an initial development of my thinking on organizing the MIDI controller mapping for AGX. Blender AgX in darktable (proof of concept) - #2257 by g-man
As I am not yet familiar with the Lua script, it only uses Darktable shortcuts, combining selectors and buttons for sliders or the mouse to activate presets.
I have changed two slider names:
Lum. Shift = pivot input shift
Middle Grey = Pivot target output
The downside of this mapping is that it generally uses both layers A and B for the color equalizer sliders, which is frustrating if I forget to switch back to layer A…
It’s far from perfect, but it can help spark an idea. Here are the shortcuts, the cover, and the presets.
20251024.zip (110.1 KB)
I’ve seen that with the Lua script, we can map the buttons to make them dynamic so that they react with a selector. Now I just have to learn the Lua language :-).
Thank you very much, I will try it and also try to understand the script.
Greetings from Brussels,
Christian
Here’s a one handed and cross eyed demo of my setup. Mostly to show how I mapped both layers (A and B) to fully extend to all sliders in the big modules.
I also have two buttons dedicated for tabbing where tabs are available.
Usually I edit one or a few images in a set and then copy/paste the settings to all other files. Then I run through them and fine adjust.
It is quite surprising how fast one gets used to the midi board and how much time is saved per photo.
