I'll tolerate arguments about whether the iPad is a good host for software instruments or not, but I won't let anybody badmouth it as a MIDI controller: it's what it's best at (yep, even better than for visiting those "special" websites when your significant other is out at work). There are some great controller apps around, and most of them let us create our own interfaces, so we're not restricted by what a designer or product manager thinks we need. Lemur, MIDI Touch and TouchOSC are good examples, and now we have Beatsurfing, an iPad-only control surface with a unique visual style—and in the world of controllers, visual style is always connected to functionality.
Beatsurfing has three apparent selling points: it's simple to configure; in-app editing means you don't have to switch back and forth with a computer-based editor; and it has an abstract look and colourful artistic vibe. I started sceptical with that last one because, frankly, it looks kind of horrible. It's impossible to tell what's happening. At the same time, though, I was intrigued, because we can never have enough controllers, and ideally they should all offer something different. I know I'm contradicting myself, but sometimes that's how relationships start: you're repelled and attracted at the same time…or is that just me?
Beatsurfing will control anything that receives MIDI through either WiFi or a cable connection. If you want to use it over WiFi, connect your computer and iPad to the same network, then configure a wireless MIDI connection using either Audio MIDI Setup on a Mac, or rtpMIDI on Windows. That connection appears as a MIDI source in your music software. There's no configuration in the app, it just sends to anything that'll listen—easy. If you want to use old-school MIDI cables, which Vlek say give better timing accuracy, plug an iOS MIDI interface like IK's ever-useful iRig MIDI into the bottom of the iPad then hook it up to your computer or MIDI hardware. The other way to use it is with iOS Core MIDI, controlling a synth app running in the background on the same iPad—this is also easy to do, you don't have to do anything with Beatsurfing except have it running, then go to your synth app of choice, tell it to receive from Core MIDI, and enable background audio.
Beatsurfing's based around four basic controller objects. The Line is a simple strip that sends a MIDI note when touched, but can also trigger a second note, depending on which direction you swipe in; the Polygon is a multi-sided take on the Line, configurable with between three and 16 sides; the Circle is more like a little step sequencer, with between one and 16 steps, each "next" step being triggered by subsequent taps on the object; the Fader is probably the most typical controller example, and sends MIDI CCs or pitch bends. It's very simple to assign different MIDI notes, CCs or channels to each object, but there's more to it, because Beatsurfing also uses Behaviours—ways of adding further interactivity between objects. Each object has specific Behaviours that can be applied, including reset, reverse direction (for the Circle), trig current note, root note offset and Go To X, which lets one object change the position of other Circle and Fader objects. Objects can be layered (in what they call Swarms) for even further texture.
While working with the app, one thing I liked was that you could still be using the controls to trigger your software while the app was in edit mode, so you really can tweak during a set without interrupting the performance. This feels really immediate and makes editing templates a spontaneous experience; you don't need to go back to a computer-based editor every time you want to change something. I tried Beatsurfing with Ableton Live and Logic Pro, and it worked great with both, although, despite the name of the app, it was much more interesting as a synth interface rather than for triggering beats; tapping away at a glass screen just isn't cool for drums. It was extra-fun with Logic's synths because it's so different than the regular drab Logic interface. I also found that I could run the Lemur app at the same time, and swap between them, mixing Lemur's more disciplined, high-tech approach with Beatsurfing's sketchy abstract style. Staying exclusively within the iPad, I tried Beatsurfing with iOS Core MIDI, sending notes and CCs to Sunrizer, Animoog and Grain Science (no, not all at once). Put it into the Alesis IO Dock, and you've got a groovy-looking self-contained iPad music setup.
I enjoyed playing with Beatsurfing, and I liked the idea of it, but over time it just didn't come together into anything more solid. It feels like a work in progress rather than a fully evolved entity. The focus on beats, as used in many of the examples, and even the name of the app, is misleading because as I said, it just isn't that great for drums. The limited colour palette is a problem for more detailed layouts, some kind of text labelling is needed, and there aren't enough different types of object. The documentation is very raw at the moment, and there aren't clear explanations of the concepts involved with the behaviours. I was looking forward to building a step sequencer template using the Circle, but the lack of any internal clock stops it from performing true sequencing functions. It takes some work with the target DAW to compensate for Beatsurfing's shortcomings, and if you're going to do that, you might as well use another app.
There are positives, though. Beatsurfing has a unique look, which some people will love, and it is very easy to setup at a basic level. Where it gets really cool is as an "out there" controller for iOS Core MIDI, sending to apps within the iPad, like we discussed earlier. This is where I'll be spending some time playing around with it, as a top layer for apps hidden below, where working with Beatsurfing could get much more exciting.