The bug with the modifier keys (tracker #6601) has been fixed.
Assign buttons don’t light any more either. (till we actually make them do something)
@pedro42: It looks like all buttons on the x-touch have lamps, is that correct? Also, the scribble strips seem to have more than 7 characters with the possibility of pictures. It seems that there is also an OSC mode. So MCP mode is probably dumb (as you said), but I think the unit has some smarts in it for other things.
Are you using USB, net or MIDI to hook it up to your computer?
@lenovens: Hi, i saw your commit, simple but good… Shift, alt… fine, encoder assignment does nothing, ok, thanks!
Buttons - all butons have LEDs except two: “display name/value” and “smpte/beats”. They are next to the timecode display. A started:
cat </dev/snd/x-touch >/dev/snd/x-touch
When i pressed a button, it started lighting and stopped lighting when i released it. No signs of “smart” behavior, 2 character display does nothing when i press encoder assign. Faders are holding position when cat is running, because computer sends back the position. When cat was not running, the fader returned back to initial position. All expected, nothing “smart”. I mean, when i run the cat utility and x-touch was not connected to Ardour.
Second LCD row - i"ve “Pan” on it and when a move the fader, it displays amplification level of the strip (from -inf to +6dB). It’s fine. I don’t understand what do you mean :13 levels" ?
I think, the buttons should do things they are designed for` yes, x-touch has complete MCP set and some surfaces haven’t. What about possibility of remapping them? Too strange, maybe.
About level meters - after my modification, it works well (for me). X-touch has 7 LEDS+clip, 4 green, 3 orange and clip is red. First orange goes up on level about -13dbFS, second orange about -6 dBFS and last orange around -3dBFS (close to clip). I think it’s good, because input during recording mustn’t clip. Recording level around -12dBFS is perfect, there is headroom enough and space for peaks. So i’m now happy with the meters (after i commented out the condition that transport must roll).
I use USB. X-touch doesn’t have IP midi, it has RTP midi. Ethernet connection can’t be used on linux yet. Maybe with future firmware. Also is not possible to change the color of LCD displays :-(. Behringer said this is because it’s not specified in MCP. Pitty.
The ethernet port is mainly intended for connection to devices like Behringer X-18, X32 (rack) etc. through proprietary Behringer’s protocol. Midi port should work. I didn’t try it.
About number of characters on the strips - yes, they looks like there is more space, but actually isn’t. I tried to comment out the shortening procedure in libs/surfaces/mackie/strips.cc, but displays don’t show more then 6 characters. I hope, Ardour doesn’t short the message outside the mentioned procedure. “iiiiii” looks like there is enough space for 7. “i”, but it’s not shown.
Remaining issue: the second row LCD shows incorrect value when fader is touched and not moved. Value is correct when fader is moving. It looks like Ardour doesn’t read the real strip amplification, but is computed as value 127 is 0dB, value 1 is -60DB and value 0 is -inf.
And - when someone who can do it and have a time, to allow control of the automation mode (Manual, Touch, Write, Play) on SELECTED strip(s). Those buttons should work as radio buttons (simillar to encoder assignments). Much thanks!
@pedro42: Your comment: “The ethernet port is mainly intended for connection to devices like Behringer X-18, X32 (rack) etc. through proprietary Behringer’s protocol.” It is not proprietary… At least I did download the document not that long ago. It is OSC and the freely downloadable x32edit and x-air-edit applications (for linux even) save everything as OSC messages in the file. So I have two sources. However, the Behringer website has been taken over by Music-group.com (the same people that own Mackie BTW) and I can no longer find the document on line. 
I am working on meters right now… well working on a meter display so I can work on meters.
timecode/barbeat does sometimes not update when moving the play head. and appears to be starting at the wrong time when play is hit. Eventually as the time gets to where the time is, it becomes correct. Then again, sometimes it just works too. Hard to reproduce consistently.
Hi Pedro,
I’ve been waiting to see about this device, One thing that I still use my BCF for is for 14bit NRPN messages for some of my external synths…
Does the X-Touch have this capability?
cheers
Allan
@pedro42: Meters. I think it may be that the X-touch does not quite follow the mackie spec. The original Logic Control doc. Says that 0 to 12 is 0% to 100% (0x0 to 0xc) and that 0xe is overload and 0xf clears overload… I would note that this means 0xd is not used. When I build a display using the spec as above, it seems that I get overload either at 0xc or one step higher (it is hard to tell). It would appear that the X-touch (with 8 LEDs) uses every second number (1,3,5,7,9,11,13,15). This is a bug in the X-touch firmware. Probably from doing reverse engineering rather than reading the spec… this is odd seeing as mackie and behringer are now owned by the same company. Anyway, Ardour’s meters seem to work to “spec”. It is best to leave them. If it is easy… I may put a config option for behringer meters 
I need to add touch to my faders (at least one anyway) so I can check that next. I have seen the problem with the time code but can not get it to happen consistently. I will have to play some more.
@allank, Looking at the (very sparse) documentation, I would suggest that the x-touch is a mackie control knock-off that does not try to have more than a few options. The X-touch compact may be more what you are looking for as it seems to promise more… however, the manual is not available for download and it seems that the edit SW is only OSx and Win, not Linux… unlike the SW for the X-32 (which does come for Linux… for now). I would suggest going to a good music store with a laptop with the daw you want to use it with as well as your Keyboard/synth when you are ready to buy and try them in the store. A “good” music store will let you do this (a good music store will take it back in a week with refund if it doesn’t do the job). I do not know if the Win midi editor will work in wine or not. I am downloading the control edit app in the hopes that the included manual will tell more.
@lenovens … thanks for that… Yep, I came to the same conclusion. I couldn’t find the software for the compact. (which is probably the better option, as I don’t have the space for the big version)… Looking to replace the BCF … due to the noisy faders e.t.c…(going a little OT here) However, I have a LIVID Base, that I got for playing around with Bitwig… and the touch faders may provided an acceptable solution for “motorised faders”
I am a controller junkie … I also have a Novation Zero SL Mkii (general purpose , but mostly for my TX-81z and fx units), and my Zed R16 also provides contoller functionality, though I’m not really using it,but having the BCF got me hooked on motorised faders. However, now this thread has me thinking about the LIVID base as an alternative, if that works I’ll probably see if someone wants to trade a BCF for a BCR as the BCR would make the perfect controller for my DSI Tetra (which is what I need the NRPN functionality for)
@pedro42: In your request: “when someone who can do it and have a time, to allow control of the automation mode (Manual, Touch, Write, Play) on SELECTED strip(s).” I think the best way to proceed with this is to add a feature request to mantis (post issue number here) In your feature request, take each button with the name on the unit (no overlay) and the expected action. I can see touch and write, but not Manual and Play. I would need the expected action to be pretty clear as I don’t do much in the way of automation. (My faders are two keys marked up and down and so no good for automation).
Any of the keys from your main fader to the right side of the unit can be set to anything you can do a keyboard shortcut for… I would not re-purpose the 4 meta keys though
So if you can find the above functions in the menu, it should be easy to add them to the surface. I do have two lines for punch in and out, but am not sure if there are two good keys to add them to (or one to toggle). I would like to have a good default profile. I think the “utility” buttons work. I would like to use expected actions if I could, but am not against the use of an overlay if it would work better for Ardour and the way it works with the GUI. My feeling is that the surface should reflect the GUI rather than the surface working like xyz Daw. (did the X-touch come with any overlays?)
I tried the X32Edit (32 bit only, hmm, i’ve pure 64b system). OK, it works in linux container with 32 libraries. I configured the network properly, but no result :-(. X-Touch offers MCP or HUI and Master and Slave mode. No OSC. I tried all 4 posibilities (Mackie Master, Mackie Slave, HUI Master, HUI Slave). When X-Touch is in master mode, i"ve to configure slave destination IP and port. On X32-edit i can configure the IP address only (if i not overlooked something). I"m not sure which port i have to set. The X32Edit listen on random port everytime a start it. OK, netstat -alnp|grep LISTEN. I saw some port, where X32 listen. This port i set on X-Touch. I sniffed the traffic by Wireshark. At the beginig, there were some ICMP packets (ping) and responses and then some data. No reaction. X32Edit does nothing, X-Touch does nothing. The X-Touch firmware is not done yet. Read this: http://forum.music-group.com/showthread.php?8316-X-Touch-User-Manual - no support for graphics or colors on LCD.
@allank: no support for 14bit NRPN (if it’s not a part of MCP or HUI, i don’t know). I don’t believe that BCF2k has 14b resolution. It’s, probably, mathematical transformation, the lowest 7 bits are alvays 0. But, maybe, i’m not right.
Automation - i think, 3 buttons have those 4 states:
Touch button - touch mode
Write button - write mode
Read/Off button - play mode (= read the previously written automation)
All three buttons off (Read/OFF) - nothing = manual mode.
The Read/Off button is currently assigned as meters on/off button.
I know the Mantis, thousands of unresolved/unassigned issues :-(, i’m not very comfortable to create another one ;-), probably latter.
It’s difficult to say what is better - to try assign buttons in simillar position as they are in the GUI or respect the command meaning. IMO is better to respect the command, because X-Touch is not the only one Mackie surface. When someone don’t feel comfortable with this, he/she can modify the behavior through profile, but, currently, it’s possible for unassigned buttons only.
X-Touch comes with one USB cable, one power cable and it’s all. No overlay(s), no manual, nothing. I bought B-Stock from Thomann, so i’m not the first owner (it’s returned article), but, i think, the first customer didn’t lost/steal it. It should be complete package.
We need to generate an MCP profile for the X-Touch. Please get in touch on how to do this. Does it use ipMIDI or regular MIDI?
Paul, do you mean device profile?
This is my device profile:
<MackieProtocolDevice>
<Name value=“X-Touch”/>
<Strips value=“8”/>
<Extenders value=“0”/>
<MasterPosition value=“0”/>
<MasterFader value=“yes”/>
<TimecodeDisplay value=“yes”/>
<TwoCharacterDisplay value=“yes”/>
<GlobalControls value=“yes”/>
<JogWheel value=“yes”/>
<TouchSenseFaders value=“yes”/>
<LogicControlButtons value=“yes”/>
<NoHandShake value=“no”/>
<HasMeters value=“yes”/>
<UsesIPMIDI value=“no”/>
</MackieProtocolDevice>
It uses regular MIDI. In setup is possible to chose USB, MIDI (cable) or network.
No other then this https://media.music-group.com/media/PLM/data/docs/P0B1X/X-TOUCH_QSG_WW.pdf documentation is available.
From the manual: … this port is an Ethernet interface for connection to a DAW supporting RTP MIDI, or remote controlling BEHRINGER digital mixer series (future implementation).
That’s a device info file. I need to add that too, but I mean a profile, which maps buttons to functionality. I am working on one for the Mackie Control Universal Pro as I write this.
OK. Currently, i don’t have any specific profile. I double checked it - X-Touch has exactly the same set of buttons as MCU Pro. Looking at the picture of MCU Pro, i see those differences (except position of the buttons)
- MCU hasn’t meters, it has a signal LED only. X-Touch has 8 LEDs on every strip - 4 green, 3 orange and one red (clip). There is no meter at the master fader.
- X touch has LEDs inside every button except two - “display name/value” and “smpte/beats”. MCU has (probably) less LEDs. I don’t see LEDs above F1-F8 buttons on MCU etc. Maybe LEDS are inside the buttons (don’t know).
So i think, the mapping should be the same. The problem is which function map to which button :). IMO Solo should clear solo, Click should switch click on or off. It’s simple. What about encoder assign section and global view section is difficult to say/decide. F1-F8 can remain unassigned, let user chose where to map them.?
OK, then we can use the same mapping I’m working on for the MCU Pro. There are 6 or 7 overlays included with the device for other DAWs that provide lots of good inspiration.
@pedro42: The latest git now has more vpot use. The vpot assign buttons for track (trim and phase) as well as sends and pan all now work. In each case pressing vselect should cycle through possibilities in each mode.
Also may be something you are interested in.
The global views for Midi tracks, Audio track, Buses and User (selected).
Hi, lenovens, i found your message today, i’m painting my flat, x-touch is packed in a box :-). Excellent ideas, thank you a lot for your commits! What i remember, there are issues. Switching v-pot between Pan, Trim, Sends works. The LED ring is not always correctly updated. Reliable way how to update the LED rings is to press GlobalView button; then LED rings shows current correct state. LCD shows wrong value for Trim mode - trim mode is between -20 and +20 dB, but LCD shows -inf to 0dB. Or it’s in Send mode?
LEDs on buttons don’t work, GlobalView, Track, Buses etc. LED don’t light.
When a value is shown on LCD, LED meters stop working all time when the value is on LCD.
I can’t remember it exactly, i’ll desribe the behavior during weekend (after painting). Thank you a lot again, your commits increase x-touch’s usability dramatically!
LED rings are a good point. I shall have to make some software LED rings as I don’t have any on my surface.
Trim Mode displays correctly here though the range with the pot only goes down to -16.0 (odd I thought I had tested it to ±20 before) But send mode goes from inf to 0 rather than +6. That should be fixed. It is funny that it worked at first but the text said fader, It appears that in fixing the one problem (text now shows name of aux/bus send goes to) another was created.
LEDs on buttons “MIDI Tracks”, “Inputs”, “Audio Tracks”, “Audio Instrument”, Aux, Busses, Outputs and User do not exist as far as the mackie control protocol is concerned. We may add them anyway at some time. In the mean time, the two digit assignment display should give you an indication of which view is being used. Lamps in the buttons (if the mackie had them) would be better.
For the meters have you set HasSeparateMeters value=“yes” in your device file? The Mackie control uses the display for meters and so the meters have to stop for the value to show up.
@pedro42: Issues with wrong range for trim, send and fader (fader was odd in flip mode) should all be fixed now.
Found one problem with pot rings getting set correctly, then zeroed, fixed. As far as I can tell the rings update correctly now.
If you use Mixbus, then the EQ, and Intrument (compressor) vpot assignment keys do something. The framework is therefore in place to (sometime) make “Plugin” work for Ardour as well. If there is ever a generic plugin bundle for Ardour, the EQ and compressor may work for those as well.