Filed under: Audio, Multimedia, Features, iPhone, iPod touch
TouchOSC and Logic: look mom, no cables!
The App Store is somewhat deluged with music-related applications. While I find many of the instruments to be novelties, the iPhone-based remote controls available for various Digital Audio Workstations have really caught my attention.
I've been playing around with the various musical remote controllers available for a while now. When the various iTouchMidi controllers were released, I got pretty excited. Problematically, I'm a fan of Logic Pro, and these intriguing but mostly Logic-incompatible controllers weren't up to snuff for my personal needs. It was a few weeks before I discovered the available OpenSound Control (OSC) apps in the App Store.
I've played with the lineup of controllers such as OSCemote and Mrmr (iTunes link), and both of those are a lot of fun with a good amount of potential. One stood out for me, though, and TouchOSC has officially become part of my home studio setup.
TouchOSC provides an array of control screens consisting of faders, rotary controls, buttons, toggles, XY pads, multi-faders/toggles and LEDs in various configurations. It communicates wirelessly with software and hardware which can receive and send the OSC protocol. I thought I'd offer a quick rundown of the steps I used to get from TouchOSC to Logic. I'm sure the same methods can be applied to other software, with a little variation.
An overview of the controller configurations in TouchOSC can be found in the gallery below. Read on for the lowdown.
Gallery: TouchOSC
TouchOSC
You can pick up TouchOSC in the App Store for $3.99USD. When you first launch it, you get a configuration panel where you can set your host and communication ports. TouchOSC can both send and receive, so there are two port settings. I used my bonjour address (mbpro.local) as the Host, and the OSC standard (I think) ports : 3333 for outgoing and 8000 for incoming. At the bottom of the configuration panel, you can choose a layout for the controller. I'm working with "Mix 16", but any of the layouts will work with this setup.
OSCulator
OSCulator is the software I used on my MacBook Pro to translate the incoming OSC signals to MIDI controls. OSCulator works with a variety of hardware and software devices, including the Nintendo Wiimote, if you've got one handy. It can interface with any MIDI software or hardware you've got, translating the OSC signals into MIDI controller commands (CC) or notes. Additionally, you can reroute signals as OSC or MIDI, and even trigger AppleScripts.
OSCulator is shareware, and you can choose how much to donate to get a license (minimum $19USD). It will nag incessantly until you buy it, which I tend to frown on, but I quickly found it vital enough to be worth a donation. Once you've got it, registered or not, you can open up the templates found at the TouchOSC site, almost at the bottom of the page under the OSCulator heading. Open the Mix 16 template (or something less complicated, if you choose) in OSCulator, either by double clicking or by using File -> Open. Once the template is open, you'll see a port setting in the upper left corner of the window. Set it to 3333 (or whichever port you chose for "outgoing" in TouchOSC).
By default, the signal indicators in OSCulator are set to light up when receiving. Double check, though, and make sure they're on ... it helps a lot with setup and you can disable them later if they cause a performance hit. The option is on the first panel of the preferences, titled "Flash activity lights." If you haven't already started TouchOSC with the above settings at this point, load it up now. If you're connected properly, you'll see an indicator in the upper right (the Mix 16 configuration works in landscape mode) of the TouchOSC screen, flashing green. Playing around with any of the controllers should light up their associated receiver in OSCulator (scroll down if you're not seeing anything, there are a lot of controls in this one).
Each control is already set up in the template to link to a MIDI CC. That's pretty much all we need to get moving in Logic.
Logic Controller Assignments
This is the tedious part. I was unable to find any ready-to-go templates to do this quickly in Logic, so we have to teach Logic what we want each controller command to do. Fortunately, it's not overly complicated, although it can be a little clumsy. To get started, drag, click or rotate the Logic control you want to associate TouchOSC with first. Under Logic's main application menu, find Preferences -> Control Surfaces -> Learn assignment for "...," where "..." will be the control you last touched. The shortcut for this is Command-L, which is a big timesaver.
The Controller Assignment window will open with "Learn Mode" enabled. Then, just slide, touch or rotate the controller in TouchOSC that you want to associate with this function. A tooltip in Logic will notify you when the signal has been received and its parameters determined. If things look about right, I suggest you immediately turn off Learn Mode in the lower right hand corner of Logic's Controller Assignment window to avoid changing the parameters inadvertently. For most fader controls, you'll want the values set from 0 to 127, and "scaled" with a multiplier of 1.00. For toggles, buttons and other controllers, you'll set the mode appropriately. In most cases Logic will handle this automatically.
Repeat these steps as required to get your TouchOSC controllers associated with Logic functions. A couple dozen iterations later (or however many you think will actually be useful), you've got a control surface which can assist with mixing, transport controls, effects and more. I really like using the XY Pad with a filter effect, assigned to cutoff and resonance, respectively. I also really like being able to have a guitar and requisite microphones set up away from the workstation, and be able to trigger record, undo, return to starting point, etc. without having to fumble for the keyboard from my stool. My iPhone can sit on any nearby surface or music stand and control all of the necessary functions.
Rock and Roll
If nothing else, this will hopefully be some kind of inspiration to incorporate your iPhone into your existing music setup in some fashion. Whether or not you go with TouchOSC, or if you're more inclined to work in something like Ableton Live than Logic, your iPhone can be a great assistant in any digital audio setup. Happy rock and/or rolling.


Reader Comments (Page 1 of 2)
korisnik said 8:06PM on 11-13-2008
And another one on this subject.
http://createdigitalmotion.com/2008/07/28/luminair-gorgeous-dmx-controller-on-iphone-ipod-touch-runs-your-rocking-light-show/#more-2501
It comes with a very high price tag but . .
This kind of applications will eventually make me buy myself an iPhone in the end.
Only if they add a real camera+flash we could do some visual stuff also.
Reply
Drakfyre said 8:25PM on 11-13-2008
Hotness.... I am so setting this up for my Sidstation when I get home tonight!
Reply
autoy said 8:27PM on 11-13-2008
This looks like the best controller app to date, no question. I just wish it had it's own midi translator so you don't have to depend on OSCulator. Or maybe a MIDI mode with a small server host-side like other midi apps.
Also, there is a new promising update upcoming where you'll be able to program your own layouts. Did anyone say Lemur?
Reply
Ben said 9:32PM on 11-13-2008
You can do it already if you've got a jailbroken iphone. Just look in the .app and you'll notice that each of the layouts is and .xml file that you can edit to some degree.
nicleT said 11:32PM on 11-13-2008
Reminds me the interface of the Lemur from JazzMutant.
http://www.jazzmutant.com/lemur_gallery_videos.php
Quite interesting though, I wonder if it can control Digital Performer?
Reply
Zyl said 3:10AM on 11-14-2008
Nice, i got a lemur and was looking for something like this to add to my setup
Reply
jln said 4:22AM on 11-14-2008
Which reminds me I planed to do a Mac/PC midi->osc->midi vst plugin, but never had the time to dive into this project. Given there are more and more solutions out there, I'm not sure it is worth it, though.
Maybe I should give it a go nevertheless. Too much solutions is probably better than not enough...
Reply
Ron said 10:51AM on 11-14-2008
For those of us that just want to play around, it would be great if this worked with GarageBand.
I'm surprised GarageBand wasn't mentioned in the article, which implies to me that it isn't compatible?
Reply
Brett Terpstra said 11:41AM on 11-14-2008
I'm honestly not sure, I haven't used GarageBand in quite a while. I don't remember it having assignable MIDI controls, but I could be entirely wrong. I know that for a while I was using an app that let me use the transport controls on my Oxygen with GarageBand, so I imagine that it's possible with a little hacking.
Ron said 12:11PM on 11-14-2008
I've got an Oxygen as well, and have been looking for a way to use the transport controls...
What's with GarageBand anyways??
Reply
Brett Terpstra said 12:36PM on 11-14-2008
I was using GarageRemote with moderate success:
http://www.muratnkonar.com/otherstuff/garageremote/
uhuh said 3:19PM on 11-14-2008
a.m.a.z.i.n.g!
thank you!
Reply
Ron said 5:04PM on 11-14-2008
I've been looking for something like GarageRemote! Thanks so much!
When you say "moderate success" does that mean it didn't work, completely??
Reply
Brett Terpstra said 5:39PM on 11-14-2008
I'm having trouble remembering what my frustration ended up being with it. It's been a while, but I do recall at least getting the transport controls working. If necessary, it could probably act as a go-between for Osculator and GarageBand... I would think.
zaibe said 5:26PM on 11-17-2008
wow, amazing app!!!
after seeing your blog i immediately downloaded touchosc and osculator. i have set everything up a it seems to work fine, however logic isnt responding to the controls. i cant seem to learn any controls from logic. is there something i need to setup in logic before it can interact with osculator??
Reply
Suanko said 4:01PM on 11-18-2008
I love this!
Reply
ecume des jours said 9:37AM on 11-19-2008
Mrmr, which was also mentioned, lets you create your own layouts and is designed to be customized. It has an interface creation tool, like Lemur, or you can make your own interfaces in a text editor.
It is also FREE and open source so you might want to try that first.
Reply
Andrew said 5:33PM on 11-19-2008
Does anyone know if this works with MainStage? This could really be the missing link for my live setup.
Reply
tom said 4:51PM on 11-23-2008
http://www.youtube.com/watch?v=7fpLZXDBVjA
Reply
Jack said 11:56AM on 12-05-2008
Could you please upload a screenshot of what your Controller Assignments window looks like for an event using the accelerometer?
I'm using OSCemote and I'm finding it hard to map the accelerometer properly... I think it's to do with the settings for the event in the Controller Assignments window.
Thanks.
Reply