EDIT 1/19/2023: I just had to re-set up CSI and the newest version at this time is 2.0 and seems very different, so many of my original instructions aren’t relevant any more, I think. I’m still poking around and setting up the new version with custom layout. The instructions on his Wiki are great and this new version incorporated a lot of the things I had previously customized. I really only messed with the “buttons.zon” file and copied over a lot of the customizations I had made for my personal workflow as I don’t use a lot of the more advanced functions like VCA, or mapping FX parameters or anything like that. I did notice the X-touch had a firmware update I hadn’t installed (1.22) and still I could not get either of my AMD Ryzen machines to recognize the X-touch in update mode. Luckily I had an old Intel laptop around still that recognized it while in update mode and I updated the firmware. Overall CSI 2.0 seems way better right out of the box and eliminated the need for some of the tweaks I had previously made.
ORIGINAL POST:
I have used Reaper as my Digital Audio Workstation software for about 15 years now and absolutely love it. Recently I decided it might be nice to get a physical control surface to use with it. I initially got a Korg nanoKONTROL to dip my toes in the water. It’s a decent little surface, but I very quickly realized that if I was going to go this route I wanted to go all the way and actually have motorized faders and all the bells and whistles, so at the suggestion of many other users I got a Behringer Xtouch. The Korg unit had taken a lot of setup and tweaking to get it working with Reaper. The Xtouch works right out of the box though with only basic functionality mostly. I thought I’d document my journey for posterity in case I ever need to remember what all I did or in case it can help anyone else.
I hooked up my new Xtouch and then powered it on with the Channel 1 “Select” pressed to enter setup mode. Select MCU, and USB.
At first mine was not recognized by USB. From Googling I found that it’s apparently SUPER common with AMD Ryzen chipsets and Motherboards. Mine shipped with 1.13 firmware. I found that there was a 1.21 firmware that fixed this issue. Of course since I couldn’t connect it to my main computer I couldn’t update it. Luckily I found it did connect to my laptop, so I updated the firmware (downloaded 1.21 from the Behringer website and downloaded “SendSX” to send the SysEx firmware update to the Xtouch after powering up the Xtouch with the “Display” button held to enter update mode and see current firmware version) and all was good!
Connected to my machine, went into Preferences>Control/OSC/Web in Reaper, added the “Mackie Control Universal” and selected the Xtouch as Midi Input and Midi Output.
Go into preferences>Track Control Panels and change the “Volume Fader Range” from +12 to +10. This will make the fader numbers match almost perfectly when adjusting faders.
Right out of the box these are the functions that worked for me:
- Volume faders (and move to match on screen changes)
- Pan knobs
- Rec, Solo, Mute, Select
- Scribble strips show 6 characters of track name
- SMPTE/Beats changes display between 7 different display formats. Time, Beats, SMPTE and some others I’m not exactly sure of.
- Automation (Read, Write, Trim, Touch, Latch)
- Save, Undo
- Marker
- Cycle (toggle repeat)
- Click (Metronome on/off)
- Transport controls (back/forward arrows seem to navigate markers if any)
- Fader Bank (Moves faders by 8 tracks forward or backward, so 1-8 becomes 9-16)
- Channel (Moves faders 1 track forward or backward, so 1-8 becomes 2-9)
- Navigation arrows which can either scroll the screen left/right/up/down, or adjust horizontal/vertical zoom if you press the center Zoom button.
- Jog wheel scrolls play head left and right. Larger scroll if you press “Scrub”
All those other fancy button and such don’t do anything in Reaper. That’s when someone in the Reaper forums told me about the Control Surface Integration (CSI) plugin for Reaper by Geoff Waddington. This adds all kinds of cool functionality and more so, allows you to customize the buttons and functions to your liking fairly easily.
I have a strange talent for reverse engineering things. I’m not a programmer per se but I do all my own websites and so to get things customized to my liking, I often look at the PHP template files, HTML, CSS, etc., and just sort of figure out how to bend it to my will and understand how it all works.
Same here. I started at the Wiki for CSI (linked above) which explained that there’s basically 2 important files, the .mst which defines the actual capabilities of the surface (by defining what buttons, lights, etc. the surface has) and the .zon files which dictate the actual functions of each button, etc. The .mst file was of no use to me as it was just incomprehensible code and as far as I can tell, there’s no reason for you to ever mess with it as the actual hardware on your unit isn’t going to change, but the .zon file is very easy to read and if nothing else, is a GREAT place to look if you’re wondering what functions each button uses. If you’re using CSI, then you likely already had to follow the installation instructions which include finding your Reaper Resource Path. There you will find CSI>Zones>BehringerXtouch>BehringerXtouch.zon which I then edit using Notepad++ (you can use any text editor like Notepad or whatever).
Over the next few days I made the following changes from the default BehringerXtouch.zon file:
- Commented out the “OnTrackSelection” commands in Zone Home so that it stays on the Home Zone when selecting tracks
- Fixed “Volume Nudge Up” by changing “_ZENAKIOS_NUDGEITEMVOLUP” to “_XENAKIOS_NUDGEITEMVOLUP”
- Added Control+Select as “TrackSelect” so I could select multiple non-adjacent tracks
- Mapped the unused “Track” button to “_XENAKIOS_RESETTRACKVOLANDPAN1” so I could easily set a selected track back to 0db. I wanted to just reset the volume, but the only command I could find was the SWS Extension command to reset volume and pan.
- Mapped Shift, Option, Control, and Alt + “MidiTracks” to be the 4 different MIDI record modes (Overdub, Replace, Touch-Replace, and Latch-Replace)
- Mapped “Outputs” button to open the Routing window
- Switched the “Show Master FX Chain” to the “Flip” button since that wasn’t being used and is just above the Master fader so that made more sense to me
- Added Option+”Click” to toggle pre-roll record
- Added Shift+Stop as “Pause”
- Changed the FF/Rewind buttons to the Reaper “FF/Rewind a little bit” which makes them jump a little further than the default FF/Rewind CSI commands which seem to basically be the same as a jog wheel turn, so it seemed more useful to have a couple of different amounts you could travel. Still trying to figure out of there’s a way to use the “scrub” button to change the wheel to different increments as well which would be cool.
- Mapped F1 to set selected track to Input 1, F2 to Input 2, F3 to Input 3/4 (Using SWS Extensions Cycle Actions to execute ReaConsole actions)
- Mapped “Inputs” to cycle through inputs 1, 2, 3/4 just as another option and to see if I could (Also requires SWS Extensions Cycle Actions to be set up in Reaper). I don’t actually use this for multiple reasons but it was more of an experiment.
- Re-mapped “Toggle MIDI Editor Window” to SHIFT+F3
- Re-mapped Toggle Mixer to SHIFT+F1, Track Manager to SHIFT+F2
- Mapped Cancel to “Toggle Show All Floating Windows”
To be able to select specific inputs you have to have SWS Extensions installed in Reaper. Then in Reaper under Extensions>Cycle Action Editor you have to set up your ReaConsole actions. I had never messed with any of this before and just started here: https://www.standingwaterstudios.com/reaconsole.php
I set up 3 actions in the Cycle Action Editor:
CONSOLE i1 (Selects Input 1)
CONSOLE i2 (Selects Input 2)
CONSOLE i3s (Selects the stereo pair 3/4 which I use when I want to route my system sound through my DAW)
Once you set those up and “Apply” them, those actions will show up in the Reaper action list (Shift+?) as whatever you put in the “Cycle Action Name” field.
As with all actions you can right click and “Copy selected action Command ID.”
Then you can edit your CSI .zon file and map it a button. So for me I added “F1 Reaper _S&M_CYCLACTION_1” and then F1 selects Input 1 on the selected track.
I’m really digging it!
Awesome! This gives me all I needed to know and much more to find out if buying the X-touch to work with Reaper would be worthwhile. I reckon there’s endless possibilities to tweak it with CSI, right? I was, or well, still am, kind of afraid that if I get the fullblown version I would end up with a lot of buttons and display options I paid for and can’t use anyway, making the compact version a better investment (or even the X-touch one perhaps…). But I get the impression spending the extra 100 Eu is well worth it, r ight?
Have you found out more ways to improve the interfacing since you posted this?
I personally feel it’s worth it. I too almost went with the compact, but I’m glad I went with the full. There’s definitely a LOT you can do with CSI if you’re tech savvy and comfortable getting in there and altering it. It’s not too difficult, I don’t think. Just a matter of finding the Reaper command code (easily done with the Actions menu) and assigning it to a button and if you need help there’s always the forums!
Great, thanx! That really gives me the courage, I would feel so silly and sad having saved the 100 eu on an investement for a lifetime finding out afterwards it would have given me all (or a lot of) the extra’s that I am sure I am going to miss if I don’t (gee that sure is a derailed sentence, I tried to save it but I don’t think I really succeeded lol, well, you catch my drift I’m sure).
.
I mean, you know, yiou tend to think wow, what else could I get for those extra 100, as it is a lot of money for me, but missing out on that that would be dwarved by the loss of those extra features on the star of the show. It’s slightly more of a hard choice because I have an other (antique…) control surface (TASCAM US-428) that has a jog wheel and some more extra’s, plus the copmpact has those extra 8 rotary’s, but then, well, I do have the extra CS, plus alittle KORG nanoKONTROL (also the antique version!). So, no shortage of extra controls here (except for them not having those cool LED-rings for feedback). Going to be a challenge by the way to get’m all to work in concert….
The thing I’m most concerned about really is the feedback, how much use those scribble-strips will be, and the LD-rings, different color buttons etc. And how much you can tweak and improve that if flawed with CSI. And how much I can fiddle with the channel and port settings of the XT to make it play nice with my TASCAM< that is not editable, have to go with its settings as they are. How many MIDI-ports does the XT have? And if more than one, does it use more at once in the default, or is it all on one prt? And if so, can you alter wich port without loosing the MCU-interfacing with REAPER, having to reprogram each and every fader and knob?
Nice info. I’m using Reaper and am just about to purchase the Touch 1. It would be great if you could mention the steps you used in implementing the Control Surface Integration (CSI) plugin for Reaper by Geoff Waddington.
It’s been so long I honestly can’t remember! I’m hosuesitting so I’m not at my studio at the moment either.
This is Awesome Heath! I’m going to install the CSI and go from there Thank you! …
Now I have a question, which I can’t get anyone to answer but maybe you know … I updated my firmware to 1.21 – but now when I launch Reaper, it’s like fader one is “attached” to some other control because when I move it, it’s not smooth – it’s jumpy – like it’s sticky. I tried back dating to 1.5 firmware it didn’t fix it and going back to 1.21 didn’t fix it. So I’m wondering if there’s a way to Factory Reset – like holding down a button while to boot up.
Interesting, I’ve never had that! I’m sure there must be a factory reset though I don’t know it off the top of my head.
Hi Heath – update – I’ve been back and forth with “Music Tribe” the support for X Touch. First there’s no factory reset for the X Touch … email war with 3 different guys there and they feel I have to send it in for warranty service. BUT I’d like to try one more thing – I don’t have the ZON file – I dunno – can’t find it … maybe it’s a my sometimers kicking in or a pre-seniors moment … What I was thinking since you’ve created an awesome one I was wondering if you have a one you could share with me – thinking that it would override anything that my XT is set up to control and resolve the issue with Fader 1 on my XT. If you’d rather not, no hard feelings – it’s all cool. Thanks in advance DD
Emailed it to you! Good luck!
hi Heath, This is a very useful post and has I think pointed me in the right direction. I’d like to ask you some general questions as you are clearly an experienced and knowledgeable user of Reaper. I don’t need a click by click answer just a pointer as to whether you think what I have in mind as a working MO is possible or has flaws or misconceptions on my part. First background. I’m a hobbyist musician, guitar mostly, but, I ran a little analogue studio in my youth and can plink a keyboard a bit. So, now that I approach my dotage I finally have enough space and cash to equip a home studio. I have Reaper (why would I be commenting here otherwise) an X-Touch, an Alesis SR-16 Drum Machine and an AKAI MPK-mini working with a Behringer U-Phoria UMC404HD. Where I want to go is to record live sound (guitars/bass/voices) either as overdubs to or overdubbed by midi-ed keyboard/drums, themselves, either sequenced (using Reaper?) or as performances that are then midi-editable to tidy up my messy playing. Reaper would be at the centre of this being the clock/sync source for any other midi-gear in the chain. Three more specific questions. Will I be able to send/record the midi OP of the SR-16 (or whatever midi-drum source) with each sound on it’s own track in Reaper in one pass. Second, and related, is the SR-16 needed at all? Should/could I just use the MPK-Mini and whatever plug-in drums sounds it came with or I can find online?. Third, the x-touch shows up as two midi-devices in Reaper preferences/midi-devices. What is the idea behind that? What scenarios might that help with and how? Overall, do you think my end point is achievable with the gear I have (or, perhaps less, if the SR-16 is superfluous).
Hmm, let me see if I can help at all.
Firstly, it sounds like your general want is totally possible and basically what I do. I have a MIDI keyboard and a MIDI Pad controller I use for drums. I’m not sure of the specific capabilities of the SR-16 so I can’t help much there. I use plugins for all my KB and drum sounds (and guitar amp/FX emulations as well). I record the MIDI input of my KB or pad controller, then can edit that MIDI data in Reaper to clean it up, quantize it, or totally change it. If I do Quantize it, I never go 100% as that gets too robotically perfect, so I’ll quantize 50-75%. Get familiar with the “MIDI Overdub” and “MIDI Replace” options as I switch back and forth depending on what I need to do.
Back when I had an SR-16 many years ago, I just did all the programming/sequencing directly on the SR-16 itself then just pressed play on the SR-16 and recorded it into Reaper like recording a live drum track. Now I use MIDI and the Superior Drummer 3 or Steven Slate Drums plugins. There’s also a free one I believe from Spitfire audio (from their “Labs” free plugins) that only has one drum kit and not as many dynamic layers and such but still sounds good.
Also if you need good Reaper resources these videos are SUPER helpful. I even watched the most basic ones I didn’t think I needed and still learned new and better ways to things. I’ve been using Reaper for 15+ years now and I STILL discover new things and better ways of doing stuff all the time. It’s so deep and rich with so many amazing functions.
As for the X-touch, it’s been a while since I first set it up, and I’m housesitting right now so not at my computer to take a look so I can’t remember the exact details of that stuff.
Hope some of that is helpful!
Thanks for the fast response. Yes, I have tried the “program it in the SR-16” and hit play approach and although viable, and I have figured out how to trigger it with Reaper’s click, is still, as you must know, tedious. I think it is possible to fire the SR-16 from Reaper and program it from Reapers sequencer and also (though maybe not at the same time, though I hope so) by performance on the more conveniently sized and probably more responsive pads on the MPK-mini. I just can’t figure out how to get it to work yet. I have been watching Kenny Gioia’s videos and yes they are very useful. I have learnt a lot from them, however, I’m still at the stage of a little knowledge being a dangerous thing.
It’s kind of preventing me from getting started, thinking, “I don’t want to do hours of work and then realise, “gotcha, if that’s what you wanted to do you should have done it this [other] way from the start” or trying to make it work a certain way and getting frustrated only to eventually realise that what I had in mind simple isn’t possible, at least with the gear I have….. One more ask, this is how I have my stuff plugged up, any observations on it. SR16 (doesn’t have USB) midi in from interface (UMC404HD) Out, midi out to interface in (also stereo audio out to two of the inputs on the interface, the SR-16 has 4 audio outputs, but then interface only has 4 inputs). Interface USB to PC, X-touch USB to PC, MPK-mini USB to X-touch. Even in my little setup there seems to be many options and it could be plugged differently. I guess I’ll have to try them until something works. I am asking Behringer support for more specific help, with luck they’ll come through and save me some pain.
That all seems good to me. And yeah I could see how doing the drums in Reaper would be better, I just am unfamiliar with doing it that way with the SR-16. Also I’d say don’t be afraid to just go for it. You will ALWAYS be learning and there will never be a perfect time to start. And don’t let anyone tell you that any one way is the “right” way. I’ve learned far more from just doing it and messing around and trying things and experimenting than any other way. I now know that some of the things I did on my earliest recordings were crazy wrong technically, but yet I’m still happy (generally) with the way they came out. Luckily it’s just music and not brain surgery and no one’s going to die if you use compression “wrong” (and again I don’t believe in “wrong”). Many of the standardized ways we do things today came about from people doing things deemed “wrong” (read up on Geoff Emerick and his work with The Beatles which broke all the “rules” of the time, and pioneered many of the ways of recording now considered “standard). The most important thing is CREATE. One big problem is that you can ask 10 different people how you should do something and you’ll likely get 10 different answers. It’s good to have all that knowledge but then you find what works for you by just doing it! Good luck!
Hi,
is there any chance the XTouch can be used to set FX sends levels and tracks EQs?
Thanks for the tip.
I’m not aware of a way but I’m certainly no expert. I really only looked into the very specific things I wanted to do. The forums are a great resource though!
I’ve downloaded the CSI plugin from the repository you linked to, but it doesn’t have the BehringerXtouch.zon or mst files. Do you know where I can find those?
You know, to be honest, it’s been so long since I set it up now, I can’t remember. I thought they were all just in there. Here are my files (tweaked the way I like them, so far from default). The .zon file goes in \Users\[username]\AppData\Roaming\REAPER\CSI\Zones\BehringerXTouch (on Windows, not sure about Macs) and the .msi goes in \Users\[username]\AppData\Roaming\REAPER\CSI\Surfaces\Midi. Hope that helps!
I’ll give those a try… No warranty expressed or implied. 🙂 Thank you!
Hi, it seems that version 1.1 of CSI has different (i.e. multiple) zon files per controller now instead of one. Do you have an updated version of your X Touch zon file?
The one I’m currently using is
thx for reply. is that more recent than the download you posted above? (march 9) because that is only a single zon file. the csi now seems to require 5 or six zons for one controller vs just a single file. (i.e. one for sends, one for home, etc.)
I’m not sure if I’ve made any changes since then, but most likely not. It’s probably the same. I’m just glad it’s still working for me! I wonder if I need to update or something. It’s been so long since I set it all up now I’m not sure I would remember how!
after installing CSI 1.1, the folder for ZONES for MCU has ALL these files, vs. the one file you have for xtouch.
“Zones\MCU\MCU__Home.zon”
“Zones\MCU\MCU_Buttons.zon”
“Zones\MCU\MCU_Channel.zon”
“Zones\MCU\MCU_FXMenu.zon”
“Zones\MCU\MCU_MasterTrack.zon”
“Zones\MCU\MCU_PanWidth.zon”
“Zones\MCU\MCU_Receive.zon”
“Zones\MCU\MCU_SelectedTrack.zon”
“Zones\MCU\MCU_Send.zon”
“Zones\MCU\MCU_SendSlot.zon”
“Zones\MCU\MCU_Zoom.zon”
Hello, anyone knows where can I find the CSI download link? It seems that the link in the article doesn’t works as the wikipage of the extension give back an 404 error.
Thanks
Thanks for letting me know! I’m not sure when it changed. Link has been updated to https://github.com/GeoffAWaddington/CSIWiki/wiki
The address you gave above, and the link you give in the article, have changed again. Really, these guys need to pick a distribution model and stick with it for Reaper’s sake!
A possible good starting point now is: https://github.com/GeoffAWaddington/CSI_Install#readme
Thanks for the heads up!