X-Touch scribble strips?

Has anyone managed to get the coloured scribble strips working on the Behringer X-touch? I know this isn’t supported by MCP, but I wondered whether anyone had managed to do some clever stuff with LUA scripting?

There are three or four models of x-touch. Of the three, x-touch that most closely matches the mackie control seems also to have the least documentation. Do you know of any software that actually uses the full function of the scribble strips? The 6 char monochrome use should work now. The colour use would need some documentation and someone with the time and inclination to add it. (and probably an x-touch to play with) The full size x-touch is a nice looking box. If it could be made to do more than it does now that would be nice. So far as I know there are no midi commands to change the colour or use more than the two lines of 6 char. I will note that the documentation for the x-touch compact seems much more comprehensive and the controller itself is much more flexible.

Thanks for your reply. I was actually being precise with my language, though I realise that’s not necessarily obvious from the way the things are named! I have an X-touch, as opposed to an X-touch Compact or X-touch Extender. (The X-touch Mini doesn’t have scribble strips and the X-touch One has a scribble strip in the singular.)

I don’t know of any software that uses the functionality, but they apparently do work when hooked up to an X-Air XR18 mixer or X32 mixer. I can’t help feeling that the pre-release publicity was a bit disingenuous in pushing the colour etc of the scribble strips when this isn’t supported by MCP, which I’m sure is how the majority will be used.

There is someone who has reverse-engineered the Xctl language that the X-touch and X-Air or X32 use to communicate. The colour/text information is sent using Sysex strings. The findings are documented here:

…with threads on the Behringer forum about it here (one which mentions Ardour – perhaps it could steal a march on other DAWs in supporting the functionality?!):

There’s also a forum thread on the Behringer/Music Tribe site where someone mentions sending a sysex string to change the background colour of one of the strips:

And from that thread it seems that Behringer eventually documented the format of the sysex strings in the Extender manual (p25):

A couple of days ago (after my initial posting) I tried sending a couple of sysex strings (the example in the first PDF and the example from the thread about the Extender mentioned just above) but without success. My X-touch is hooked up by MIDI not midi-over-usb.

It didn’t work when I tried the hybrid Xctl/MCP mode (which isn’t an option over usb anyway): initially the faders moved on loading an Ardour session, but the scribble strips were blank (no text at all), the rotary encoders lit up but not correctly, then after a short interval the faders went to the bottom and the left hand strip displayed the “no MIDI” message.

When using just MCP, I had the X-touch hooked up to an Ardour session as well as Sysexxer, in the hope that Ardour and the X-touch would be regularly pinging each other in order to keep the “needy baby” X-touch happy! But perhaps this over-rode the sysex string I was trying to send to change the scribble strip colour.

The X-touch is a lovely thing and very useful, it’s greatly improved my workflow with Ardour. I use track colour as an aid in my Ardour mixing sessions and it would be great to have this reflected on the X-touch as well.

I don’t have the ability to help with this in any way, but I do have a full-size X-touch and would be happy to help with testing if anyone were able to look into this.

I took a look at this document. Basically, in order to use colours at all the device has to be removed from Mackie Control mode. So this means an entirely new controller module would need to be created for the X-touch. It would not be possible to do this by adding a patch to the MC code. Aside from that, there are only 7 colours, not even enough for one per strip. That seems pretty limiting, there is no way of just using Ardour’s strip colour for example. About the only thing I can think of is to use the colours for strip types:

  • audio track
  • midi track
  • audio&midi track
  • audio bus
  • midi bus
  • audio&midi bus
  • feedback bus
  • VCA
    Oh, we ran out…
    I also wonder if having different colours on the control surface than in the GUI might be confusing.

Anyway, maybe add a feature request to the tracker. However, do note that anyone likely to work on something for this would be someone who owns one. So long as it does as much in MC mode as an MC does, that is already pretty good. If it fails at that, the bug report should go to manufacture (if it fails to be MC compatible).

I am surprised that the x-air network link with the X-touch (x32 as well) is not an OSC link. I know the x32 is OSC controllable and I think the X-air is as well. OSC is higher resolution by default, allowing 32 bit floats and ints.

Another note is that the original MC does not have specific uses for most of the right side (we call it global) basically anything that is not strip related is meant to be DAW specific and the MC came with templates that changed the name of each button depending on which DAW it was meant to be used with. So the button names on the X-touch, if they match the MC are Logic specific. Does the X-touch come with templates (actually maybe they are called “overlays”) for some different DAWs? Or is there an application to print them? Ardour is highly configurable in this respect with a GUI to set up what each button does.

Aw, crap. So it’s not possible to run in MCP mode and send colour information?

I was thinking that it would be great to have it mirroring the track colours from Ardour – I hadn’t realised the colour palette was so limited. That’s rather rubbish as well! I guess it’s down to the firmware rather than a limitation of the screens themselves, given that there’s RGB so conceivably it should have quite a broad palette.

I’ve seen the suggestion somewhere at sometime that doing as you suggest for different track types would be useful, which I think would be useful though I do see your point about possible colour confusion. And perhaps it’s a solution looking for a problem given that you can display only audio tracks, only midi tracks, all tracks etc anyway.

I’ll bear that in mind re development, but will try to add a request to the tracker when I get chance.

As it is, the X-touch is a brilliant thing and has already considerably improved my workflow and there’s so much more I could do in terms of mapping shortcuts to buttons. But more is, well… more!

It seems like you’re familiar with the Mackie, could you answer a few queries from someone who’s never used one and is baffled by the user manual for both the X-touch and the MCU?!

What’s the “name/value &display” button supposed to do by default or was it never assigned to anything?

I notice the Inst encoder assign button on the X-touch was called Instrument on the Mackie, yet the display on the X-touch suggests this is for a compressor or similar (“no dynamics in selected track/bus”): is mapping it to dynamics processing something Behringer has done or did the Mackie do that by default? It would be useful if it did pop up the virtual instrument inserted on a track but I guess there’s probably no way for Ardour to reliably know whether or not a plugin on a given track is an instrument or not.

Does the Plug-in button do anything on the MCU? Again, even if it just popped up the editor window for an inserted plugin would be useful, especially if you could select which plugin (1st, 2nd… nth) using one of the encoders, but that’s probably way outside MCP. Mmm, I think I’ve just thought of a way to control any plugin using the rotaries though there are probably countless ways in which it would be unfeasible (but I digress…).

The Flip button doesn’t seem to do anything on the X-touch, is it the same on the Mackie?

What exactly is the Scrub button supposed to do, if anything? It doesn’t appear to do anything on the X-touch.

Should the Solo button (under Transport) light up when one or more tracks/busses is solo’d? I thought it used to, but it doesn’t seem to now (though it functions in cancelling solo’d tracks just fine).

Presumably the function of the Enter button varies depending on the DAW being used? In Ardour it seems to select all tracks, not sure how useful that is…

I don’t recall the X-touch coming with overlays or templates. It might’ve done, but my expectation would have been that they wouldn’t’ve been any use to me as there wouldn’t be one for Ardour! It would be good if there were an application to print one – as I mentioned in the other X-touch thread, I’d set up more buttons than I had remembered. And I absolutely agree, Ardour’s configurability, both generally and specifically for setting up what the buttons can do, is brilliant :slight_smile:

:slight_smile: Well actually, my “Mackie Control” looks like:http://www.ovenwerks.net/hardware/3dollarcontrolsurface.html
It is only 5 strips plus master. The Mackie control uses the same MIDI as the Logic Control which predated the various Makcie Controls (though it and the HUI which is even older were also made by Mackie). So all the labels are related to the Logic DAW. That is why the overlays were developed so that each DAW could have custom name plates.

The name/value button is supposed to switch the display from the name of what it controls to the value of what it controls. In Ardour’s case, the name of the control is displayed until the control is moved when it starts displaying the value of the control until it stops moving (plus a small timeout) So the name/value is free to set to some other function.

That is the way it was set up in Ardour (and is also used on some other DAW overlays as well). Actually Instrument is not that hard to detect, there is an is_instrument() function for that already (not sure of the exact function name) which basically looks for the plugin with MIDI in and audio out.

Not at this time. The Mackie Control code is on hold pretty much at this time because everyone is working on other things. I am mostly working on OSC stuff … err actually Foldback monitoring GUI and functionality which started on OSC but has since moved to the GUI… so I am slowly learning to code GUI. The problem with plugins (and instruments) is that they have many more than 8 parameters (this is also a problem with the mixbus32c eq I think) and require paging the controls. While not impossible, it will mean reworking some of the present code to make it happen. WHen my list of things to do in OSC is caught up, I may revisit generic midi and the MCP code… if someone doesn’t beat me to it.

The flip button should flip the encoders and the faders so that whatever the fader controlled is controlled by the encoder and whatever the encoder controlled is controlled by the fader. (A mouthful) The main use is to use the high resolution faders to make fine adjustments on things like send levels or even pan.

I don’t know. I don’t know even in Logic what it is supposed to do. I would guess turn on and off if sound is played when speed does not equal 1.0.

I would think so, I think my display did: http://www.ovenwerks.net/software/mcpdisp.html (my $3 dollar controller needed that)

The original idea is that it did the same as the enter key on the computer keyboard. I don’t know what Ardour does with it, but it should be context dependent.

The buttons on the Xtouch look both smaller and closer together. A label printer would work just fine though… look for something that will print white on black. Though, I have seen someone do Black on Yellow on a Mackie…

Thanks, I appreciate that, it’s really helpful.

I’ve been digging around a bit more… am I correct that there are things that you can set keyboard shortcuts for but which you can’t bind to a control surface?

The specific things I have in mind are the options on the Processor Menu (i.e. the context menu in the mixer processor boxes) – after numerous careful attempts, I can’t find them on any of the binding menus for the control protocol settings. I think it would be easier to look through the massive list of possible bindings if they were organised into the same categories that the keyboard bindings use (global, editor, mixer… processor box).

To be fair, being able to assign keyboard shortcuts is really helpful, though it’d be great to be able to e.g. pop-up the gui editor window for a selected plugin using the X-touch.

There are a couple of things in the Preferences that would be great if you could bind as well: the “metronome only sounds when recording” would be useful to be able to toggle and also the “print bindings (to your web browser)” might be handy as well, I’ve used that a lot this afternoon!

Yes, that is one area that is going through changes for V6… I am not sure if the changes will help or hinder. However, one of the actions that should work is triggering an LUA script which should give you the possibility just about any custom command. LUA does take more of an understanding of how Ardour works, but it can be learned and what I have seen of the documentation is quite good.


Forgive me if I made a mistake please.

I think my question is relevant here rather than on a new subject :wink:

If my understand is good I can assign a LUA script to a key on my xtouch ( the mcu pro like, big 1 ), is my assumption right?

I think a lua script could detect if a midi instrument is present in the selected strip ( is_instrument() ) and ifso open the gui of the plugin , am I right also ?

My goal would be to show up the gui of the instrument of the selected strip if there is one by clicking the INSTR button of my controller.

Is LUA affordable for newbies? Last time coding for me was 20 years ago and not object coding, it was raw c et basic x86/68000 assembler during my studies.

I may like to try this script but I need to know if thats feasible before cause learning a language and scripting will fast being time hungry and like everybody my time is counted ( a kid is coming home soon, have to manage sell of the house and find a new one + job :smiley: ).

I will invest this time only if this is feasible ,if so I will give it a try with you fellows help and will be happy to contribute and share my work with the fantastic commmunity !

So please let me know your thinks about that :wink:

A bientot , cheers !

People, I just figured out how to send colored scribble strips to the XTouch (both full size and extenders!) in Mackie Control mode! This eliminates the need for any software to interpret XCtl. This means you can have the best of both worlds (14 bit faders and colored scribbles) on both the full size XTouch and the Extender in regular old MC mode, and you can use it over USB or network with no extra software!!!

The colors of the entire unit are set with a single Sysex message. The message is as follows:

Full size XTouch (all scribbles red)
F0 00 00 66 14 72 01 01 01 01 01 01 01 01 F7

Extender (all scribbles red):
F0 00 00 66 15 72 01 01 01 01 01 01 01 01 F7

All Sysex messages begin with F0 and end with F7, those are not special. The first 5 bytes after the F0 (00 00 66 14 72) are required. The next 8 bytes are what set the colors of each scribble (in order from left to right), followed by F7. The colors are mapped as follows:

00 - Blank
01 - Red
02 - Green
03 - Yellow
04 - Blue
05 - Purple
06 - Cyan
07 - White

So for example, sending this message to a full size XTouch:

F0 00 00 66 14 72 00 01 02 03 04 05 06 07 F7

Would make the scribble strips blank, red, green, yellow, blue, purple, cyan, and white respectively. This in theory could be implemented in Ardour pretty easily. For this to work, you may need to be running firmware version 1.22, I am not sure. A friend and I figured this out after using OSIMidi, who seemed to have figured this out first.


Hey so I know this was a while ago, but how do you create this sysex file with this message to send to the xtouch?

This should be implemented as a Lua script for more integrated functionality. I was thinking of creating one although I currently don’t own the X-Touch. If you want to manually set the SysEx messages, I’ve created an action script utility which allows it here.